Colin Maudry
f52b2b7b71
docs: plan d'implémentation pour le handle d'abonnement et l'historique
...
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-01 14:24:42 +02:00
Colin Maudry
b077fd318d
docs: note la vérification de méthode de paiement réelle comme suivi séparé
...
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-01 14:13:39 +02:00
Colin Maudry
17c379f0b3
docs: design pour le handle d'abonnement personnalisé et l'historique des abonnements
...
Spec pour remplacer generate_handle par un handle abo-{user_id}-N unique,
ce qui nécessite de scinder subscriptions en historique multi-lignes et
d'introduire subscriber_state pour l'état cumulatif (votes, essai).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-01 14:12:11 +02:00
Colin Maudry
b7ca9c1ffa
docs: plan implémentation vote roadmap #94
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 13:30:58 +02:00
Colin Maudry
0cfafedeef
feat: charte graphique des boutons (primary/secondary/danger)
...
Override CSS scopé aux classes .btn-* (jamais les variables --bs-* racine,
donc alertes/badges inchangés) pour remplacer les couleurs dérivées du thème
Simplex (danger mauve, secondary gris illisible). Trois rôles : la couleur
encode la fonction, le remplissage l'emphase.
- primary terracotta : action principale validante
- secondary gris ardoise : action neutre/alternative (lisible)
- danger rouge #c0392b : destructif (outline par défaut, plein en confirmation)
Audit + conformation des usages :
- compte_admin « Supprimer mon compte » : primary outline -> danger outline
- compte_abonnement « Me désabonner » : outline-primary -> outline-danger
- compte_abonnement « Je suis sûr » : outline-primary -> danger plein
Tests : ajout tests/test_boutons.py (garde de non-régression du primary).
conftest : implémente le hook pytest_setup_options (--headless=new) ; la
fixture chrome_options n'était jamais utilisée par dash.testing, d'où les
fenêtres Chrome qui s'ouvraient pendant les tests.
Specs et plan : docs/superpowers/{specs,plans}/2026-06-30-charte-boutons*.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 13:21:24 +02:00
Colin Maudry
d436fd4d9e
docs: fix chemin src/utils dans spec roadmap #94
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 13:19:02 +02:00
Colin Maudry
5578a9deb0
docs: spec design vote roadmap #94
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-30 13:17:44 +02:00
Colin Maudry
cb14b7c68e
Ajoute plan d'implémentation sauvegarde des vues #95
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-29 16:05:40 +02:00
Colin Maudry
9d4280f69d
Ajoute spec sauvegarde des vues #95
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-29 15:57:44 +02:00
Colin Maudry
401bf5e204
Ajoute spec et plan d'implémentation TOUS_ABONNES
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-26 18:23:42 +02:00
Colin Maudry
b0543c0c03
docs(abonnement): mention explicite 'sans période d'essai' si essai déjà utilisé ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:43:51 +02:00
Colin Maudry
a18d43dae4
docs(abonnement): anti-abus essai (trial_used + no_trial) ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:41:31 +02:00
Colin Maudry
421750957f
docs(abonnement): plan d'implémentation Frisbii ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:36:25 +02:00
Colin Maudry
78aea4a69a
docs(abonnement): durée d'essai lue depuis le plan Frisbii (non codée en dur) ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:29:22 +02:00
Colin Maudry
3f12e6e210
docs(abonnement): essai gratuit de 2 jours (config plan Frisbii) ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:06:37 +02:00
Colin Maudry
3528924857
docs(abonnement): spec Frisbii (souscription, résiliation, webhooks) ( #90 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 18:03:33 +02:00
Colin Maudry
8037f2733e
docs(auth): plan d'implémentation connexion LinkedIn
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 22:58:28 +02:00
Colin Maudry
6038b44fa8
docs(auth): spec connexion LinkedIn (OIDC)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 22:51:56 +02:00
Colin Maudry
442192cb35
docs(compte): plan d'implémentation de l'espace compte ( #73 )
...
Refs #73
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 18:38:09 +02:00
Colin Maudry
ba5ad2c2ac
docs(compte): design de l'espace compte multi-sections ( #73 )
...
Design validé en brainstorming : coquille account_shell (sidebar +
offcanvas), routage /compte/* (une page par section), 3 niveaux d'accès
avec stub d'abonnement, section Compte (email avec re-vérification,
mot de passe, suppression via modale).
Refs #73
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 18:32:17 +02:00
Colin Maudry
ded5e66ccc
fix(backup): nettoyer le fichier temporaire en cas d'erreur dans restore ( #89 )
...
Wraps temp file operations in try/except to ensure the temporary database file is always cleaned up, even if an exception occurs during write_snapshot or verify_integrity.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 17:21:28 +02:00
Colin Maudry
3ad328103c
docs(backup): plan d'implémentation sauvegarde S3 ( #89 )
2026-06-24 16:57:11 +02:00
Colin Maudry
555a87fdf7
docs(backup): conception sauvegarde base utilisateurs sur S3
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 16:51:45 +02:00
Colin Maudry
99abdfed0b
docs(brevo): plan d'implémentation + maj spec avec l'API v5 vérifiée ( #87 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 15:19:42 +02:00
Colin Maudry
f41ee64c32
docs(brevo): spec de migration des emails transactionnels vers Brevo ( #87 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-24 15:08:09 +02:00
Colin Maudry
cbce646fd8
Merge branch 'dev' into feature/73_compte_utilisateur
2026-06-24 03:01:43 +02:00
Colin Maudry
ad0a220953
feat(tableaux): scroll horizontal ergonomique + barre custom ( #82 )
...
- Barre de défilement JS orange (12px) injectée en haut de chaque
.marches_table, collée avec position:sticky, masquée si le tableau
tient dans le viewport
- Scroll contenu dans .dash-spreadsheet-container (overflow-x:hidden)
→ plus de scrollbar navigateur en bas de page
- Drag souris + tactile, clic sur le track, molette/trackpad
- Recalcul automatique au resize et aux re-renders Dash (MutationObserver)
- Test Selenium de non-régression (overflow-x:hidden sur le conteneur)
Sticky headers abandonnés (incompatibles avec scroll contenu).
Portée : 4 pages via la classe partagée .marches_table.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-23 20:12:47 +02:00
Colin Maudry
39dfa22b0d
Plan : amélioration du style des exports Excel #83
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-23 17:00:28 +02:00
Colin Maudry
10ed9c4c4b
Spec : amélioration du style des exports Excel #83
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-23 16:21:20 +02:00
Colin Maudry
ec2b8389c3
docs: verdict spike DOM tableaux #82
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-23 15:44:11 +02:00
Colin Maudry
68bd398759
docs: plan d'implémentation scroll horizontal tableaux #82
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-23 15:14:03 +02:00
Colin Maudry
0ed807f98c
docs: design scroll horizontal + en-têtes sticky des tableaux #82
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-23 15:08:47 +02:00
Colin Maudry
2ce762b6cc
docs: plan tuile considérations sociales/environnementales
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-22 18:11:45 +02:00
Colin Maudry
826448d6be
docs: spec tuile considérations sociales/environnementales (observatoire)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-22 18:09:05 +02:00
Colin Maudry
5166c88b8b
docs: plan d'implémentation parité API decp.info / tabular-api ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-22 13:35:34 +02:00
Colin Maudry
b0fbe89c2c
docs: ajoute la doc Swagger des mots-clés au spec parité API ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-22 13:27:08 +02:00
Colin Maudry
441d36273a
docs: spec parité API decp.info / tabular-api data.gouv.fr ( #78 )
...
Opérateurs manquants : differs + agrégation (groupby/count/sum/avg/min/max),
renommage du param réservé count -> count_results. or hors périmètre.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-22 13:22:49 +02:00
Colin Maudry
afd6590c54
docs: plan d'implémentation bootstrap résilient ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 11:30:36 +02:00
Colin Maudry
20f81b5732
docs: spec surfaces C/D (chargements pages au boot) ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 11:23:35 +02:00
Colin Maudry
0ebbfcd872
docs: spec schéma en cache seul ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 11:10:13 +02:00
Colin Maudry
8a853b2384
docs: spec bootstrap résilient données et schéma ( #78 )
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 11:01:41 +02:00
Colin Maudry
1aea71be7f
Merge branch 'main' into feature/78_api
2026-06-12 09:33:59 +02:00
Colin Maudry
6cf213add5
Spec+plan: vue mobile dédiée pour /etapes
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 21:31:17 +02:00
Colin Maudry
80c27bf357
Plan: page /etapes — données par étape et par seuil
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 21:26:09 +02:00
Colin Maudry
2e9b587613
Spec: page /etapes — données par étape et par seuil
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-04 21:13:35 +02:00
Colin Maudry
0363e89301
Plan : implémentation API privée ( #78 )
...
14 tâches TDD couvrant deps, tokens_db, CLI, filters, auth, blueprint,
endpoints (/health, /schema, /data), tracking SQLite + Matomo, OpenAPI,
changelog, mention page À propos.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-13 12:55:09 +02:00
Colin Maudry
19d69e965f
Format préfixe token #78
2026-05-13 12:29:41 +02:00
Colin Maudry
8fb1a2084d
Spec : API privée tabulaire avec tokens ( #78 )
...
Design retenu : blueprint Flask + flask-smorest sur /api/v1, endpoint
tabulaire générique aligné sur le swagger data.gouv.fr, tokens Bearer
admin manuels (CLI), suivi via Matomo async + compteurs SQLite légers.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-13 12:18:35 +02:00
Colin Maudry
bd6a4ff266
Tentative de rétablissement de la carte sur acheteur/titulaire
2026-04-28 10:40:50 +02:00
Colin Maudry
aaf54eef91
docs(observatoire): plan d'implémentation filtrage natif DuckDB ( #72 )
...
Plan en 10 tâches TDD : construction incrémentale de dashboard_filters_to_sql,
réécriture de prepare_dashboard_data, adaptation des 3 appelants de
observatoire.py, test d'intégration sur tests/test.parquet.
2026-04-22 23:21:47 +02:00