Onboarding phase 2 : parcours guidé — bandeau de démarrage sur chaque page et carte d'étape avec mise en évidence #391
Labels
No labels
autopilot:pending-human
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-clarification
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/Simpl-Resultat#391
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Constat (test de Max, 2026-10-06, v0.17.0)
Max a testé la phase 1 (#351 à #357, PRs #377 à #383). Il en ressort trois constats :
todanscomputeChecklist), et rien sur la page d'arrivée ne dit quoi faire.Décisions de Max (2026-10-06)
Contraintes relevées dans le code
useOnboardingChecklist, un seul effet). Un bandeau présent partout et une réussite détectée en direct demandent deux choses :AppShell(src/components/layout/AppShell.tsx, qui rend aujourd'huiSidebaret<Outlet />) ;hide()/refresh(). #384 relève qu'unhide()lancé pendant unrefresh()en vol peut être annulé par le snapshot de ce chargement (useOnboardingChecklist.ts:92-113). Le constat restait sans effet tant que la liste n'était relue qu'au montage. Avec des relectures fréquentes, il devient réel.UsersSettingsPage.tsx:44). Le fournisseur partagé doit l'apprendre, sinon le bandeau reste caché jusqu'au prochain chargement.data-onboarding="<clé>") sur les contrôles plutôt que des sélecteurs CSS. Ainsi, la refonte d'un écran fait rougir un test au lieu de casser le parcours en silence.computeChecklistcompte alors 5 cases sans Budget. Le bandeau et la carte suivent la même règle, avec la même attente debudgetReadyque la liste compacte, pour ne pas afficher 5/5 puis 5/6.uncategorizedOnlyne se règle que dans la barre de filtres (TransactionFilterBar.tsx). L'ouverture filtrée demande un paramètre de route ou un état de navigation.renderToStaticMarkupet appel direct du composant). Garder en fonctions pures la logique qui décide de l'étape, de la page et du texte.Questions ouvertes pour la spec
docs/analyse-onboarding-2026-09.md: données de démo D2, guide source unique E). D2 de ce ticket rend caduc le tour guidé C de la phase 3.Suite
Lancer
/plan-runsur ce sujet, avec #390 en tête de pile ou en correctif séparé.Découpée lors de la séance
/plan-rundu 2026-10-06 en six issues empilées, dans la milestoneplanned-2026-10-06-onboarding-parcours-guide:Les décisions D1 (bandeau) et D2 (carte et mise en évidence) de cette issue y sont reprises, avec douze autres prises en séance : « Passer » comptée, message de fin, profils déjà actifs masqués d'office, une seule carte qui suit l'assistant d'import, cible du budget, entre autres.
La revue
/review-specdu plan a relevé 2 critiques et 13 améliorations, toutes intégrées dans les corps d'issue (verdict final : approuvé). Les plus importantes :dataEventsqui couvre les insertions d'un import ;Exécution :
/autopilot planned-2026-10-06-onboarding-parcours-guide. Le prérequis, #394, est mergé.Je ferme cette issue : le travail vit désormais dans les six issues.