You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Migration profil : colonnes users (bio…), tables user_anecdotes, anecdote_questions, user_featured_routes, seuils de certification dans settings #126
Epic : #6
Maquette : E-09, E-16 · validée le 2026-09-24 Modele-de-Donnees · Compte-et-Monetisation · API · E-09, E-16 · D-023
Le profil public, les anecdotes, les parcours à la une et le badge Créateur certifié (D-023) demandent de nouvelles colonnes et tables. #20, fermé, a posé le schéma initial des utilisateurs : ce ticket l'étend par une nouvelle migration, sans le rouvrir.
Table user_anecdotes : user_id, question_key, answer (150 caractères au plus), position (1 à 3) ; (user_id, position) et (user_id, question_key) uniques.
Table anecdote_questions : key, label, position, is_active ; huit questions actives au lancement, dans le seed.
Table user_featured_routes : user_id, route_id (parcours publié de l'utilisateur), position (1 à 3) ; (user_id, position) et (user_id, route_id) uniques ; la ligne disparaît quand le parcours n'est plus publié.
settings : seuils de certification certification.min_verified_routes (3), certification.min_rating (4,5), certification.min_completed_routes (3), et limite de création free.max_routes (1) ; lus par l'API au démarrage, rechargeables, sans déploiement.
Types et schémas Zod correspondants dans packages/shared.
users.is_public existe déjà sur main : D-025 le fait piloter par l'interrupteur « Profil public » des Réglages. Faux, les parcours affichent « Membre Widoo » sans lien ni sceau, et le profil est introuvable par lien.
🔨 Démarrage — plan : une migration additive 0004 (colonnes users : contrainte de 150 caractères sur bio, neighborhood, is_certified, certified_override, certified_at ; tables anecdote_questions, user_anecdotes, user_featured_routes, en cascade sur users et routes), les huit questions de E-09 (D-026) insérées par la migration et reprises par le seed, les seuils de certification et free.max_routes lus dans settings avec relecture chaque minute, et les types et schémas Zod dans packages/shared. Branche issue/126-profile-migration, une seule PR, niveau 2.
📋 Note MANAGER du 2026-10-13 : la mention de free.max_routes (1) dans la ligne settings du Comportement attendu, et dans les Notes techniques (« #66 (free.max_routes) »), est sans objet depuis D-073 : la création est gratuite et sans limite (Compte-et-Monetisation › Freemium). La PR #381 a raison de ne pas ajouter la clé. #66 est réaligné ; l'alignement des pages Modele-de-Donnees et API est confié à DESIGN dans #383.
Activity
PaulThiberville commentedon Oct 13, 2026
🔨 Démarrage — plan : une migration additive
0004(colonnesusers: contrainte de 150 caractères surbio,neighborhood,is_certified,certified_override,certified_at; tablesanecdote_questions,user_anecdotes,user_featured_routes, en cascade surusersetroutes), les huit questions de E-09 (D-026) insérées par la migration et reprises par le seed, les seuils de certification etfree.max_routeslus danssettingsavec relecture chaque minute, et les types et schémas Zod danspackages/shared. Brancheissue/126-profile-migration, une seule PR, niveau 2.PaulThiberville commentedon Oct 13, 2026
📋 Note MANAGER du 2026-10-13 : la mention de
free.max_routes(1) dans la lignesettingsdu Comportement attendu, et dans les Notes techniques (« #66 (free.max_routes) »), est sans objet depuis D-073 : la création est gratuite et sans limite (Compte-et-Monetisation › Freemium). La PR #381 a raison de ne pas ajouter la clé. #66 est réaligné ; l'alignement des pages Modele-de-Donnees et API est confié à DESIGN dans #383.