Commit Graph
1298 Commits
Author SHA1 Message Date
Théo LAGACHE 1b3f972bc8 add: onboarding 2026-06-22 10:52:42 +02:00
Théo LAGACHEandClaude Sonnet 4.6 68cd89fbe1 fix(onboarding): address final review findings — atomicity, scheduling guard, apply-all recovery, client validation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:49:46 +02:00
Théo LAGACHE fc42afe89e docs(sdd): append hotfix summary for applyMutation and list keys 2026-06-19 15:41:27 +02:00
Théo LAGACHEandClaude Sonnet 4.6 a6e528d12b fix(onboarding): wire applyMutation.mutateAsync everywhere and stabilize list keys
Fix 1 (Critical): Replace all 5 direct applyOnboardingDbSettingsAction calls with
applyMutation.mutateAsync throughout the component. Removed result.success guards
since mutateAsync throws on error (handled by onError hook). Affected locations:
- handleApplyToAll loop
- Retention section onSave
- Scheduling section onSave
- Notifications section onSave
- Storage section onSave

Fix 2 (Minor): Replace unstable index-based keys with policy.channelId fallback in
NotificationsSection and StorageSection card maps.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:41:14 +02:00
Théo LAGACHEandClaude Sonnet 4.6 d309faf819 feat(onboarding): rewrite step-db-settings with three-level phase navigation and full policy persistence
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:37:33 +02:00
Théo LAGACHEandClaude Sonnet 4.6 eda3c574c3 feat(onboarding): add BackupScheduleSelector component
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:32:20 +02:00
Théo LAGACHEandClaude Sonnet 4.6 0d3135af94 feat(onboarding): add applyOnboardingDbSettingsAction server action
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:29:29 +02:00
Théo LAGACHEandClaude Sonnet 4.6 870410efbf feat(onboarding): extend OnboardingDbSettings with retention, schedule, and policy fields
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 15:26:55 +02:00
Théo LAGACHE 0e4b5585e3 style(onboarding): replace button opacity flash with specific spinner animation on db select 2026-06-19 14:57:41 +02:00
Théo LAGACHE 36ed2e102c feat(onboarding): auto-save database selections on project create instantly 2026-06-19 14:56:14 +02:00
Théo LAGACHE 57122cf149 refactor(onboarding): skip db settings entirely if no database is selected in project create 2026-06-19 14:53:36 +02:00
Théo LAGACHE b0abc71ee6 fix(onboarding): do not skip db settings if agent is connected but no databases found 2026-06-19 14:51:17 +02:00
Théo LAGACHE 50f7fb17e8 fix(onboarding): skip db-settings step if no database is found on the agent 2026-06-19 14:44:32 +02:00
Théo LAGACHE ec07424ddf feat(onboarding): compute edgeKey directly on the server side to avoid lazy loading 2026-06-19 14:33:59 +02:00
Théo LAGACHE 972e8b1a83 refactor(onboarding): remove duplicate generate-edge-key action and use core utility directly 2026-06-19 14:26:05 +02:00
Théo LAGACHE 1bcf7e353e fix(onboarding): correctly show select placeholder when default value does not exist in the list 2026-06-19 14:21:34 +02:00
Théo LAGACHE 9d0a0f8529 fix(onboarding): skip default step if no notifiers and storages exist when advancing from storage step 2026-06-19 14:18:41 +02:00
Théo LAGACHE 37ed654dc9 fix(onboarding): completely hide back button on the first step instead of disabling it 2026-06-19 14:14:14 +02:00
Théo LAGACHE 06000c4e2a style(onboarding): improve empty auth state UI with lucide icon and better layout 2026-06-19 14:03:49 +02:00
Théo LAGACHE a10ef50bcf feat(onboarding): replace tabs with single form and multiple buttons for auth choice 2026-06-19 13:57:10 +02:00
Théo LAGACHE 69f500237a feat(onboarding): allow user to choose between passkey and password during registration if both are enabled 2026-06-19 13:54:33 +02:00
Théo LAGACHE 9873cd747d fix(onboarding): skip default step when going back from agent-create if no notifiers and storages exist 2026-06-19 13:45:46 +02:00
Théo LAGACHE 0a1f509e3f fix(onboarding): skip intermediate agent steps when going back from project-create to agent-create 2026-06-19 13:43:14 +02:00
Théo LAGACHE 3b49fc5a86 fix(onboarding): allow going from agent-create to project-create if a project already exists 2026-06-19 13:33:06 +02:00
Théo LAGACHE ecc3747a30 fix(onboarding): redirect to agent-create if project exists but no agent is found 2026-06-19 13:31:21 +02:00
Théo LAGACHE 6d6b2c0980 fix(onboarding): resume at db-settings instead of finish if no database exists for the project 2026-06-19 13:30:03 +02:00
Théo LAGACHE 4f58488c66 fix(onboarding): properly resolve onboarding state, remove redirect trap in step-defaults, block waiting flash 2026-06-19 13:26:47 +02:00
Théo LAGACHE a140492688 fix(onboarding): correct resume steps and skip agent-waiting flash when agent is connected 2026-06-19 12:04:48 +02:00
Théo LAGACHE d5aa90a7d9 fix(theme): use current theme as fallback in preferences, prevent session override of localStorage 2026-06-19 11:47:47 +02:00
Théo LAGACHE 7674ff4625 fix(theme): sync user theme from DB on all routes, not only dashboard 2026-06-19 11:43:05 +02:00
Théo LAGACHE 8f413d0e1d fix(onboarding): recalculate progress bar from full STEP_ORDER position 2026-06-19 11:35:55 +02:00
Théo LAGACHE 57e78e0929 fix(onboarding): persist theme to db on selection in StepPreferences 2026-06-19 11:34:03 +02:00
Théo LAGACHE 4dbf844272 docs: add onboarding theme & progress bar implementation plan 2026-06-19 11:24:22 +02:00
Théo LAGACHE 86d32f3d6a docs: add onboarding theme persistence & progress bar fix spec 2026-06-19 11:21:54 +02:00
Théo LAGACHEandClaude Sonnet 4.6 0e780113de refactor(onboarding): extract useMarkOnboardingDone hook, remove .gitkeep files
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 11:01:15 +02:00
Théo LAGACHEandClaude Sonnet 4.6 8d64376a56 refactor(onboarding): extract useAgentStatus and useGenerateEdgeKey hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:56:46 +02:00
Théo LAGACHEandClaude Sonnet 4.6 e044833d20 refactor(onboarding): extract useAddStorage and useRemoveStorage hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:54:01 +02:00
Théo LAGACHEandClaude Sonnet 4.6 aed8ecb53d refactor(onboarding): extract useAddNotifier and useRemoveNotifier hooks
Move notification channel add/remove logic from step-notifier.tsx into
dedicated useMutation hooks; step now reads notifiers from context and
delegates UI side-effects via per-call onSuccess callbacks.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:49:44 +02:00
Théo LAGACHEandClaude Sonnet 4.6 e498aaf920 refactor(onboarding): extract useUpdateAccount hook
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:45:15 +02:00
Théo LAGACHE 7b097c95c8 fix(onboarding): use narrowed createData.value in use-create-org 2026-06-19 10:42:21 +02:00
Théo LAGACHEandClaude Sonnet 4.6 1fc04d3b0b fix(onboarding): trim project name, standardize error narrowing in org/project hooks
- use-create-project.ts: Add trimming of project name at mutation start and validate empty name
- use-create-project.ts: Replace all name references with trimmed value in action calls and context updates
- use-create-org.ts: Standardize error narrowing by extracting result.data to local variables instead of using 'as' casts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:40:25 +02:00
Théo LAGACHEandClaude Sonnet 4.6 afd0894c24 refactor(onboarding): extract useCreateOrg and useCreateProject hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:37:12 +02:00
Théo LAGACHEandClaude Sonnet 4.6 8c1025ece9 refactor(onboarding): extract useCreateAgent and useDeleteAgent hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:31:21 +02:00
Théo LAGACHEandClaude Sonnet 4.6 808e60557b refactor(onboarding): move types, constants, schemas to sub-directories
- Rename onboarding.types.ts → types/index.ts
- Create constants/steps.ts with STEP_IDS and STEP_ORDER
- Create schemas/account.schema.ts with BaseSchema and WithPasswordSchema
- Update onboarding-shell.tsx to import STEP_ORDER from constants
- Update step-account-info.tsx to import schemas from schemas/account.schema
- Migrate 14 files from @/features/onboarding/onboarding.types → @/features/onboarding/types
- Fix missed import in app/(welcome)/welcome/onboarding-client.tsx

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:25:17 +02:00
Théo LAGACHEandClaude Sonnet 4.6 f07ff1a28c docs: add onboarding refactor implementation plan
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:20:19 +02:00
Théo LAGACHEandClaude Sonnet 4.6 352abb8a95 docs: add onboarding refactor design spec
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:14:44 +02:00
Théo LAGACHE aef1c7b8fb feat(onboarding): show Next button in shell when navigating backwards 2026-06-18 16:04:39 +02:00
Théo LAGACHE fc63923d85 feat(onboarding): remove org logo upload — orgs have no logo 2026-06-18 16:02:17 +02:00
Théo LAGACHEandClaude Sonnet 4.6 b0e23f336d feat(onboarding): theme applied dynamically via setTheme, avatar saved to user.image
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 16:00:30 +02:00
Théo LAGACHEandClaude Sonnet 4.6 1f3e36ce56 fix(onboarding): verify session after passkey registration, fallback to signIn.passkey()
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 15:57:26 +02:00