Code UX 0.9.2
Code UX 0.9.2
Code UX 0.9.2 is an orchestration hardening release focused on restart recovery, sprint lifecycle consistency, local/remote project execution reliability, dashboard operational clarity, and stronger release validation through release PR #2333.
Release Snapshot
| Item | Details |
|---|---|
| Version | 0.9.2 |
| Release commit | 8dbfcbe6aa689c4c2afbe76a1b0562ed279d6dc1 |
| Release PR | #2333 |
| Included dev sync | #2332, #2337 |
| Scope | 334 files changed across sprint orchestration, runtime recovery, provider execution, dashboard UX, CI/release validation, E2E coverage, and documentation |
What’s New
Orchestration Lifecycle
Sprint execution now has a more explicit lifecycle model for restart recovery, heartbeat ownership, task dispatch, and run-state reconciliation.
- Added restart behavior settings so operators can choose whether active sprints continue, pause, or cancel after app restart.
- Added invocation restart policy handling for continue, cancel, and restart behavior across provider invocation types.
- Centralized sprint-run lifecycle handling so heartbeat, startup recovery, pause, stop, cancel, and resume paths share the same state model.
- Improved startup recovery to reconcile running sprint runs, task runs, provider invocations, QA reviews, paused sprints, and orphaned runtime state.
- Preserved canceled task workspaces where needed while keeping runtime cleanup and restart reconciliation deterministic.
Runtime And Provider Reliability
Provider execution and container handling now expose clearer state and recover more consistently from interruption windows.
- Hardened Docker runner behavior around container naming, runtime home handling, setup image caching, login image prewarming, and shutdown cleanup.
- Improved provider telemetry watchers and usage parsing for Codex, Claude Code, Qwen, OpenCode, and Antigravity-style logs.
- Added workspace artifact handling and safer provider output sanitization paths.
- Added runtime process lock improvements so app startup is less fragile when a previous runtime lease or subprocess is still settling.
- Added terminal and local-directory route hardening for validated filesystem access.
Dashboard Operations
The dashboard received operational UX improvements for live runtime visibility, sprint control, settings, navigation, imports, and accessibility.
- Added restart behavior controls under General settings.
- Added local file picker support and clearer settings controls for project and provider configuration.
- Improved live session panels with container build status, runtime metadata, invocation feed clarity, live connection state, and task filtering.
- Improved sprint action menus, sprint controls, sprint ledger layout, bulk actions, and responsive sprint/task views.
- Refined issue and Jira import flows with reusable importer fields and clearer summary rails.
- Improved quicksprint editing, browsing, execution flow, and user feedback.
- Refined shell navigation, page containers, global search, file browser interactions, memory views, onboarding, and reduced-motion behavior.
Release And Test Gates
Release validation now exercises more of the app lifecycle before main promotion.
- Added a
Release Version BumpCI job for pull requests targetingmainso main release PRs must increasepackage.jsonsemver. - Limited cross-platform Playwright E2E coverage to main-promotion paths while still validating release PRs into
main. - Added release install verification and app release smoke coverage.
- Added sprint/task lifecycle E2E coverage and project setup release E2E coverage.
- Added OpenRouter sprint validation scripts and workflow support.
- Added documentation tests to keep documented commands aligned with repository scripts.
Fixes
Sprint Recovery And Control
- Fixed stuck sprint recovery after restart by reconciling sprint runs, task runs, provider invocations, QA review state, and paused/orphaned runtime state at startup.
- Fixed inconsistent pause, stop, cancel, and resume handling by routing lifecycle transitions through shared services.
- Fixed task dispatch edge cases where restart or interruption windows could leave dashboard state marked running without matching execution activity.
- Fixed QA handoff behavior so human-cleared attention after max-QA guardrails can allow QA flow to proceed again.
- Fixed stale project attention cleanup paths for old test and operational tasks.
Local And Remote Git Execution
- Fixed local merge and finalization behavior for local project execution paths.
- Hardened merge-conflict and feature-PR gate behavior for local/remote branches.
- Fixed cases where orchestration artifacts and runtime operations could dirty local workspaces unexpectedly.
- Improved local project path validation and file-browser access safety.
Containers And Runtime Cleanup
- Fixed container name conflict handling by improving invocation/container reconciliation and cleanup behavior.
- Fixed shutdown cleanup noise when containers had already exited before kill reconciliation.
- Improved preview/runtime volume pruning and canceled-task volume preservation behavior.
- Hardened runtime startup behavior so previous leases or subprocess remnants do not prevent normal app startup unnecessarily.
CI, Security, And Release Automation
- Fixed GitHub Actions model catalogue PR creation by routing catalogue updates through a token-capable workflow path.
- Fixed Playwright workflow triggers so OS E2E runs execute on main-promotion paths instead of every development push.
- Fixed CodeQL path-injection findings in local directory browsing by operating on canonical validated file URLs after allow-list checks.
- Fixed avatar scene E2E flakiness by waiting on the final WebGL scene state instead of a transient lazy-load wrapper.
- Hardened quality guardrails, audit coverage, provider secret redaction tests, and release validation documentation.
Validation
| Check | Result |
|---|---|
| Typecheck & Lint | Passed |
| Backend Tests & Coverage | Passed |
| Dashboard Tests | Passed |
| Security Audit | Passed |
| Playwright E2E | Passed on Ubuntu, macOS, and Windows |
| CodeQL Analysis | Passed |
| Release Version Gate | Passed |
Additional local validation:
pnpm run lint
pnpm exec vitest run tests/backend/server/local-directory-routes.test.ts
pnpm run test:e2e -- tests/e2e/agent-avatar-scene.spec.ts --project=chromium
git diff --checkKnown Follow-Up
- Add
Release Version Bumpas a required status check in themainbranch ruleset if it is not already selected in repository settings, so the new gate is enforced by branch protection and not only reported by CI.