Skip to content

1.4.12

Choose a tag to compare

@github-actions github-actions released this 30 Apr 20:28
· 56 commits to main since this release
release: 1.4.12 — belt-and-suspenders shutdown + force idle on hydrate

User reported 6 problems on launching 1.4.11:
1. 3 random runs auto-fired without user action
2. App started in 'running' mode
3. Header Play disabled
4. Card Play wrongly said 'Configure ta clé' when agent was busy
5. Bottom panel didn't open after Démarrer
6. Last project not preserved (showed Demo instead of Twoody)

Strategy: belt-and-suspenders.

Suspenders (hydrate side):
- orchestrator-loop.ts: ALWAYS reset to idle on hydrate. The
  'resume across restarts' semantics confused every user.
- server/app.ts: hydrate EVERY registered workspace, not just the
  bound one. Multi-project users had stale state in side workspaces
  the kanban could route to.

Belt (shutdown side):
- server/index.ts: RunningServer.close() now walks every workspace,
  shutdownOrchestrator(), marks running/preparing/queued runs as
  canceled with reason 'Canceled — server shutting down', pins
  orchestrator.json to idle. Clean audit trail, no 'Reaped on
  hydrate' messages.

UI fixes:
- App.svelte: at_capacity > missing_api_key in error-message priority.
  Workspace with claude-code (busy) + codex (no key) now correctly
  surfaces 'agent busy' instead of 'configure your key'.
- App.svelte: StartPromptDialog onStarted now calls openActivityPanel
  so the user sees logs immediately after Démarrer.

E2E verified: Demo's orchestrator.json was 'running' from yesterday.
Started server, both Demo and Twoody flipped to 'idle' automatically.
Started orchestrator manually, SIGINT → graceful shutdown ran, both
back to idle on disk. Round-trip clean.