Repository navigation
v5.0.0
Zero-touch: what a run would stop to ask is asked before it starts. This is a major version
because a plan, a session and a script that starts runs each meet something that now refuses.
docs/releasing.md, §Upgrading to 5.0.0, is the full list.
Migration
- Three lint ids now fail a plan. F14
verification-empty-open: give every open phase's
§Verification a runnable command. F24gate-directive-missing: put a- **Gate-check:**line under
every*(GATED)*heading. F25: everyoutstandingrow in## Decisionsnames an owner, a known key
and a known state. Lint every live plan with the 5.0.0 scripts before a console runs it. phase-outcome.sh … blocked|needs-humanrequires--needs <key|class>. A 4.1.0 copy of the
script rejects the flag, so update the console and the plugin together.- A run started over HTTP must carry
resumeOnRestart,relayandaccounts(400 without them).
It is refused with 409 while a blocking decision is still open, a waiver is unacknowledged or a
probe fails. - Defaults and names moved.
delegateHumanGatesnow ships on andqa.exhaustedanswerswaive.
phase.tool-auto-grantedis nowphase.approval-auto-granted, andphase.resume-at-bootis now
phase.resume-automatic. - The relay needs
claude2.1.268 or later. Sessions that are not relayed run with
--permission-prompts nonefrom 2.1.259.
Added
- The decision manifest.
## Decisionshas seventeen keys; read it with
phase-graph.sh --decisionsand answer it withscripts/decisions.sh. - The run-start prelude. Four probes run before anything spawns: accounts, MCP servers,
credentials and a delivery channel.phase-console doctorruns the same probes by hand. - The policy table and ruling memory. Eighteen kinds of interruption are answered by default and
journalled.--rememberpromotes a ruling into the next plan, and the table is edited under
Settings ▸ Automation ▸ Policy. - The relay. A question a session asks is held for sixty seconds, then answered by rule, else the
recommended option, else the first. It is never answered on a deny-list match. - Honest sessions. Every stop sends SIGINT first, so turns and cost are booked. Every session
carries a turn cap and a dollar cap, and every automatic start names its door and counts against a
ceiling. - Honest waits. A declared wait longer than the console's budget is refused with the arithmetic
instead of being cut. Every resume checks that the session is not live, and an overdue clock at boot
is ruled on rather than fired. - Accounts at the wall. A credential an organisation refuses is retired for every console on the
machine. The run climbs to the next account, or parks the phase with one errand. - An off switch that stays off. Shut down lists what is running first, and Stay off holds every
later boot until it is cleared.phase-console sessions ingestrecords session presence with no
console up. - Delivery. A console with no device to notify says so, and an unattended start with no channel
asks for an acknowledgement. - Why a run started and what it cost, on every run and session page, reconciled against the run's
spend.
Changed
- The documentation describes all of the above —
docs/, the references,SKILL.mdand the
in-app guide, in English and Persian.