All releases
Release
v1.2.3
What shipped, in numbers
The numbers for this release have not been computed yet.
What shipped
The War Room release. The Milestones/Sprints ledger becomes THE Tickets Cockpit — the screen a delivery manager lives in: behind or ahead, what next, and why — one screen. Built as a ratified design bundle executed by a ten-worker wave in a single day, verified end-to-end by an integration walkthrough, and cut for the first customer pilot.
The Tickets Cockpit (War Room)
- The ledger renders all four levels — epic → milestone/sprint → umbrella → tickets — with honest cache-backed rollups, lit in production for the first time by the intel spine: one paginated open-ticket pass feeding ancestry, dependency edges, and planned dates (#4469, #4470).
- A health widget band answers "is my project behind or ahead" in one fixation: Behind (red ▮) · On Track (green ●) · Ahead (blue ▲) — sprints and tickets counted over ACTIVE work only, honest
—until data binds, and the numbers never move under any filter (#4475). - Standard PM English everywhere: every health, widget, and filter label reads the Behind / On Track / Ahead triad — zero Portuguese on the shipped screen, verified by an automated terminology gate (#4475, #4479).
- Dependency visibility lands on the ledger: blocked tickets carry a
⊘badge, the footer names each blocker and its state when the cursor rests on one, and the wide LANES · DEPS column lists blocker numbers — while the duplicated leaf status glyph dies, calming every row (#4477). - Select tickets with
x/X, batch-assign the selection through one chooser (A), fire the ticket under the cursor (w) or the whole fireable selection against the RAM cap (F) — decide and execute without leaving the screen (#4469, #4471, #4472). - A leaf-lane filter (
b) cycles All → To-do → Working → Done with truthful parent counts, an always-visible chip, and selection pruned to what's on screen (#4476). - Start waves from a sprint header (
W) exactly as on the board, and open the gantt scoped by the cursor (t) — an epic opens the new all-sprints lens you can descend into; a sprint opens that sprint's timeline (#4473, #4474). - The composed cockpit is verified end-to-end: the Volan 10-step walkthrough replays headless, the canonical screenshot set lands at all three breakpoints (plus NO_COLOR), a milestone-bound umbrella no longer renders twice, and the legend and footer degrade honestly instead of overflowing narrow terminals (#4479).
Bar & shortcuts
- The War Room takes the bar:
Wopens the tickets cockpit as a third white primary pill;kstays as a muscle-memory alias;O(Epics) moves off the bar with the screen unchanged;Ropens Release Notes; type-ahead labels stop truncating (#4536).
ACE rail & desktop
Aattach gets its full return path: leaving the inspect window tears it down and lands focus back where you were — completing the attach loop the previous release opened (#4535, #4482).- Switching projects — by click, Ctrl+K, or Alt+bracket — now always lands keyboard focus on the TUI, killing the extra click-or-Ctrl+J every switch used to cost (#4530).
- An intentional pre-PR stop no longer renders a false ✕ ERRORED row (#4500).
Fleet visibility
- Background agents become visible: an ACE-rail band plus a Workers-screen section project review-lease holders — vehicle, cohort, and out-of-band agents — with honest staleness notes instead of silence (#4498).
Launch lane
- Volan device-export onboarding ships as a runbook with an honest completion signal, and the Notion import path gains a dry-run diff report with QA sign-off (#4505, #4394).
- Identity/org linking lands its writer and org roll-up backfill behind a founder gate (#4499).
- A release cut now opens the next staging lane automatically, and worker spawn refuses a silent main fallback between cuts (#4534).
Fixes
- Stats records chip fits at 120×40, the Fleet Floor keeps its Done-table floor at 80×24, and a TransitionBus goroutine-leak de-flake lands (#4447); the Linux AppImage icon downscales to 512×512 so packaging stops rejecting it.