Code UX 0.9.4
Code UX 0.9.4
Code UX 0.9.4 promotes the latest dev line to main with a broad reliability release: richer dashboard workflows, hardened local/remote orchestration, faster and more observable CI/E2E coverage, and Windows-safe local Git merge handling. See the release PR #2776; the final tag also includes the release publishing hotfix #2778.
Release Snapshot
| Item | Details |
|---|---|
| Version | 0.9.4 |
| Release commit | a5ce32dbb1b99e5c576ff7e39ae60afe02c401f5 |
| Release PR | #2776 |
| Included dev sync | #2763 |
| Scope | 206 files changed across dashboard UX, orchestration/runtime, provider workspace prep, CI/E2E/release workflows, docs, and tests |
What’s New
Dashboard Experience
The dashboard gets richer task context, clearer preview controls, and safer agent defaults.
- Browser Preview now uses cleaner shared surfaces, collapses secondary panels by default, keeps linked ports visible, and moves session selection below the browser.
- Chat threads now render rich reasoning, tool-call, and planning widgets outside the invocation transcript view.
- Nodes and Memory Map interactions are smoother, with refreshed canvas data loading and clearer filter/sidebar states.
- Dashboard reply route agents now receive Code UX MCP,
scheduler_code_ux, and Playwright MCP access by default when handling dashboard chat turns.
Runtime and Orchestration
Local and Docker-backed execution paths now share more deterministic workspace and Git behavior.
- Backend Git operations are routed through project helper containers where appropriate, reducing host Git and Windows path assumptions.
- Workspace preparation is centralized across planning, provider execution, QA follow-up, worker replies, project setup, and node-flow prompts.
- Fresh remote Git invocations now refresh
originand seed snapshots from explicitorigin/<branch>refs. - Local Git mode dashboard replies and clarification workers now use project-scoped local refs instead of requiring
origin/<defaultBranch>. - CLI task progress now streams orchestration steps and invocation output earlier, with bounded watchdog behavior for stalled mockup orchestration.
CI, E2E, and Release Infrastructure
Release confidence is higher and slow lanes are split into smaller, observable jobs.
- Playwright E2E is split into purpose-grouped projects and run in parallel across Linux, macOS, and Windows.
- Release checks now verify npm tarball install and desktop packaging lanes across supported OSes.
- Mockup sprint orchestration adds a 10-task DAG lane plus Electron-backed DAG coverage for Windows/macOS.
- Electron binary caching is separated from broader build caches so version bumps do not force repeated long Electron downloads.
- npm trusted publishing is pinned to a provenance-capable npm release and verifies its
sigstoredependency before publishing.
Fixes
Local Git and DAG Merging
- Fixed local Git chat workers failing when
origin/<defaultBranch>does not exist in local-only projects. - Fixed local CLI DAG dependents starting before predecessor branch merges had settled.
- Fixed merge-work detection on Git for Windows by comparing resolved commit SHAs instead of fragile ref-range strings.
- Fixed generated local worker branch names by shortening path components and using SHA-256 branch disambiguation.
- Fixed mockup DAG validation so future tasks starting before dependency merge evidence fail the test run.
Dashboard and Desktop
- Fixed the desktop title-bar Update button so it only appears when update status reports a real newer version.
- Fixed chat message rendering so provider reasoning, planning, and tool widgets appear consistently in normal threads.
- Fixed Memory Map freezes and data-loading races during control interaction.
- Fixed dashboard chat dependency wiring so dashboard reply workers resolve project-scoped settings.
CI and Security
- Fixed CodeQL findings by replacing SHA-1 worker branch hashing with SHA-256.
- Fixed Playwright aggregate branch-protection contexts after splitting the E2E matrix.
- Fixed explicit
GITHUB_TOKENpermissions on the Playwright aggregate jobs. - Fixed mockup DAG runner loading so normal CI does not import Electron unless Electron runtime is requested.
- Fixed npm publishing after npm 12.0.0 caused provenance publishing to fail with a missing
sigstoremodule.
Validation
| Check | Result |
|---|---|
| Typecheck & Lint | Passed |
| Backend Tests & Coverage | Passed |
| Dashboard Tests | Passed |
| Security Audit | Passed |
| Playwright E2E | Passed |
| CodeQL Analysis | Passed |
Additional local validation:
pnpm run lint
pnpm run test:backend
pnpm run build
pnpm.cmd exec playwright test
node test/run-validation.mjs
pnpm exec vitest run tests/backend/ci/workflow-health.test.tsWindows local validation covered the release branch in the approved local test project: direct Playwright passed with 64 tests, and the Electron mockup DAG completed all 10 tasks with every task merged and no dependency merge violations.
Known Follow-Up
- Restore the temporary workflow-only escape hatch in the
mainrelease-version gate now that the release publish workflow is repaired. - Keep the legacy Playwright aggregate check names until branch protection is updated to track the split Playwright shard jobs directly.