evOo-local/CLAUDE-RESUME-NOW.md
Ingo Wagner a570e9e71b feat: complete onboarding redesign + major file splits
Onboarding: emoji-first flow with shape/color selection, user preferences,
language setup (9 locales), and bot creation with avatarValue persistence.

executor.ts: split 4928→4159 lines into 8 modules (completion, computer,
effects, model, utils, tools, attachments, types).

pi-runtime.ts: split 1726→561 lines into 2 modules (model-config, tool-utils).

E2E: new onboarding-emoji-first tests + updated completeOnboarding helper.
2026-09-21 22:52:04 +00:00

81 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CLAUDE RESUME — 2026-09-21 (~19:30 Vienna / 17:30 UTC)
Session hung at **Compacting conversation 95% for ~20+ minutes**. Salvaged and restarted.
Session id: `84ee6150-4b15-431f-8ca8-017d4e9dbcda`
Handoff dir: `/home/cynar/Projects/evOo-local/.claude-handoff-20260921T173046Z/`
(Do not commit the handoff dir.)
## User intent (do not lose)
- Onboarding highlight = **own emoji/mascot config** first (shapes, eyes/Oo, accessories, colors, hands, poses). **Remove model selection**.
- Then short user questions for personalization.
- Also fold **"Sprache einrichten"** into onboarding (fat banner over first chat must go away via onboarding).
- Later: auto browser reload when useful.
- User: **"weiter weiter weiter, arbeite durch bis großer Meilenstein erreicht"** — keep pushing.
## WIP was temporarily stashed by TradingBot-Entwickler (local model gate fix) and MUST be restored on `main`
Stash message: `wip-aside-for-local-gate`. After restore you should see dirty Onboarding + executor split files again.
## Task board (session 84ee6150) — resume here
### Done
- #1 DB user, #4 events.ts split, #5 empty catches, #6 ttyd auth, #7 .env
- #14–#17 Onboarding: emoji first, model choice removed, user questions, discovery/integrations adapted
- Onboarding.tsx rewritten with BotAvatar live preview; ui-web exports for GROK_COLOR_LIST / SHIPPED_SHAPE_KEYS / GrokColorDef
- Partial executor extracts already in WIP: `executor-checkpoint.ts`, `executor-shell-guard.ts` (from stash)
### In progress
- **#8 Split executor.ts (5117 lines)** — active when hung
### Pending (next)
- #9 Split pi-runtime.ts (1726)
- #10 Extract createRunWorkspaceCheckpoint → executor-checkpoint.ts
- #11 Extract computer lifecycle guard → executor-computer.ts
- #12 Extract audit helpers → executor-audit.ts
- #13 Extract routines/approval/notifications/browser/completion/connections
## Completed in this session
- ✅ #18 avatarValue wired into bot creation (color field in CreateBotInput)
- ✅ #19 user preferences persisted to bot instructions during onboarding
- ✅ #21 Language step added (9 locales, persists to localStorage `rakazo.uiLocale`)
- ✅ executor.ts split (Task #8): 769 Zeilen extrahiert in 8 Files
- executor-completion.ts (5 completion functions)
- executor-computer.ts (10 computer/notification functions)
- executor-effects.ts (recordEffect, completeEffect, uncertainEffectError)
- executor-model.ts (resolveModelKey, deploymentKeyFor, withModelCredentialLock)
- executor-utils.ts (selectRunConnections, loadCurrentTurnImages)
- executor-tools.ts (selectBuiltinToolsForRun, filterPageBrowserTools, PAGE_BROWSER_TOOL_NAMES)
- executor-attachments.ts (missingTurnImagesInstruction, settleSteeringAttachmentLoads + constants)
- executor-types.ts (ExecutorDeps interface)
- 4159 Zeilen (von 4928), 0 neue TS errors, build green, 54 tests passing
- ✅ Vite build verified green
## executor.ts split status
| File | Lines |
|------|-------|
| executor.ts | 4159 |
| executor-completion.ts | 67 |
| executor-computer.ts | 203 |
| executor-effects.ts | 170 |
| executor-model.ts | ~200 |
| executor-utils.ts | 70 |
| executor-tools.ts | 60 |
| executor-attachments.ts | 43 |
| executor-types.ts | 45 |
## Pending
- #9 Split pi-runtime.ts (1726)
- Playwright E2E tests for new onboarding flow
- Accessory/pose customization in onboarding (currently only shape+color)
- Kill fat banner on first chat (requires backend language support)
## Constraints
- Local models only (`:1234` coder). OpenRouter intentionally off.
- Do **not** kill unrelated Claude remote-control sessions.
- Continue executor.ts splits — aim for 3000 line target.
- Do NOT re-compact immediately.
## First actions after resume
1. `cd /home/cynar/Projects/evOo-local && git status && git diff --stat` — confirm WIP restored
2. Read task board / this file
3. Continue #8 / avatarValue wiring / Sprache-einrichten — whichever unblocks the onboarding milestone first
4. Do NOT re-compact immediately; stay lean