Skip to content

v1.40.0

Latest

Choose a tag to compare

@github-actions github-actions released this 27 Jul 16:36
7657f76

1.40.0 (2026-07-27)

Features

  • backlog: add BacklogItemEvent proto schema and WatchBacklogItems RPC (fd80654)
  • backlog: add backlogItemsSlice with normalized state and memoized selectors (92fa823)
  • backlog: add column-transition fade to Kanban board on live status changes (bf04a6a)
  • backlog: add flash-on-update visual treatment respecting prefers-reduced-motion (fc370b9)
  • backlog: add ItemChangePublisher interface and event-bus adapter (57ceff6)
  • backlog: add useWatchBacklogItems hook with idle-staleness backstop (d366c26)
  • backlog: configurable WIP cap + queued status for backlog work items (#199) (32405b1)
  • backlog: expose item ID + deep link, restore board detail pane (#216) (b7bfb30)
  • backlog: fade out list rows that leave the active filter live (Epic 6.3) (6da72a0)
  • backlog: implement WatchBacklogItems streaming RPC handler (00c49a5)
  • backlog: mount ConnectionIndicator across all backlog live views (36dabca)
  • backlog: PostToolUse git-drift steering hook for autonomous sessions (1ac4bbd)
  • backlog: progressive disclosure + session diagnostics for item detail panel (#208) (8b37535)
  • backlog: publish BacklogItemEvent from remaining mutation methods (9e39106)
  • backlog: publish BacklogItemEvent from TransitionBacklogItemStatus (36286d6)
  • backlog: report_pr_created MCP tool + orphaned-PR reconciliation backstop (547eeda)
  • backlog: seed an sdd PipelineMode and an opt-in default-selection flag (c2adbc7)
  • backlog: wire /backlog list to live WatchBacklogItems stream (6ab62d0)
  • backlog: wire /backlog/board to live WatchBacklogItems stream (be7f46c)
  • backlog: wire BacklogItemDetail to live WatchBacklogItems stream (241bdb6)
  • backlog: wire BacklogItemPanel to live WatchBacklogItems stream (31b774d)
  • events: add BacklogItemChanged event type and payload (ef2f9f7)
  • git-history-cutover: add 05-local-resync.sh for post-rewrite pull-down (63581ed)
  • session-list: add collapsible category headers (#211) (bc31485)
  • session: add workspace peer awareness across sessions (#215) (cce887b)
  • shell: stream shell tabs through the control-mode pipeline (716bd91)
  • skills: add git-history-cutover skill to drive the LFS purge runbook (0a7026b)
  • unfinished: rebrand to "Up Next" with backlog queue + GitHub issue import (#212) (2d8560f)
  • web: always stream log/warn/error to server, gate only console.debug behind toggle (30010bf)
  • workflows: add Simple/Advanced cron schedule widget (#218) (23ea31e)

Bug Fixes

  • backlog: add missing live-update flash to /backlog list rows (ab13ec2)
  • backlog: add missing readOnly prop to GateVerdictBox, backfill required mock fields (175e698)
  • backlog: check for already-shipped work before reopening a closed PR (365e98c)
  • backlog: check RemediationBlocked(bouncing) before renotifying no-verdict review exits (1b1fb20)
  • backlog: close remaining publish-hook bypasses on ItemSession mutations (902a8de)
  • backlog: darken InlineNotice's accent text/icon color for WCAG AA contrast (7013060)
  • backlog: debounce reconnecting->live flicker, announce status changes (3bbc99a)
  • backlog: eager-load ItemSessions so live events don't blank verdict/triage data (65c53b7)
  • backlog: give stuck review-role autonomous_stuck rows a remediation path (BUG-048) (36249ac)
  • backlog: guard commit/push staging against already-tracked scaffolding files (#206) (92c1c71)
  • backlog: harden TriggerReReview's diff/codebase-read path against a gone worktree (fee6ad2)
  • backlog: implement GitHub issue import + reachable Approve Plan action (#220) (2f3fe9e)
  • backlog: make main-sync a precondition of review, not a PR-fix side effect (4aca93c)
  • backlog: notify operator when reopen is blocked by a stale-but-alive work session (86665d2)
  • backlog: nudge work sessions toward isolated manual testing (6c8e788)
  • backlog: pin edit-mode buffered-update banner outside scrollArea (Epic 6.4) (cf37d10)
  • backlog: publish live event when ReconcileStuckItems transitions status (959715d)
  • backlog: recalibrate stale-session thresholds + durable rework-block trace (#219) (b2a12ea)
  • backlog: record status-change audit events on all mutation paths (#198) (5d6b41e)
  • backlog: refuse codebase-read review fallback to shared main checkout (BUG-045) (20eeaa8)
  • backlog: render queued/pr_pending/refining items on the kanban board (23d173e)
  • backlog: resolve any stuck reason on terminal status, not just autonomous_stuck/push_failed (#204) (a758b3a)
  • backlog: resolve orphaned push_failed rows on item completion (#203) (a5053cc)
  • backlog: restore status-change audit trail (events, triggeredBy, empty state) (#214) (c20be97)
  • backlog: show gate verdict in BacklogItemPanel (e71c06b)
  • backlog: show last review verdict read-only after item leaves review status (897d3de)
  • backlog: stop a fresh worktree's own base commit from reading as shipped (31fb6d4)
  • backlog: stop abandoned_review from burning its budget on respawns the bouncing gate will discard (d9aa2b5)
  • backlog: stop AutonomousDriver's orchestrator-inferred DONE from forcing premature review (#222) (03e6414)
  • backlog: stop flagging bouncing items whose PR already merged (e310108)
  • backlog: stop pr_pending items from losing their PR reference forever (b235f86)
  • backlog: stop the stuck-review liveness checker from starving review-gate sessions (b653b4f)
  • backlog: stop trusting a stale base-commit SHA as proof of shipped work (eda0e0e)
  • backlog: stop unprocessed-review-verdict sweep from renotifying the same dead session every tick (78f5bf7)
  • backlog: stop wasted rework cycles from two review-reconciliation gaps (3203fbe)
  • backlog: stop WatchBacklogItems hanging when nothing to report (3df0d29)
  • backlog: surface queued items permanently blocked by the planning gate (68f1c9a)
  • backlog: surface swallowed AutoReopenAfterFailedReview spawn+rollback failures (3b7f3ba)
  • backlog: unstick bouncing items whose code shipped without a PR (fdf3522)
  • backlog: update remaining TransitionBacklogItemStatus call sites for merged 5-arg signature (3b6efd6)
  • backlog: wire pr_pending_no_pr remediation action (df9f558)
  • gogitstore: replace direct exec.Command with safeexec.CommandContext (#223) (42808a2)
  • headless: surface swallowed ctx-timeout errors, revert bypassPermissions, add failure telemetry (#221) (2403d8f)
  • mcp: resolve terminal tool mutations against the live instance, not a fresh deferred-start reload (76c9076)
  • omnibar: bound worktree/session-create requests to fix indefinite hangs (#207) (3482017)
  • server: bind both loopback addresses on dual-stack hosts (9d3b455)
  • session: avoid tmux command-too-long failure on large claude prompts (219e4d9)
  • session: keep external tmux streamers in sync with shell lifecycle (187f9c4)
  • session: notify backlog lifecycle listeners on operator-initiated session stop (dd32916)
  • session: rate-limit backlog nudge retry on SendKeys failure (BUG-041) (b8763c6)
  • session: refuse to persist a worktree session's WorkingDir if it escaped the worktree (e67f85e)
  • session: split autonomous-driver turn injection into separate paste+submit writes (96a2d22)
  • session: use carriage return not newline to submit WriteToSession input (4d2fab6)
  • shell: fall back to capture-pane polling after early control-mode exit (d146b96)
  • terminal: fix xterm theme flip and unpainted rows beyond 80x24 (01cc299)
  • tmux: kill orphaned control-mode clients left over from a prior process instance (b6e76be)
  • unfinished: fix mobile sizing on Unfinished page and its modals (#210) (aa976a7)
  • unfinished: stop the scanner's watch list from growing forever (8fd954d)