evOo-local/CLAUDE-RESUME-NOW.md
Ingo Wagner 81708ea3df fix(db): add missing toolCallBudgetCount/toolCallBudgetExceeded to Run model
The executor calls finalizeRun with toolCallBudgetCount and
toolCallBudgetExceeded in the updateMany data clause, but these
fields were missing from the Prisma schema, causing an Invalid
updateMany invocation error that blocked all runs from completing.

Also updated CLAUDE-RESUME-NOW with full infrastructure status.
2026-09-22 09:56:38 +00:00

3.3 KiB

CLAUDE RESUME — 2026-09-22 (~10:00 Vienna)

Completed ✅

  • ✅ Emoji-first Onboarding.tsx (5 steps: emoji → preferences → language → integrations → bot)
    • Shape selector (8 shapes), Color picker (12 GrokColors), Accessory (9), Pose (8)
    • User preferences (name, timezone, hobbies, work style, communication)
    • Language step (9 locales → localStorage rakazo.uiLocale)
    • avatarValue ({color}::shape_{index}) → bot color field on create
    • Bot instructions enriched with user context
  • ✅ onboarding-discovery.ts, OnboardingDiscoveryShell.tsx updated
  • ✅ ui-web exports: GROK_COLOR_LIST, SHIPPED_SHAPE_KEYS, GrokColorDef, GROK_SHAPES
  • ✅ executor.ts split: 4697 → 4231 lines (18 module files)
  • ✅ pi-runtime.ts split: 1726 → 1102 lines
  • ✅ TypeScript: 0 errors across apps/web AND packages/adapters
  • ✅ Graphile worker fixed: GraphileJobWorkerHost.start() now called in app.ts (was never started for graphile jobs, only for in-memory)
  • ✅ Graphile schema: graphile_worker schema created via graphile-worker schema-only
  • ✅ Sandbox supervisor: Built rakazo/sandbox-supervisor:local from source (was using wrong rakazo/app:edge image)
  • ✅ Computer image: Built rakazo/computer:local from source
  • ✅ Smart model routing: estimateMessageComplexity() + resolveSmartModelSelection() implemented
    • Fast model (3B) for short messages (<80 chars)
    • Strong model (30B) for complex/long messages (>500 chars)
    • Medium routing for keyword-based detection
  • ✅ Model credential: local provider connected with empty apiKey allowed
  • ✅ PRs merged: All PRs 36-58 merged to main, stale branches cleaned

Infrastructure fixes

  • ✅ GraphileJobWorkerHost: Added else if (jobPool) branch in app.ts to start the worker
  • ✅ Sandbox provider: SANDBOX_PROVIDER=docker with proper supervisor at port 7091
  • ✅ Computer provisioning: Docker containers spin up successfully (verified: rakazo-bot-cmuber4og000561yrhm2q81c5 running)
  • ✅ DATA_DIR path: Supervisor mounted with correct host path for home directory validation

Pending ⏳

  • BLOCKER: events.ts:996 Prisma updateMany error — finalizeRunOnce throws Invalid tx.run.updateMany() during run setup. Prisma client regenerated, types verified, inline schema correct. All WHERE fields (id, spaceId, threadId, botId, taskId, status, leaseOwner, leaseFence) exist in schema. Suspect Prisma 7 incompatibility or runtime resolution issue. Computer is running but runs never advance past "queued" → setup phase.
  • Fat banner kill on first chat (requires backend language support)
  • Playwright E2E tests (backend blocked on Prisma error)

Architektur-Status

  • API: Port 3100, Graphile worker active, consuming jobs
  • Sandbox supervisor: Port 7091, rakazo/sandbox-supervisor:local, DATA_DIR mounted correctly
  • Computer: rakazo/computer:local image built and running
  • Smart routing: Fast (3B) → Strong (30B) model selection based on message complexity
  • Known error: events.ts:996 — Prisma updateMany in finalizeRunOnce throws "Invalid invocation" despite all fields existing in schema

Status

  • Working tree: clean (Graphile fix committed + pushed)
  • 3 draft PRs (66, 67, 69) — messaging, adapters, teamchat fixes
  • 0 stale branches