Repository navigation
The CLI specification needs the remaining lifecycle and scope rulings, and 4.4 still describes removed types #766
Description
Feature: #834 — Help and reference: wrapped help, generated CLI docs, the specification
docs/architecture/10-command-line-interface.md is the CLI specification. It has been extended across
several days of design work and needs the remaining rulings placed, plus the sections that describe removed
or renamed code corrected.
Landed 2026-08-31
- §3.1 The lifecycle is named once — four verbs in both programs, no
statuscommand anywhere, reconcile
reports and repairs, reconcile is valid only after deployment. - §4.1
--scope— writ-only, repeatable, the five builtins with platform bindings, theLOCALAPPDATA/
APPDATAexclusion, data-skipped-instructions-refused, elevation per scope. - §11.1 Introducing a name and setting its value — segments and scopes as name-to-value maps, a key with
no value, a builtin's key as its override,varsfor template variables alone. - §8 the formatting rules; §13 two version numbers; §15 the per-app coverage table. (Landed earlier.)
Remaining
- §15's conformance table said
writ status; renamed, along with the other references that describe
the command rather than its history. - §1 was titled "Scope and principles", and "scope" now names an execution context. Retitled What
this governs, with a note saying why one document should not spend the word twice. - The reserved flag table in §4 did not list
--scope. It stays out — the table is the shared set,
and onlywritbinds--scope— with a paragraph saying so, because a reader comparing the table
againstwrit --helpwould otherwise find a flag it omits. -
4.4— the Mode Switch section deleted and its four dependent references corrected.
Moved to #762. Regenerating docs/cli/** is a consequence of renaming the command, so it belongs with
the rename in that plan's Phase 2 rather than here. Leaving it in this issue made #766 unclosable without
work it does not own.
Neighbouring documents, corrected in the same pass
2.4-hermeticity-guarantees.md— scope model placed; three "unconfined" claims corrected; the "Six Cells"
and "2×3 matrix" arithmetic generalized, since it assumed exactly two scopes.5.1-reconciliation.md— the reversion recorded, reconcile repairs,writ statusrenamed throughout.5.3-recovery-site.md— aRootReaderWritertest mode that no longer exists.4.4-root-path-triad.md— not yet corrected. §4 "Mode Switch" tabulatesconfinedRoot,RootReader,
andRootReaderWriter, all of which have zero occurrences in the tree, and line 79's diagram says
Abs() → abs (unconfined I/O). Open: rewrite the section as "there is no mode switch — one implementation,
a varying anchor", or delete it and renumber §5 and §6.
Related
#762 (the lifecycle and scope design this specifies), #765 (the config keys it documents), #755 (help
wrapping, landed), #743 (star's duplicate cli package, which keeps it outside this specification's reach).
Activity
doc(writ): place the lifecycle and scope rulings (#762, #765, #766)
Plan: the writ lifecycle surface — reconcile, scopes, and the vocabul…
doc(cli): the specification describes the code that exists (#766) (#767)