What problem does it solve? Onboarding flows break when clients reconstruct progress locally, producing routing loops, stale steps, and stuck users. This Skill enforces a single source of truth: the nextStep value computed server-side by GET /api/auth/user, so web and mini-program clients always navigate from authoritative server state. ## Core Features & Use Cases - Server-driven step authority: Defines the authority chain from routes/domains/auth.ts through useAuth.ts and AuthenticatedRouter, with shared helpers in packages/shared/src/onboarding.ts. - Step and flag mapping: Documents the active onboarding steps (personality-test, essential-data, extended-data, profile-review, discover) and their completion signals such as hasCompletedInterestsCarousel and profileEssentialComplete. - Stress-test checklist: Ships a grill-me interview covering nextStep computation, completion flags, restart idempotency, swipe-back recovery, and legacy quarantine. - Use Case: When adding a photo-upload step after essential-data, follow the Skill to add the server-side nextStep value, persist a new completion flag on the users table, register the route, and update the shared flow mapping. ## Quick Start Ask the AI to add a new onboarding step or debug why a user is stuck in onboarding, and it will apply the server-driven nextStep model from this Skill.