Skip to content

v0.42.0

Choose a tag to compare

@github-actions github-actions released this 05 Jul 03:25

Summary

  • Release 0.42.0 (stable)
  • Built from v0.41.1...v0.42.0
  • Published intentionally from main via tag promotion

Highlights

Features

  • Dashboard recovery guardian via systemd user unit (PAN-2253)
  • Verify agents ACTUALLY moving every tick + add pan-agent-activity skill
  • Surface TROUBLED badge on kanban issue cards (PAN-2305)
  • Add 'pan plan --auto --auto-start' to slash-command autocomplete
  • Implement PAN-2283 tiered execution dispatch
  • Clear troubled from tree badge
  • Render troubled issue tree badge
  • Expose troubled session metadata
  • Tiered execution v2 — vigilant listeners, compaction-point re-tier (PAN-2222) (#2249)
  • New Overdeck brand mark — deck-stack logo and favicon
  • Mechanical prd-first gate in plan finalize and complete-planning (pan-2234)
  • Prd-first planning role and canonical refactor queue
  • Reserved swarm dispatch budget (PAN-2212)
  • Add Claude Sonnet 5 support
  • Sandbox-safe flywheel data surfaces (pan backlog forecast + merge-blockers)
  • Substrate-first ranking + tenets spirit-gate for backlog pickup
  • Restore flywheel soul + blanket-release auto-pickup (PAN-2187)
  • Wire uat stack actions
  • Add uat context menu
  • Resolve uat inline actions
  • Persist uat tree expansion
  • Render uat containers as tree rows
  • Classify uat stack status honestly
  • Warn on unavailable merge backend in queue
  • Warn when autonomous merge lacks backend
  • Show flywheel merge backend status
  • Expose flywheel merge backend status
  • Add merge backend status helper
  • Finalize pi conversation control contract
  • Wire pi conversation controls in composer
  • Add pi conversation abort endpoint
  • Add pi conversation live controls
  • Route pi conversation messages through control channel
  • Add conversation control ack registry
  • Add pi conversation control channel
  • Widen pi extension control api
  • Add harness behavior runtime contract
  • Add evalite foundation
  • Show epic marker in sequence table
  • Group forecast cards by epic
  • Show epic membership in backlog dag
  • Thread epic metadata through reads
  • Reap closed issue disk residue
  • Reap closed issue residue
  • Mark closed-out pipeline journals
  • Epic-aware sequencer — exclude epics, model contains edges (PAN-2081 Phase 1)
  • Group and de-noise generated release notes
  • Add user-facing PR-FAQ section to pan-recap
  • Add pan-recap executive daily-recap skill
  • Backlog pickup controls on issue cockpit + overlay (PAN-2059)
  • Show matching conversation title on the /sessions list

Fixes

  • Stop swarm-finalization runaway — terminal-spec guard + durable finalizedAt tombstone (PAN-2367)
  • Boot-reconciliation excludes phantom/merged/completed agents via shared skip predicate (PAN-2284)
  • Stop rendering dead sessions as working; lock strike allowlist (PAN-1739)
  • Commit-guard scripts for flywheel-orchestrator + agent main-push (PAN-2194)
  • Recover stranded swarm slots — issue-level finalization + git-derived slot readiness (PAN-2357)
  • PAN-2145
  • Boot-reconciliation resume-all no-op + stale candidate list (PAN-2338)
  • Reconcile strike-PR and UAT-batch merge records (PAN-2311)
  • Use async sessionExists in uat-promote-notify (PAN-2294)
  • Gitignore .pan/test/result.json to prevent per-merge conflicts (PAN-2325)
  • Sync target-branch resolution (PAN-2086)
  • Isolate codex role kickoff files (#2340)
  • Correct Effect.catchAll misuse in route handlers — status POSTs no longer 500 (PAN-2329) (#2339)
  • Fix review feedback delivery fallbacks
  • Activity check = READ each agent's output & assess progress, not hash-diff
  • Keep smee relay alive (#2320)
  • Stop dropping pi/omp messages sent mid-turn and silence control watcher ENOENT spam
  • Move workspace dashboard peer port off host port 3011 (PAN-2292)
  • Keep deacon patrol watchdog patient (PAN-2293)
  • Keep flywheel remediation prompt delivery alive
  • Keep deacon patrol watchdog patient
  • Allow workspace container dashboard port (#2301)
  • Allow tiered slot starts without plans
  • Preserve untiered work starts without plans
  • Gate UAT train reconciler to primary dashboard (#2291)
  • Fix stale file-size baseline
  • Move workspace dashboard peer port
  • Tokenize boot reconciliation held banner
  • Found managed server unit with Type=forking so it survives (PAN-1798)
  • Include troubled gates on role session nodes
  • Keep dashboard health gate compact
  • Guard dashboard identity on health checks
  • Route default-stamped no-resume boots to the boot dialog (PAN-2278)
  • Prevent patrol heartbeat regression
  • Prevent duplicate smee relay processes
  • Deliver codex planning kickoff
  • Verify remote branch before local squash close-out
  • Point test role at durable planning context
  • Handle diverged main recovery advice
  • Verify squash merge by PR head
  • Fix codex planning launcher harness
  • Make close-out merge check squash-aware
  • Make unstick git repair advice non-destructive
  • Fix strike agent reducer projection (#2271)
  • Route merge-state reconciler through GitHub App REST when configured
  • Repair live feedback delivery gates
  • Deduplicate bead issue records
  • Restore modal test mocks
  • Address PAN-2181 review feedback
  • Tokenize boot reconciliation modal
  • Extend boot reconciliation grace default
  • Serialize planning completion per issue
  • Extract ohmypi cost reconcile trigger
  • Normalize event payloads at the write door so undefined keys can't poison RPC encode (PAN-2225)
  • Age-aware starting-state guard kills the duplicate planner twin (PAN-2159)
  • Record rebuild also preserves freshest statusOverrides
  • Verdict-POST agent notification uses Effect-level catch
  • Let an in-progress swarm dispatch its final item
  • Surface slot verification failures instead of dropping them silently
  • Swarm eligibility gates dispatch only, not merge/gc (endgame starvation)
  • EmitAgentEvent attaches the internal token the heartbeat route requires
  • Pan swarm dispatches through the full coordination pass (single door)
  • Kill the conversations-list stat storm and index the cost ledger join (PAN-2220)
  • Coordinate swarm against the merged plan view so item done-ness survives gc
  • Match collapsed paste placeholder on normalized PTY output
  • Persist patrol heartbeat at cycle start + fresh watchdog grace after restart (PAN-2219)
  • Swarm gc degrades git failures to actions instead of aborting coordination
  • Preserve freshest swarm slot assignments across record rebuilds
  • Gc liveness guard - never destroy a slot whose agent session is alive
  • Replace costs-by-issue N+1 with grouped breakdown queries (PAN-472)
  • Extract flywheel start helpers to src/lib to satisfy file-size guard
  • Resolve findSpecByIssue from the filename instead of parsing every spec (PAN-2216)
  • Stop lifecycle patrol from re-processing ended conversations every tick (PAN-2215)
  • Pin flywheel start to the primary worktree root
  • Carry Anthropic auth mode and plan into normalized config
  • Honor per-issue stuck/deacon-ignored hold in swarm coordination (PAN-2214)
  • Avoid pan show state writes for missing agents
  • Relaunch missing active orchestrator
  • Close approved review pipeline wedges
  • Reactive readyForMerge convergence for stuck-after-review (PAN-2198) (#2199)
  • Bump file-size baseline for Sonnet 5 model-capabilities growth
  • Done-preflight follows .beads/redirect to read the live ledger
  • Flywheel orchestrator NEVER edits/commits any file — only dispatches
  • Pan backlog forecast reads labels via gh (sandbox-safe), not the server-only issue service
  • Trim CLI below file-size guard
  • Flywheel harness derives via resolveHarness, not a hardcoded claude-code fallback
  • Re-apply pan-2179a kickoff-delivery root to refactored seams (fatal work kickoff + transcript confirmation)
  • Planning floor selector + forecast API + role rule (PAN-2173)
  • Flywheel-specific stuck thresholds + full-tick nudge (PAN-2174)
  • Verification gate rejects plan-only/zombie changesets (pan-2179)
  • Untrack .pan/spec.vbrief.json from index (pan-2178)
  • Untrack gitignored .pan/spec.vbrief.json + add guard test (pan-2178)
  • Protect UAT stack action routes
  • Prefer clean uat stops over aggregate health
  • Fix flywheel stuck-remediation test expectations
  • Relaunch wedged or dead flywheel orchestrator instead of parking it (pan-2160)
  • Detect kimi-native context overflow
  • Contain auto-merge pr state lookup failures
  • Add gh fallback for auto-merge pr state
  • Remove unused Settings extraction symbols
  • Restore pi idle prompt delivery
  • Allow pi control acks without browser origin
  • Re-evaluate stale merge-blockers on deacon patrol (PAN-2143)
  • De-hardcode workspace database name
  • Stale flywheel runs no longer report 'running' (false Live badge) (PAN-2108)
  • Make flywheel periodic-sweep instruction harness-aware (PAN-2108)
  • Flywheel orchestrator self-heals on death + surfaces death reason (PAN-2108)
  • Capture omp exit code on death via launcher exit-status file (PAN-2108)
  • Scope tmux-send-keys-guard to work agents only
  • Block work agents from self-approving subagent prompts via tmux
  • Create empty session and configure survival before sending command
  • Idle-nudge points agents at their on-disk brief (PAN-2102)
  • Default Kimi (Moonshot) provider to claude-code, not ohmypi (PAN-2102)
  • Trip troubled gate on pre-kickoff work-agent crash-loops (PAN-1718)
  • Stop false 'Worktree missing' for unresolvable sessions (PAN-1718)
  • Resume crashed ohmypi agents + surface crash/readiness diagnostics
  • Honor ohmypi readiness timeout
  • Extend ohmypi readiness recovery
  • Wire terminal close-out lifecycle
  • Strip post-merge labels on close-out
  • Mark close-out pipeline terminal
  • Treat closed-out journals as terminal
  • Restore /conv URL when re-clicking an already-selected conversation
  • Reconstitute role tools: + mcpServers: as launcher flags (PAN-2090)
  • Inject role definitions as system prompt — Claude Code dropped --agent (PAN-2087)
  • Reuse daily UAT candidate branch
  • Reap orphaned inspect sessions
  • Route conversation message retry through the optimistic send path
  • Pin package name + version in release-notes install command
  • Copy readonly snapshot.recentActivity into mutable read-model field
  • Make frontend vitest config work in worktrees
  • Resolve frontend deps in worktrees
  • Use runner config loader for Vitest
  • Fix stale strike workspace setup
  • Restore pickup drawer tests
  • Put Pickup card on the live cockpit (IssueMissionControl), not dead IssueCockpitBody (PAN-2059)

Performance

  • Defer startup context sync off the critical path
  • Instrument boot timing to attribute slow startup
  • Compress landing images PNG/JPEG -> WebP (25MB -> 1.3MB)

Plus 370 internal changes (refactors, tests, tooling).

Breaking changes

  • None explicitly called out in commit subjects. Review the full changelog before upgrading across versions.

Install

npm install -g @overdeck/core@0.42.0

Full changelog