You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
decommission removes the record: the lifetime is ended, its receipts kept in the store for pruning, and reconcile is not-found until the next deploy #929
Decommission removes the record. After a decommission the lifetime is over: the fold yields nothing, reconcile is not-found (66, #756) as on a machine never deployed, and the next deploy opens a fresh lifetime. Removed means ended, not deleted (ruled 2026-09-23): the lifetime's receipts stay in the store, marked ended,
so history is kept; deleting them is pruning's (lane 13) and nothing else's.
Today
cmd/writ/writ/decommission reads the folded inventory, plans one graph per scope, unlinks what writ linked and
removes what writ copied (a target the user replaced is refused, never deleted), and writes a receipt whose removal
inventory the next fold subtracts. The files are removed well. The record survives as rows the fold subtracts --
a record that says "gone" by subtraction rather than a lifetime that ended.
After it, reconcile exits 66 not-found; upgrade has nothing to update and says so; deploy opens a new
lifetime whose record has no memory of the ended one.
A second decommission with no current lifetime is a not-found, the same 66, not an error and not a no-op
that pretends to have removed something.
Under kept snapshots, the ended lifetime's snapshots and refs/devlore/ refs are kept with its receipts, for pruning (#930); its links are removed. No unretained edit in a snapshot is ever discarded: decommission refuses a snapshot holding one until reconcile has retained it.
Amended by the owner's ruling of 2026-10-02, lifetimes are generations: writ follows git and Nix. It is stated in docs/architecture/5.1-reconciliation.md § Lifetimes are generations, recorded on #916, and its finding is open question 5 of lane 7's plan, docs/plans/task/926-scope-flag.md (#926). The lane's plan takes this up when the schedule reaches it.
Decommission decommissions. With nothing named it removes everything the record holds and the lifetime ends, asking first when interactive and proceeding under --unattended. --scope and project names narrow it, and a narrowed decommission writes a new lifetime without what it removed, keeping everything else. Today the command requires a project (cobra.MinimumNArgs(1)); this lane lifts that.
Activity
David-Noble-at-work commentedon Oct 2, 2026
Amended by the owner's ruling of 2026-10-02, lifetimes are generations: writ follows git and Nix. It is stated in
docs/architecture/5.1-reconciliation.md§ Lifetimes are generations, recorded on #916, and its finding is open question 5 of lane 7's plan,docs/plans/task/926-scope-flag.md(#926). The lane's plan takes this up when the schedule reaches it.Decommission decommissions. With nothing named it removes everything the record holds and the lifetime ends, asking first when interactive and proceeding under
--unattended.--scopeand project names narrow it, and a narrowed decommission writes a new lifetime without what it removed, keeping everything else. Today the command requires a project (cobra.MinimumNArgs(1)); this lane lifts that.