Changelog

What shipped.

CAS is in beta. Releases ship on a continuous cadence as features stabilise. Breaking changes are still possible before 1.0 — consult the entry notes before upgrading in a team environment.

New releases are announced at hello@cas.dev. A JSON feed is available at /changelog.json.

May 22, 2026

Desktop release packaging and welcome experience.

Added
  • Release pipeline produces signed and notarized `.dmg` for Apple Silicon and Intel; both targets ship from the same release job.
  • First-launch welcome installer: detects missing runtime dependencies, requests permissions, and runs `cas init` automatically on the selected project.
  • Multi-window support: each mission board or transcript viewer opens in an independent renderer process with shared daemon state.
  • Toast notification system (via sonner) surfaces task state transitions, verify-gate outcomes, and merge completions in the desktop shell.
Changed
  • Auto-updater channel switched from `latest` to `stable`; delta patches reduce download size by ~70% on typical minor releases.
  • Window restore position and zoom level are now persisted across restarts.
Fixed
  • Project daemon connection failed to resolve when the app bundle was relocated after install.

May 9, 2026

TUI virtual list and paged history.

Added
  • Virtual list renderer in the TUI replaces full re-renders; transcript views with 10 000+ events no longer degrade frame rate.
  • Paged history navigation: `PageUp` / `PageDown` scroll by viewport height, `G` jumps to the live tail, `gg` returns to the top.
  • Heartbeat supervision watchdog restarts the daemon process if the last heartbeat exceeds the configured `watchdog_timeout` threshold.
Changed
  • Event tail view defaults to follow-live mode; press `f` to toggle.
  • TUI status bar now shows elapsed time since last event and active worktree count.
Fixed
  • Rapid resize events could leave the viewport in an inconsistent scroll offset state.
  • Assertion in the TUI verification view panicked on empty acceptance criteria list.

April 28, 2026

Mission inspector ergonomics.

Added
  • Mission inspector panel surfaces worktree path, verify command, merge policy, and the last five events inline — no separate `cas task show` call required.
  • Keyboard shortcut `i` opens the inspector for the focused task row; `Esc` dismisses it.
  • Acceptance criteria checklist renders inside the inspector with pass/fail state per criterion.
Changed
  • Inspector width is now responsive: collapses to a bottom sheet on viewports narrower than 900 px.
  • Phase pill labels shortened to fit narrower terminal columns without truncation.

April 10, 2026

Verify gate, Playwright e2e suite, and visual regression baselines.

Added
  • Verify gate blocks task closure until all acceptance criteria and the configured check suite pass against the current snapshot SHA.
  • Playwright e2e suite covers the core delivery loop: task create → assign → agent start → tool events → verify → merge.
  • Visual regression baselines captured for the mission board, inspector, and transcript view; diffs block the merge gate on CI.
  • Performance budget enforcement in CI rejects bundles that exceed the configured JS size or LCP thresholds.
Changed
  • Verify command output now includes the snapshot SHA and a diff summary relative to the last passing snapshot.
Fixed
  • Merge gate was cleared optimistically before the verify record was written to the event log.

March 24, 2026

Hook runtime and policy enforcement.

Added
  • Runtime hooks (`SessionStart`, `UserPromptSubmit`, `PreToolUse`, `PostToolUse`, `Stop`) bridge CAS task and planner context into both Claude and Codex agent sessions.
  • `PreToolUse` hook enforces path, command, and tool policy; denied actions are recorded as `policy_denied` events and returned to the runtime as a block response.
  • `PostToolUse` hook writes structured tool events to the operating record for every read, edit, bash, and search call.
Changed
  • Hook bridge is fully deterministic: no model call is made inside the hook path.
  • Hook context injection on `SessionStart` includes the active task contract, epic metadata, and worktree lease details.
Removed
  • Legacy `cas hook legacy` shim removed; all providers now route through the unified hook bridge.

March 5, 2026

Dead-code gate and perf budgets.

Added
  • Knip dead-code gate runs on every PR; unreferenced exports block merge until removed or explicitly annotated.
  • Bundle performance budget check enforces JS chunk size, LCP target, and total transfer weight; thresholds are configurable in `.cas/config.toml`.
  • Worker resource tracking exposes CPU and memory per worktree lease in `cas workers` and the desktop workers panel.
Changed
  • CI pipeline reorganised: lint → typecheck → unit → e2e → bundle-budget run in dependency order with shared caches.
Fixed
  • Stale worktree leases were not released when the daemon restarted after an unclean shutdown.
  • Type errors in the hook bridge introduced by the v0.2.x series.

February 14, 2026

Worktree leases, parallel execution, and the operating record.

Added
  • Worktree lease system: each task is assigned an isolated copy of the repository with a tracked owner, start time, and expiry.
  • Parallel task execution: up to `max_workers` tasks run concurrently without cross-contamination between worktrees.
  • Append-only event log records `task_created`, `worktree_leased`, `agent_started`, `tool_event`, `verify`, `merge_gate`, and `task_done` events with full context.
  • Runtime policy: allowed commands, blocked paths, and required approvals are enforced per task label.
Changed
  • `cas task list` output groups rows by phase with colored phase rails matching the mission board.