0.34.0
Cut on 2026-10-06. Status: beta. The terminal dashboard is renamed towpath (the bank path coaches cycle
along to watch and call to the crew): the binary is towpath, cox home, cox console and cox runs top open it,
and a coxtop alias keeps working until 0.37 (coxswain-dash #92, coxswain #244). The store is now the record of
every initiative and ticket: launches read from it and the chair exports work/ and intake/ from it on each tick.
towpath. The dashboard was coxtop through 0.33. The release assets are now towpath-<tag>-<target>.tar.gz,
holding both binaries; the alias prints one line saying it goes away in 0.37 and then runs as before. Past release
notes keep the old name.
The store holds everything. A one-time fill writes an initiative row for every initiative and fills tickets the store held without content; an epic launch reads its initiative from rows and exports the board before reading it; a chair tick that changed rows exports and commits work/ and intake/. Every export first fills the store from the files, so a decompose's fresh tickets are never deleted, and an export on a store it cannot read writes and deletes nothing. An intake whose initiative exists is stored as decomposed.
Lands that finish. A phase land updates a pull request that fell behind main and waits for its checks again; it re-reads a merge state GitHub has not computed yet and stops only on a conflict, a missing review or a draft; it reads the PR state from inside the repository; and it takes a task approved in an earlier run of the initiative into the land. The chair keeps relaunches off decompose-only local lanes, knows the quarantined state, posts a daily tier proposal to the inbox, and sends an intake whose decompose wrote nothing twice to the chair instead of decomposing it again.
Started, not yet wired. The parts of reverting a land that turns main red (the rule, its facts and the revert executor) and the notifier's core (off until a channel is configured) are on main; their wiring lands in 0.35. The release tool dispatches an install-proof workflow before merging the tap; until that workflow lands, the tap pull request is left open for a hand merge.
Upgrading from 0.33.0. Nothing migrates and the store schema is unchanged. Install towpath from the dash
release (the coxtop binary still ships), restart the chair loop with the tools venv on PATH, and run
cox route store-fill once if your store predates 0.34.
coxswain-dash
- The dashboard binary is
towpath, with acoxtopalias until 0.37 (dash #92).
coxswain-tools
coxopens towpath, falling back to a coxtop binary (tools #1430).- The store holds every initiative and ticket: store-fill, the launch export, and the chair's export tick (tools #1423, tools #1426, tools #1433); every export fills the store from the files first (tools #1434, tools #1435); an intake whose initiative exists is stored as decomposed (tools #1436).
- A land updates a PR branch that fell behind main (tools #1428, tools #1429), runs gh in the land's repo (tools #1431), re-reads an UNKNOWN merge state (tools #1432) and backfills task records from earlier runs (tools #1421).
- A relaunch never takes a decompose-only local lane (tools #1425); route knows the quarantined state (tools #1418).
- The chair tunes host lanes from stats and proposes tier changes (tools #1394).
- An intake whose decompose wrote nothing twice goes to the chair (tools #1419, tools #1422).
- The parts of reverting a land that turns main red (tools #1420, tools #1427) and the notifier's core (tools #1437), not yet wired.
- The extras CI job's Postgres takes a random host port (tools #1424).
coxswain (umbrella)
- The docs, README and manifest name the dashboard towpath (coxswain #244).
- The release tool dispatches an install-proof workflow before the tap merge and leaves the tap PR open when it does not pass (coxswain #243).