Skip to content

Latest commit

 

History

History
629 lines (570 loc) · 172 KB

revisions.md

File metadata and controls

629 lines (570 loc) · 172 KB

Revisions: the amendment history of the foundation documents

Kind: foundation companion; provenance, never argument. Not keyed, not in the kernel, and never inlined into a review prompt: the tables below state no rule about how the swarm works, so no reviewer reads them to judge a change. How to add a revision is the exception that proves the shape — it is housekeeping for this file, and the design obligation it serves is stated and enforced at conformance.md#amending-a-foundation-document, not here. Derived from: decision 74 — the revision chains that had accumulated in each document's front matter, moved here so what a reader hits first is the document's own claim.

What this file is for

Each foundation document records who amended it, when, and what the amendment changed. That record is an obligation (conformance.md#amending-a-foundation-document) and it is worth keeping. It is not worth reading before the document's argument, which is what the front-matter form made unavoidable: on conformance.md the chain had reached 28 clauses and 9,462 characters — more than a fifth of the reader's budget for the whole kernel — before a single rule was stated.

The obligation is unchanged. The location is not: a document's revision entries live in the table for that document below, one row per revision, and the document's front matter carries a pointer here instead of the chain.

How to add a revision

A PR that amends a foundation document adds one row to that document's table below, in the same change — the same "in the same change" obligation conformance.md#amending-a-foundation-document already states for a decision, a term, and a registered type. A row is three fields: the revision number, the pass that made it, and what it changed. A row whose field the source clause never carried reads — rather than an invention. If the change opened or ruled a decision, the register row in conformance.md is still the index; this table says only that the document moved and why.

Rows are append-only and chronological. A revision number is never reused. A pass that amends several documents adds a row to each document's table, under one number.

The next free revision number is established by a sweep, never by reading this file. The sweep is over the remotes — the maximum revision N on any open branch's copy of any document here — for the same reason conformance.md's decision numbering states it: concurrent branches assign numbers the file on your own branch cannot see. As of 2026-09-07 that sweep over all 92 open pull-request branches gives 68, so the next free number is 69, which the front-matter rollout takes; a later sweep the same day gives 69, and the several-instances pass takes 70. A sweep over the remotes on 2026-09-07 gives 72, so the decisions 76 and 77 pass takes 73 — one number across all four documents it amends, per the rule above. A sweep over every remote branch's copy of this file on 2026-09-07 gives 79, so the harness-non-exceedance pass takes 80 — one number across both documents it amends. A sweep over every remote branch's copy of every document here on 2026-09-08 gives 92 — the decision-86 ruling having taken 92 while this pass was being written — so the enforcement-point ruling takes 93, one number across both documents it amends. A sweep over every remote branch's copy of every document here on 2026-09-08 gives 96, so the decision-91 ruling takes 97, one number across both documents it amends. A sweep over every remote branch's copy of every document here on 2026-09-08 gives 98, so the retired-name binding pass takes 99, one number across all four documents it amends. A later sweep the same day gives 99 — that pass having landed while this one was being written — so the decision-98 ruling takes 100, one number across all three documents it amends. A sweep over every remote branch's copy of every document here on 2026-09-08 gives 100, so the decisions 96 and 79 pass takes 101, one number across all three documents it amends. A later sweep the same day gives 101 — the decision-73 pass having taken it while this one was being written — so the decisions 96 and 79 pass takes 102, one number across all three documents it amends. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-09 gives 105, so the decision-100 ruling takes 106, one number across all three documents it amends. The sweep is run twice — once before writing and once immediately before committing — because a sweep of open pull-request branches alone proved insufficient: two passes collided on one number this week, both having swept the branches and neither the pull-request head refs. A sweep over the same three sets on 2026-09-09 gives 107, so the decision-104 opening takes 108, one number across both documents it amends. A later sweep the same day, run twice over all 1,089 refs with the same result both times, gives 108 — the open pull request that had claimed 107 and 108 being visible to it only through the head refs — so the endeavour-naming pass takes 109, likewise one number across both. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-11 — 1,104 refs — gives 111, so the decision-101 ruling takes 114, one number across all three documents it amends (authority_model.md, conformance.md, and data_model.md). It had been written against 110, which the decision-93 ruling took on authority_model.md when ateles#899 merged; a number is never reused, so the rows renumber rather than the landed ruling moving. The same sweep gives the decision-105 opening 112 and the decision-106 opening 113. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-11 — 706 refs — gives 115, so the decision-106 revision entry, rebased onto main after being written against 113 (a number the decision-105 opening and the decision-101 ruling had since taken in the same range), renumbers to 116; the ruling it records does not change. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-15 — 1,172 refs — gives 117, so the decision-35 vocabulary pass takes 118, one number across all thirteen documents it amends. The sweep was run twice, before writing and immediately before committing, with the same result both times. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-25 — 920 refs — gives 123, so the harness-carriers pass takes 124, one number across all three documents it amends (harness_carriers.md, conformance.md, and status.md, the last recording it as a section of its own). A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-09-25 — 949 refs — gives 124, so the dynamic-workflows ruling takes 125, one number across all five documents it amends (conformance.md, data_model.md, vocabulary.md, work_model.md, and workflows.md); two later sweeps the same day, before each round of its sub-questions' rulings was written in, gave the same result. The same sweep gives 115 as the highest register row on any ref, so the ruling registers as decision 116. A sweep over origin/main, every origin branch, and every refs/pull/*/head ref on 2026-10-13 — 4,416 refs — gives 132 as the highest revision and 141 as the highest register row on any ref, so the roles-as-slots ruling takes revision 133 and registers as decision 142, one number across the nine documents it amends (status.md, whose revisions are its own sections, aside). A sweep on 2026-10-13 over origin/main, every origin branch, and the head ref of each of the 20 open pull requests that touch docs/foundation/ — 502 refs, a narrower set than the 4,416 refs of the sweep above, which also counted every other pull-request head — gives 133 as the highest revision and 142 as the highest register row on any ref but this change's own branch, so the builder-never-reviews ruling takes revision 134 and registers as decision 143, one number across the ten documents it amends; the sweep was run again immediately before the change was published and gave the same result. A sweep on 2026-10-13 over origin/main, every origin branch, and the head ref of each of the 19 open pull requests that touch docs/foundation/ — 502 refs — gives 134 as the highest revision and 143 as the highest register row on any ref, so the conditioned-payment ruling takes revision 135 and registers as decision 144, one number across the eleven documents it amends (status.md, whose revisions are its own sections, aside); the sweep was run again immediately before the change was published. A sweep on 2026-10-20 over origin/main, every origin branch, and the diff of each of the 14 open pull requests that touch conformance.md — 1,010 refs and diffs in all — gives 145 as the highest revision, on a single branch that numbered its pass out of sequence, and 144 as the highest register row on any ref, so the application-on-an-instance pass takes revision 146, one number across the nine documents it amends (application.md among them as an added document), and registers as decisions 145 to 160 (decisions 158 to 160 on 2026-10-22, the rows after a later sweep found 157 the highest on any ref).

authority_model.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 claimant retired for lease holder
31 the memo-gap pass of 2026-09-06 decision 41 ruled here — write admission per entity type is default-deny, and the grant is the allowlist
34 the workflow-format pass of 2026-09-06 a required approver may be named by ownership of an entity the checkpoint's subject concerns
35 the consistency pass of 2026-09-06 the brief's Q1–Q8 and the raiser question registered as decisions 46 to 54; C13 marked settled by C9 and decision 37
36 the second workflow-format pass of 2026-09-06 a resolution on an operator_only action is the operator's decision and never the confirmation; the shared-instance approver cites decision 55
37 the testability pass of 2026-09-06 a parameter constraint on a write capability as a field allowlist — the mechanical half of minimization at capture; AWAITS resolves a role to principals
38 the rulings pass of 2026-09-06 decisions 46, 48, 49, 51, and 54 ruled here, and 50 and 53 in one half each — what owning confers; the counting rule; structural checks as reads over the checkpoint's principal edges, with the thresholds' home on the action_policy; initiative approval as the checkpoint; budget as an attenuating scope term; credit as a read model
39 the second rulings pass of 2026-09-06 decisions 47 and 52 ruled here, and the second halves of 50 and 53 — the raiser does not resolve, the operator's self-resolution marked; what stops is a task, confirmed through the checkpoint by the owner seat, proposing a grant capability; which checks and which metered resources are action_policy values, fail-closed where unwritten
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
70 the several-instances pass of 2026-09-07 decision 76 opened here — whether one operator's several instances of the record are one record or several, with the three questions it holds and the dispositions the operator named; no mechanism proposed and no term introduced
73 the decisions 76 and 77 pass of 2026-09-07 decision 76 ruled here — one operator's several instances are several records, not one, on the accountability ground; one identity per instance; an explicit binding whose ambiguity fails closed; the non-merge rule stated rather than left to a component's discipline
80 the decision-80 ruling of 2026-09-07 the tenant stated as a term of the grant for every principal in authority_model.md#grants, added to that section's rule list, with the ground and a pointer to the argument; the two places reserving decisions 79 and 80 to the operator narrowed to 79 alone, in authority_model.md#principals and in the several-instances ruling; the Tenant bullet's open set corrected from five decisions to four
67 the identity-scoping pass of 2026-09-07 derived from the operator's 2026-09-07 question of whether the identity model needs foundational documentation of its own: decision 75 opened and ruled — identity is answered here and in adapters.md, and no identity_model.md is owed; provenance, idempotency, and signature established from their own definitions as not identity questions; the inbound/outbound asymmetry stated as deliberate. No new term, no new type, no matrix row
81 the decision-86 ruling of 2026-09-08 decision 86 ruled — a capability names a tool as tool:<surface>:<operation>, one grammar for all five senses of the word, with param_constraints carrying the argument bound; the open subsection replaced by the rule, under a heading that states it. The one-grammar argument turns on invariants 6, 9, and 12: a second entry form is a second home for one bound, the differences between the five are differences of enforcement rather than of statement, and a record operation keeps its own capability rather than being re-expressed as a tool: op. Two reserved surfaces, harness and shell; filesystem reach ruled to be what those capabilities do rather than a domain beside them. tool:* expressible and refused at the write, tool:<surface>:* admissible where the surface is enumerable at check time, tool:shell:* admitted knowing its bound cannot be met. The parity test's two sides stated. An unnamed tool denied, with breadth written by enumeration so that "any possible access" stays expressible. docs/tool_grant_grammar.md ratified as the mapping's home. Decision 87's sequencing note rewritten from blocked to unblocked-and-open, with two of its dispositions sharpened by what 86 admitted

| 93 | the enforcement-point ruling of 2026-09-08 | decision 97 ruled here — the enforcement point for an agent's read and write to the record is the record's own admission check against the requesting principal's grant, and a proxy in front of the record is permitted and is never the enforcement point; the section reframed from reopened to ruled, with the three grounds (decision 56's standing ruling and its principle 6 rejection of the proxy, a refusal that needs no component alive, and the single point of compromise decision 96 names), what a proxy keeps stated as real and none of it enforcement, decision 95's three consequences kept as conditionals, the bearer-credential cost accepted, and a reopening condition; no term introduced and no mechanism added | | 94 | the decision-87 ruling of 2026-09-08 | decision 87 ruled here — a harness provides a principal only the capabilities its grant names, the configuration closed by default, the open subsection replaced by the rule under a heading that states it and opening with its three-rule list. Stated over the whole capability surface rather than its enumerable part, on the ground that a rule scoped to what can be listed is decision 41's rejected wildcard shape one level up; the argument drawn from decision 41's asymmetry (which is not a property of entity types), principle 5's direction, principle 7's Indeterminate, and principle 1 on why decision 42's parity test measures rather than binds. The non-enumerable harness admitted rather than refused, both cases argued: the refusal proves too much, since no harness the swarm runs could satisfy it and the reach would relocate rather than vanish, which is the failure decision 86 named one capability down; its use ruled to be itself a capability the reserved surfaces name, collapsing two of 86's dispositions into one act with decision 42's parity test as the check and no second mechanism (principle 6). Routing to a non-enforcing provider ruled a capability the grant names, so the router escalates nothing and an unnamed routing is capability_denied — capability_unavailable rejected on decision 60's own distinction, and the parity test shown not to catch it, since a provider that receives arguments and ignores them passes a comparison of two agreeing lists. The operator's intent to grant any possible access shown unnarrowed, since the rule constrains the relation between harness and grant and never the breadth of either. Costs accepted: an empty conforming set on landing, and the surface wildcard's bound unenforced until something mediates the shell. No term introduced and no mechanism chosen; the provider's enforcement declaration named as a mechanism this ruling requires and is barred from picking | | 97 | the decision-91 ruling of 2026-09-08 | one clause in What a proxy is still for reworded — resolving which instance a request reaches is the routing need decision 91's several-instance case creates, no longer the need it leaves open, since that row is now ruled. The claim is unchanged; a proxy is still permitted and still never the enforcement point | | 98 | the forker retirement of 2026-09-08 | the retired word removed from What the rule does not reach, and the same clause corrected: decision 82 is described as having retired the adjacent fork question rather than as still asking it | | 102 | the decisions 96 and 79 pass of 2026-09-08 | decision 96 ruled and argued here as authority_model.md#a-proxy-passes-through-the-agents-own-credential-and-holds-none-of-its-own — a proxy in the path presents the agent's own credential and holds none of its own, on decision 97's enforcement point at the record, invariant 9's one home for which principal made a request, and the unscoped blast radius 97 already named; the one-place-to-rotate benefit accepted as forfeited, routing and observability kept. Decision 97's Cost accepted forward reference updated from an open decision 96 to the ruling below it | | 104 | the credential-binding pass of 2026-09-09 | decision 101 opened and argued here as authority_model.md#what-the-credential-binding-carries-and-what-a-check-reads-to-resolve-a-credential-to-a-principal, beside authority_model.md#grants, whose staged-rotation rule is the sharpest of the three constraints the section names: the dual-admit window is a moment at which two credentials bind to one principal, so an edge that cannot express two live bindings makes that rule unimplementable. The section states the question, the three candidates and what each has to answer, and rules nothing; the question is the operator's | | 109 | the endeavour-naming pass of 2026-09-09 | one phrase in the decision-76 argument corrected: the plan a non-goal would rest on a fiction is laying the foundation, the whole endeavour, and not the cutover, which names the single instant at migration.md's stage 4c. The claim, its ground, and the ruling are unchanged; only the span the sentence refers to is now the span it means | | 110 | the decision-93 ruling of 2026-09-09 | row 93 moved from open to ruled — principle 11's heading states the invariant it is cited for and is left as written, its subject being state that needs a watchdog rather than state as such. The status cell states the three grounds: the heading's own grammar already carries the condition, so narrowing it would restate it twice; every citation of the principle across the corpus reads it conditionally and none categorically, so no text depends on the narrower form; and the conformance suite's PR-11 inspects the registered types for a named set of watchdog-requiring fields rather than for fields as such, which puts the descriptive task fields outside what the principle has ever tested. The cost accepted is that a heading's compression can be read past its subject, as it was once; what would reopen it is a second independent misreading or a citation that does read it categorically | | 114 | the decision-101 ruling of 2026-09-10 | the open section at authority_model.md#what-the-credential-binding-carries-and-what-a-check-reads-to-resolve-a-credential-to-a-principal rewritten from question to ruling: principal_binding carries credential_kind, credential_value, credential_issuer, and expires_at, one edge per credential, no separate credential entity, stated with the field vocabulary (AAuth (sub, iss) = credential_value + credential_issuer), the endpoint rule (an AAuth credential resolves to the agent; the acts-as binding's endpoint is the operator), and the resolver outcomes (Permit / Deny / Indeterminate). The prior open-question argument is kept below the ruling rather than deleted. This is one number with the conformance.md and data_model.md rows above and below, per this file's own one-number-per-pass rule; the row was missing here after the decision-101 revision renumbered 110 to 114 in the other two documents' tables and not in this one — the gap an adversarial review of ateles#916 found, authority_model.md's table jumping 110 to 115 despite this pass amending that document | | 115 | the decision-48/101 endpoint pass of 2026-09-11 | the counting-rule ruling amended to name the acts-as binding rather than "the principal_binding", which named both edges once decision 101 made them two with different endpoints, and a paragraph added stating which of the two the rule reads and that reading the AAuth edge instead would count the agent — the attack the section exists to prevent. Two open questions stated in place rather than answered: what the acts-as edge carries and whether it is presented at all (decision 107), which the field table cannot map because no kind is named for that edge; and which endpoints an acts-as edge may take (decisions 108 and 109), the corpus describing only the agent-to-operator case while the declared endpoint is the generic principal | | 118 | the decision-35 vocabulary pass of 2026-09-15 | the binding substituted to vendor_binding where the roster-versus-binding split is stated; no claim changed | | 126 | the credential-rotation-split pass of 2026-09-26 | authority_model.md#grants's rule list gains a bullet — a swarm-run rotation verifies with a live check before retiring the old credential, and rolls back if the check fails (register decision 118, the operator's) — and the body paragraph following "rotation is staged, never a flag day" states it in full: what the check is against, that a failed or unrunnable check is a rollback and not a hold, and that either outcome is written to the record rather than approved in advance. No change to the dual-admit rule itself | | 134 | the builder-never-reviews ruling of 2026-10-13 | decision 143 extends decision 49 to a pair read over the verdict, not a checkpoint: the agent that built an artifact never signs a review step on it, read on the agent's own binding and so the one pair that does not apply decision 48's counting rule; decision 48's section points to the exception; the extension of decision 49 attributed to a default applied by consistency and not to the operator's ruling; prevent-self-review noted as applying to the pair | | 135 | the conditioned-payment ruling of 2026-10-13 | decision 144 applied: the list of exceptions to decision 48's counting rule gains the payer and verifier of a payment released without a checkpoint, read on the agent's own binding as decision 143 reads its pair, and the tuple's conditions row names a payment's per-payee cap; the decision 143 note rewrapped, its over-long sentence split across lines; the payer and verifier check is stated with its operands, the prepare signer and the roster's pay principals at the first evaluation and the presenting credential at the take, and with the verifier holding none of the payer-slot leases; the decision 144 paragraph labelled as a default applied by consistency with decision 143 that meets the reopening clause of decision 49 again | | 146 | the application-on-an-instance pass of 2026-10-20 | three sections added: a client's staff member as an operator of the instance scoped by grants (decision 146, ruled); the acts the design reserves to the operator held by the instance owner alone with no grant extension (decision 158, ruled 2026-10-22, which amends decision 47's self-resolution exception), with the instance owner defined apart from ownership_grant; and an application that resolves checkpoints and holds no approval state, with the edit-and-approve gesture bound at the record (decision 147, ruled); decision 47's section carries a marked amendment narrowing its exception to the instance owner; the edit-and-approve text no longer treats authoring an edit as raising its checkpoint; the rules lists gain the entries; round 3: the instance owner mark gets a record-level admission rule (only a principal already carrying it sets or clears it; sync, reissue, merge, split, and principal_binding never do; the last mark cannot be cleared), the paths to an owner's identity and ownerless recovery are named, the halt and per-payee cap rows are marked ruled (decisions 159 and 160), a reading rule for "the operator resolves" is added, and decision 47's heading and sentence say the instance owner |

adapters.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 open decision 35
31 the memo-gap pass of 2026-09-06 the source is kept, not only named
34 the workflow-format pass of 2026-09-06 a system whose delivery surface is a local filesystem is admitted through the same contract; open decision 45 — whether the host a daemon runs on is an external system
36 the second workflow-format pass of 2026-09-06 a merchant is a system of its own and a purchase its class, under Admitting a new adapter; open decision 55, whether a second instance of the record is an external system
37 the testability pass of 2026-09-06 the window declared on the binding and the per-window observation on the adapter's agent_session; a credential-less outbound operation is a denial, never a drop; the linkage section states what a verdict pins per kind
38 the rulings pass of 2026-09-06 decision 35 ruled as settled by the conformance suite — one binding type per external system, routing a field of it, the name and the substitution deferred to a vocabulary pass; decision 45 ruled — the host a daemon runs on is an external system
49 the event/signal/delivery pass of 2026-09-06 vocabulary.md#event cited where this document already used the word; one stray gmail.md anchor updated to the renamed section
56, rebased onto the checker-mechanism and self-awareness passes the peering pass of 2026-09-06 decision 55 ruled — a peer instance is the record, extended by replication, not an external system; the interim operator_only rule retired for eligibility, replaced by sync_peers; a pointer added to the governance-write question decision 55 does not settle
61 the rendered-interface pass of 2026-09-06 a system reached only through a rendered interface — no event API, no stable record identifier — admitted under Admitting a new adapter; identity and linkage answered by obligation 3, extended from the dedup key to external_id; coverage answered by revision 34's filesystem finding, transferred without change; read-back argued as real but partial, naming what it cannot establish; freshness needing no new mechanism; a read-time planted-positive instrument named for the case a delivery-based drop counter cannot catch, a layout change that returns zero rows and reports nothing; the outbound default left to the existing fail-closed rule rather than special-cased; no decision opened
65 the host-configuration pass of 2026-09-06 a seventh obligation for an external system's own configuration considered and rejected — the contract judges the mapping, and configuration extends obligations 1 and 6 instead, read at the admission task's arch review step; the case carried through in full is github.md's required host state
66, derived from the operator's 2026-09-06 14:44 memo on agent identities across external systems the agent-identity pass of 2026-09-06 the general rule that an agent's identity lives in the record and an external system holds at most a credential that binds to it; the asymmetry between a system that issues a per-agent credential and one that does not; the outbound mark required where attribution cannot be external; decision 69 opened and ruled — a per-agent credential is an obligation where the system issues one; the binding declared on the vendor_binding on decision 42's pattern; AAuth established from the corpus as one of the credential kinds authority_model.md#principals already enumerates, not a second identity system
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
77 the decision-78 ruling of 2026-09-07 decision 78 ruled — the instance of the record serving a swarm is an external system when the swarm operates it, and decision 45's action classes extend to the substrate; the classification stated as one of moment and not a relocation of the boundary, met on the boundary sentence's own next clause about what an operation can destroy; vocabulary.md#record's Not for clause tested limb by limb and its third limb held, no adapter reaching the record under the ruling; the write-ordering rule stated — the permitting verdict and the gate's decision before the operation begins, the completion after the instance answers again, nothing parked off-record in between; the incomplete-operation case ruled in both its forms, an instance that never returns and one that returns in a state the permit did not approve; the three rejected dispositions given their grounds
56 the peering pass of 2026-09-06 rebased onto the checker-mechanism and self-awareness passes: decision 55 ruled — a peer instance is the record, extended by replication, not an external system; the interim operator_only rule retired for eligibility, replaced by sync_peers; a pointer added to the governance-write question decision 55 does not settle
66 the agent-identity pass of 2026-09-06 derived from the operator's 2026-09-06 14:44 memo on agent identities across external systems: the general rule that an agent's identity lives in the record and an external system holds at most a credential that binds to it; the asymmetry between a system that issues a per-agent credential and one that does not; the outbound mark required where attribution cannot be external; decision 69 opened and ruled — a per-agent credential is an obligation where the system issues one; the binding declared on the vendor_binding on decision 42's pattern; AAuth established from the corpus as one of the credential kinds authority_model.md#principals already enumerates, not a second identity system
83 the deployment-target pass of 2026-09-08 derived from the operator's 2026-09-08 memo on deployment targets and teardown scope: decision 90 opened and ruled — a deployment names a target host and the instance of the record it will read and write, deploys a companion instance where it names none, and names its recovery path off the host it deploys to; the teardown guard stated as a property of the teardown rather than of the gate; deployment kept as the single name against installation; decision 91 opened, on the several-instance case
96 the decisions 81 to 83 pass of 2026-09-08 derived from the operator's 2026-09-08 memo. The decision-90 ruling's What this leaves open extended with the first disposition the operator supplies for decision 91 — several instances of the record with one controlling — recorded and not ruled, with the terms a ruling still needs named; no rule changed
97 the decision-91 ruling of 2026-09-08 decision 91 ruled here in a section of its own — a deployment naming several instances of the record names one as its controlling instance, the mark is a parameter of the deployment and not a property of any instance, and a deployment naming several and no controlling one fails closed. The scope stated as the narrow reading of two the question bears, on the asymmetry that narrowing later is a breaking change and widening later is not, with the wide reading named so a later widening amends a stated scope; argued from decision 55, which keeps every named instance fully the record, and decision 86's shape one level up. The deployment-side mark argued from principle 11 and from decision 90's own reason for making the host a parameter, with the relative-to-a-deployment consequence accepted and the two-deployments-disagreeing case ruled to need no refusal. The no-controlling-one case ruled to decision 76 rather than decision 90's companion rule, whose scope is stated here as a deployment naming no instance at all, so 90 is clarified and not contradicted; the first-named default rejected as the resolution 76 refused by name. Decision 90's What this leaves open replaced by a pointer to the ruling, and its recorded-not-ruled paragraphs retired into it. No term introduced and no type registered
98 the forker retirement of 2026-09-08 the retired word removed from decision 90's What would reopen it; the hypothetical it states is unchanged, an operator standing up their own instance being what the clause already meant
100 the decision-98 ruling of 2026-09-08 decision 91's What this leaves open corrected: 98 is no longer untouched, and the half that remains open is now decision 99. The ruling this clause states is unchanged
108 the decision-104 opening of 2026-09-09 derived from the operator's question on the record's standing for external state: the reader-reliance question stated where the sourcing, coverage, and freshness rule is argued, adjacent to it and without ruling — what a reader who is not a step may conclude from finding an artifact in the record, the three candidates (the scoped claim made explicit, a completeness guarantee, and coverage surfaced at every read surface) with what each owes principles 1, 5, and 11, the observation that calendar.md already asserts the scoped claim in passing while citing as its home a section carrying only the definition of coverage, and an explicit note that neither the cadence question nor the step's declared freshness is reopened. One asymmetry registered as an inference the corpus has not written down: a lost read is a coverage gap a later read can sometimes close, a lost inbound approval is not recoverable by reading the system again. A fourth candidate added in the same revision on the operator's argument, in a different register from the first three: incorporation, adapter-sourced material becoming typed entities and edges rather than only artifacts, which leaves the record's claim untouched and changes what is there to read. Its section states the case of a digested archive of correspondence surfacing contact and company entities to steps not doing mail work, the structural unavailability that distinguishes it (a reader who does not know a thing exists cannot ask for it), invariant 1 as its support, what it composes with in data_model.md#record-conventions, and its cost — extraction is a judgement, a wrong one is a durable false fact, and Art. 9, calendar.md#what-this-adapter-refuses, and decision 39 each bound what may be extracted
118 the decision-35 vocabulary pass of 2026-09-15 decision 35's name taken and substituted: the one binding type is vendor_binding, channel_config retired into it, argued from invariant 6 (vendor_binding already spans the code host, the rails, and decision 42's harness slot; a code host is not a channel) with the awkwardness of vendor for the host accepted as the cost. The distinguishing rule the ruling's reopening condition asks for written as its own section: a binding addresses an external system the swarm does not own, a deployment_configuration carries out and verifies a procedure on the swarm's own software, a verification target being the mark of the second; with the thin case — the host, which has both — ruled by the same test. Decision 90's and gains no third name for it clause struck as contradicting its own next paragraphs, in a subsection stating what the amendment does not change: all three of decision 90's rules, the teardown guard, and deployment as the single name stand. The two names remain only where decision 35's section states the question it was opened with and the evidence that settled it
126 the credential-rotation-split pass of 2026-09-26 the per-agent-credential obligation's Cost accepted clause narrowed: "provisioning is operator-only and out of band" now scopes to a credential an external system issues, with the swarm's own issue-and-consume case (its signing keys, its internal shared secrets) and the root-secret case stated beside it and pointed at adapters.md#aauth-is-the-internal-credential-not-a-second-identity-system and at authority_model.md's source-of-a-credential section (register decision 118, the operator's)
134 the builder-never-reviews ruling of 2026-10-13 obligation 2 gains the recorded actor: every observation that creates an artifact's record or creates or moves its head, an action confirmation included, records the actor resolved at delivery as the agent or the operator principal, as external only where the resolver returns Deny (no binding), or as unresolved for every other outcome, and the check that goes red on it, an expired binding recorded external included
146 the application-on-an-instance pass of 2026-10-20 three sections added and kept in step with the review: the direction of truth for a business record class as a field of its source's vendor_binding with a one-way cutover event (decision 151, ruled) and, under it, a held write applied at a cutover only if its row is unchanged (decision 157, ruled 2026-10-20); a client instance's minimal runtime and delivery independence from swarm coordination, with whose tenant the instance is (decision 148, ruled); and an environment as a separate instance with promotion by reissue of instance-independent writes (decision 150, ruled), each with the planted refusals a later suite change should add; the section's rules list gains the entries; the reissue order is read from the source instance's own record, and the instance-independent bound is labelled as carried from the issue's gap list

application.md

Revision Pass What changed
146 the application-on-an-instance pass of 2026-10-20 document added: what an application on an instance of the record is, where each of its parts lives (decision 145, ruled), how per-instance customisation composes, display labels (decision 149, ruled), module layout (decision 154, ruled), and installing and upgrading an application with an ordered list of what a new instance needs (decision 155, ruled 2026-10-20); the install list gains the instance owner's bootstrap-written first mark, the named policy classes reissued and left afresh, and a note that the order is dependency order and not run order

calendar.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 calendar_routing_config retired for channel_config, the binding type adapters.md names
37 the testability pass of 2026-09-06 refusal 1's mechanical half, the field allowlist on the grant
38 the event/signal/delivery pass of 2026-09-06 "Every inbound signal, and what it becomes" and its table headers, Linkage, Identity, and the disposition sentence renamed to event, matching github.md's and gmail.md's precedent; signal kept only in its ordinary-English sense
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
71 the substrate-lifecycle pass of 2026-09-07 decision 78 opened here, beside 45 and 55 — whether the instance of the record serving a swarm is an external system when the swarm operates it, and what writes the record of an operation that suspends the record; the four dispositions stated, none chosen, no mechanism proposed and no term introduced
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding in the scope line, the inbound table's untracked-calendar row, and obligation 7; no claim changed

charter.md

Revision Pass What changed
81 the charter pass of 2026-09-08 the document created — the purpose the corpus serves and the five objectives it decomposes into, derived from the README and docs/icp.md, placed as an authored companion beside the kernel rather than in it. Records the three delegation-audit findings rather than filling them: comprehensively is open at intake and admission but unstated at route; securely is stated as design and measured as checkout enforcement in status.md; autonomously has no rule that treats an unnecessary return to the operator as a defect
87 the charter pass of 2026-09-08 the document created, on main rather than on the stack it was drafted against; the operator benefits stated between the purpose and the objectives, each pinned to the objective that delivers it

conformance.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 the feedback entity removed from the direction-of-truth table in favour of the finding; scenarios_extended.md merged into scenarios.md; decisions 32 to 35 opened
30, 2026-09-06 the operator's 2026-09-05 22:02–22:13 memos on how tasks come into existence intake_rule registered in the direction-of-truth table, and decision 36 opened
31 the memo-gap pass of 2026-09-06 decisions 37 to 41 registered as ruled
33 — 2026-09-06: the conformance-suite design — conformance_suite.md, its keyed row, the rule-coverage check named as a contract, its direction-of-truth row, and decisions 43 and 44 opened
34 the workflow-format pass of 2026-09-06 decision 45 registered
35 the consistency pass of 2026-09-06 decisions 46 to 54 registered from authority_model.md's long-open questions
36 the second workflow-format pass of 2026-09-06 decision 56 registered
37 the testability pass of 2026-09-06 decision 56 registered; the decision-citations lint named as a contract and its syntactic rule stated under Phases and implementation state
38 the rulings pass of 2026-09-06 decisions 31, 32, 35, 42, 44, 45, 46, 48, 49, 51, and 54 moved to ruled; 43, 50, and 53 marked ruled in part, each with its open half stated; the ruled in part status value
39 the second rulings pass of 2026-09-06 36, 47, 52, and 56 moved to ruled; 43, 50, and 53 from ruled in part to ruled; the operator's review of 37 to 41 recorded; three rows open — 33, 34, and 55
40 the planning pass of 2026-09-06 planning_model.md keyed, with its direction-of-truth row; decision 57 opened, and 58 opened and ruled with 43, 47, and 56
44 the Human Inversion mapping pass of 2026-09-06 decision 40's register row flagged, not reopened, against a public essay series' contradicting claim; no decision opened or ruled
45 the ancestry pass of 2026-09-06 decision 61 opened, on where a planning level's ancestry expectation is declared
46 the session-reconciliation pass of 2026-09-06 decision 40's register row restated — the essay-contradiction flag narrowed to the real question, what a session-family entity is for and whether a verdict may reference one — reading (a) held, no decision opened or ruled
47 the priority pass of 2026-09-06 decision 61 reframed from a per-level ancestry expectation to a per-class default ancestor's storage location; decision 62 opened, on whether an instance may bind a claiming principal to "must" take the highest-standing claimable task
48 the rulings pass of 2026-09-06 decisions 57, 59, 60, 33, and 34 moved to ruled, on the operator's word; 40 and 55 left untouched — 40 under active reconciliation, ruled but flagged rather than open; 55 the operator's own product decision; decision 61's ruling drafted against the pre-reversal framing was superseded by the priority pass's reversal, before landing, and is not applied — 61 stays open as revision 47 reframed it; open rows after this pass are 55, 61, and 62
49 the vocabulary-standard pass of 2026-09-06 the amendment obligation for vocabulary.md added under Amending a foundation document, parallel to the decision-registration rule, cited from principles.md's new invariant 12
50 the minimization-recalibration pass of 2026-09-06 decision 63 opened and ruled — the harness transcript store registered; decision 64 opened, on its owner and shape; open rows after this pass are 55, 61, 62, and 64
— the rulings-61-62-64 pass of 2026-09-06 decisions 61 and 62 moved to ruled; 64 moved to ruled in part, its field-by-field-shape remainder kept open; 40 and 55 left untouched, both turning on the operator's own judgement; open rows after this pass: 40, 55, and 64 in part
55 the self-awareness pass of 2026-09-06 the kernel read as self-description, distinct from review, stated as a declared read a step may make; no decision opened — the reading is a use of the existing declared-read mechanism, not a new one
56, rebased onto the rulings-61-62-64, checker-mechanism, and self-awareness passes the peering pass of 2026-09-06 decision 55 moved to ruled — a peer instance is the record, extended by replication, not an external system; decision 65 opened, on what surfaces an inert governance-type sync write; open rows after this pass are 64 in part and 65
— the close-out pass of 2026-09-06, rebased onto the peering pass decision 64 moved from ruled in part to fully ruled: the field-by-field shape is schema authoring for the runner, not a register question, and its home is stated as migration.md#the-work-model, which already carried the conversation, conversation_message, and session_digest rows this closes into; no new decision opened; open rows after this pass: 40 and 65
— the register-reconciliation pass of 2026-09-06, rebased onto the close-out pass no decision opened or ruled; decision 40's status label corrected from ruled to ruled in part to match its own row text, and its dangling "carried as F27 below" pointer — no such finding exists in gates_and_workflows.md — repointed to the actual paragraph; open rows after this pass: 40 in part and 65
59, 2026-09-06, rebased onto the register-reconciliation pass the decision-65 ruling decision 65 moved from open to ruled — the engine's existing write-back read extended by one field, the no_credential reason class named, no new carrier invented; open rows after this pass: 40 in part
61 the rendered-interface pass of 2026-09-06 adapters.md#a-system-reached-only-through-a-rendered-interface-is-admitted-the-same-way-and-three-of-its-five-rules-were-already-answered-by-the-filesystem-case — a rendered-interface adapter checked against the admission contract and found already covered by obligation 3, revision 34's filesystem coverage finding, and the existing fail-closed outbound default; no decision opened; open rows after this pass: 40 in part
62, on the operator's 12:57 memo — "it seems to me best that we have as detailed as possible documentation and only a condensed version for use cases that require it" the projection pass of 2026-09-06 decision 66 opened and ruled — what a review reads is a generated reading projection of these documents, extracted from conformance_suite.md's matrix and held equal by render_reading_projection.py --check; the two caps are re-aimed from the canonical documents onto the projection; projection reused under invariant 12 and "condensation" retired as a name for the work
63, 2026-09-06, derived from the operator's 2026-09-06 12:56 memo asking whether Ateles or Neotoma should prevent schema drift the schema-drift pass decisions 67 and 68 opened and ruled — four distinct failure modes named, two assigned to the substrate, one to the design, one with no design side; the type-registration amendment obligation added under Amending a foundation document, parallel to the decision and term rules; three testable substrate requirements stated under What the design requires of the substrate, regardless of who builds it; the ~70,000-row and raw_fragments carryover pointed at migration.md rather than restated; open rows after this pass: 40 in part
66, derived from the operator's 2026-09-06 14:44 memo the agent-identity pass of 2026-09-06 decision 69 opened and ruled — a per-agent credential is an obligation where the external system issues one, and the outbound artifact carries a mark where it does not; argued in adapters.md
67 the project-term pass of 2026-09-06 the possessive "the project's X" resolved to the owner each rule actually names — the action_policy to the instance, release_criteria to the context entity retrieved by type, a record_migration declaration to its scoped id — and decision 70 opened, on whether the project scoping key on workflow and batch is decision 57's planning level or a separate term sharing the word; no term added and none retired, instance and project both already carrying their senses
67 the underdetermined-inputs pass of 2026-09-06 decision 71 registered as ruled; the next-number line corrected to 72 and made an obligation of adding a row
67 the naming pass of 2026-09-06 : decisions 72 and 73 opened and deliberately left open — 72, whether verdict names its record neutrally when signed is one of its own three verdict values, argued in vocabulary.md; 73, whether a term should prefer a single word and what exception admits the qualified compounds invariant 12's no-overlap half depends on, argued under invariant 12 in principles.md. Both would execute as a corpus-wide rename of files other unmerged work is amending, so both are to be ruled and executed as one pass after those merge; 70 and 71 are assigned on those branches and left unused here. The stale "next number" line, wrong on each of the four occasions it has been checked, is corrected to 74 and given a standing caveat to read the table instead. Open rows after this pass: 72 and 73.
68 the decision-70 ruling of 2026-09-06 decision 70 moved from open to ruled — the project scoping key on workflow and batch and the planning level of decision 57 are two concepts sharing one word; the planning level keeps project, the key is renamed declaration_scope, and declaration scope is added to vocabulary.md under invariant 12's overlap half, swap-tested against instance, domain, and tenant; a project entry added beside it stating the planning sense and its Never for the scoping sense; migration.md's G20 restated — the word collision closed, the remaining question narrowed to whether an instance runs one declaration scope or several; the derivation of a task's scope left as a gap in conformance_suite.md with the ascent removed as a candidate answer
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
70 the several-instances pass of 2026-09-07 decisions 76 and 77 registered; 77 argued here, in conformance.md#scope's neighbourhood — a document outside the directory that six documents in it cite and two defer live decisions to
73 the decisions 76 and 77 pass of 2026-09-07 decisions 76 and 77 ruled; multi_tenant.md recorded as in the set in conformance.md#scope; conformance.md#a-document-the-foundation-defers-a-decision-to-and-does-not-contain rewritten as the ruling; multi_tenant.md section 7's five open decisions registered as rows 79 to 83
76 the task-assembly pass of 2026-09-07 decision 84 opened and registered as open — nothing distinguishes a task with no intake batch because it is being assembled from one intake has not reached; the number established by a sweep over every open pull-request branch, which gives 83 as the maximum assigned and 84 as the next free
78 the artifact-homing pass of 2026-09-07 decision 85 opened and registered as open — where an artifact a principal produces about an issue or a pull request lives, its own place on the host or a body several principals rewrite; the number established by a sweep over every open pull-request branch, which gives 84 as the maximum assigned and 85 as the next free
79 the tool-grant-grammar pass of 2026-09-07 decision 86 opened and registered as open — by what grammar an agent_grant capability names a tool, and therefore what the two sides of decision 42's parity test compare; argued in authority_model.md#grants as a subsection, since the grant is where the tool dimension lives and decision 42's own home argues where a skill's mechanics go rather than how a capability is written. Candidate mapping: docs/tool_grant_grammar.md (linked from the subsection and the register row; not yet ratified). The number was established by a sweep over every remote branch, which gives 85 as the maximum assigned and 86 as the next free; the same sweep gives 78 as this document's maximum revision for conformance.md. Opened rather than ruled because the four questions it carries — the surface half's breadth, the wildcard tier, the meaning of a grant on a non-enumerable provider, and the direction of derivation — each have a cost the design does not settle between
80 the harness-non-exceedance pass of 2026-09-07 decision 87 registered open — the general rule behind decision 41's default-deny and decision 42's parity test, on the operator's principle
30 — Revised for the operator's 2026-09-05 22:02–22:13 memos on how tasks come into existence (revision 30, 2026-09-06: intake_rule registered in the direction-of-truth table, and decision 36 opened).
56 the peering pass of 2026-09-06 rebased onto the rulings-61-62-64, checker-mechanism, and self-awareness passes: decision 55 moved to ruled — a peer instance is the record, extended by replication, not an external system; decision 65 opened, on what surfaces an inert governance-type sync write; open rows after this pass are 64 in part and 65
59 the decision-65 ruling 2026-09-06, rebased onto the register-reconciliation pass: decision 65 moved from open to ruled — the engine's existing write-back read extended by one field, the no_credential reason class named, no new carrier invented; open rows after this pass: 40 in part
62 the projection pass of 2026-09-06 on the operator's 12:57 memo — "it seems to me best that we have as detailed as possible documentation and only a condensed version for use cases that require it": decision 66 opened and ruled — what a review reads is a generated reading projection of these documents, extracted from conformance_suite.md's matrix and held equal by render_reading_projection.py --check; the two caps are re-aimed from the canonical documents onto the projection; projection reused under invariant 12 and "condensation" retired as a name for the work
63 the schema-drift pass 2026-09-06, derived from the operator's 2026-09-06 12:56 memo asking whether Ateles or Neotoma should prevent schema drift: decisions 67 and 68 opened and ruled — four distinct failure modes named, two assigned to the substrate, one to the design, one with no design side; the type-registration amendment obligation added under Amending a foundation document, parallel to the decision and term rules; three testable substrate requirements stated under What the design requires of the substrate, regardless of who builds it; the ~70,000-row and raw_fragments carryover pointed at migration.md rather than restated; open rows after this pass: 40 in part
66 — Revised by the agent-identity pass of 2026-09-06 (revision 66, derived from the operator's 2026-09-06 14:44 memo): decision 69 opened and ruled — a per-agent credential is an obligation where the external system issues one, and the outbound artifact carries a mark where it does not; argued in adapters.md.
83 — Revised by the write-readability pass of 2026-09-08 (revision 83, derived from the operator's 2026-09-08 stance on what a step may assume about a preceding step's write): decision 89 opened and ruled — argued in gates_and_workflows.md; the next-free-number line rewritten to state that a sweep of every branch's copy of the table establishes the number and that this line never does, after it went stale on a fifth consecutive pass.
84 the deployment-target pass of 2026-09-08 decisions 90 and 91 registered — 90 ruled, 91 open
85 — Revised by the task-liveness pass of 2026-09-08 (revision 85): decision 92 opened and ruled — a task is live when some principal could claim it now, claimable read over the backlog rather than from one principal's seat, with no term minted beside it; argued in work_model.md.
88 the verdict-rename pass of 2026-09-08 decision 72 ruled and executed — the record that closes a step is the verdict and the field it carries is the conclusion, sign-off and sign_off retired as names of the record; argued in vocabulary.md
90 the register-gap rollup of 2026-09-08 register rows 70 to 88 carried in, the register contiguous at 13-93; the multi_tenant.md move's nine vocabulary hits repaired rather than deferred; 12 citation state-claims reworded; decision 74 completed — every surviving front-matter chain moved into revisions.md
91 the register-narrative pass of 2026-09-08 the register's prose bound to its own table: the present-tense "The open rows: 72 and 73" — stale in both directions, 72 having been ruled by revision 88 while the table carried twelve open rows — reworded to read the status column rather than restate it, on the principle 9 grounds that already removed the next-free-number value; the register's dated statements left as the history they are; check_foundation_register_narrative.py added with fail-then-pass coverage and wired into the foundation-checks lane, closing the half of the register nothing read
92 the decision-86 ruling of 2026-09-08 row 86 moved from open to ruled, with the one grammar, the two reserved surfaces, the wildcard tiers, the parity test's two sides, and what an unnamed tool resolves to; row 87's blocking clause rewritten from not-implementable-before-86 to unblocked-and-still-open; row 80's sequencing clause rewritten from buildable-after-86 to buildable-in-full, its ruling untouched
100 the decision-98 ruling of 2026-09-08 decision 98's row moved from open to ruled, its question narrowed to the two halves ruled and the third split out; decision 99 registered as open, carrying that third half — whether the swarm has planning of its own
101 the decision-73 ruling of 2026-09-08 register row 73 moved from open to ruled — no single-word preference, the qualifier load-bearing, tested by dropping it — with the rejected preference and its three grounds recorded on the row; the naming pass's narrative updated to record that both rows it opened are now ruled and that the rename sequencing bound only 72, the ruling renaming nothing. The open set is read from the status column, not restated here (revision 91)

| 93 | the enforcement-point ruling of 2026-09-08 | decision 97 moved to ruled — the record's own admission check, a proxy permitted and never the enforcement point; decision 95's row noted as superseded by a ruling rather than by an open row, and decision 96's blocker corrected from whether a proxy is in the path at all to the deployments that put one there | | 94 | the decision-87 ruling of 2026-09-08 | row 87 moved from open to ruled — the closed-by-default harness, the non-enumerable harness admitted with its use as a capability, and the non-enforcing provider as a capability the grant names with capability_denied for an unnamed routing; the row's blocked-on scope changed from what nothing in the design says to decision 86, which supplied the grammar and created the tool:shell:* case this row judged; the pointer retargeted to the ruling's new heading | | 95 | the register-verb correction of 2026-09-08 | row 87's "the router performs no escalation" reworded to "the router widens nothing on its own account" — the escalate entry admits the verb and bans escalation as a thing that is raised, written, or counted, and the ruling's own prose in authority_model.md had already been reworded when revision 94 landed while the register's copy of the rule had not. The vocabulary checker's pattern requires a preceding verb, so it did not fire on this shape; the correction is the register matching the document it indexes, not a new claim | | 96 | the decisions 81 to 83 pass of 2026-09-08 | rows 81, 82, and 83 moved from open to ruled — 82 as a retirement of its own framing rather than an answer, 81 and 83 as belonging to the record's design with this corpus's requirement of it stated in their place; row 91 annotated with the controlling-instance disposition the operator's memo supplies, and kept open; row 98 added, per-instance planning records, open | | 97 | the decision-91 ruling of 2026-09-08 | row 91 moved from open to ruled — the controlling instance as where a deployment's governance writes go and nothing further, the mark on the deployment, and the fail-closed answer where several instances are named and none is controlling; the row's pointer retargeted from decision 90's section to the ruling's own heading | | 102 | the decisions 96 and 79 pass of 2026-09-08 | rows 96 and 79 moved from open to ruled — 96 to pass-through, a proxy holding no credential of its own, and 79 to a human slug with an immutable UUID behind it, the operator taking the lean the row itself recorded as his; row 96's blocking clause reworded from the open tenancy rows to the tenancy rows, all three having been ruled; both pointers retargeted from the sections that held the questions to the sections that hold the rulings | | 103 | the workflow-proving pass of 2026-09-09 | decision 100 registered as open — whether a newly declared workflow is proven before it binds production work, and against what. The row names the four mechanisms that bear on it and the two rules any answer is bounded by, and rules nothing; the question is the operator's | | 104 | the credential-binding pass of 2026-09-09 | decision 101 registered as open — what fields the credential-binding edge carries, and what resolving a credential to a principal reads. The row names the three constraints any answer is bounded by, the field set conformance_suite.md already proposes and marks as proposed rather than assumed, and the two ways stage 1 is unwritable as enumerated under either candidate | | 105 | the acyclicity pass of 2026-09-09 | decision 102 registered as open — whether acyclicity is a property of a relationship type or of the graph, and what the check does when a type is registered. The row names the two documents that assert the per-type reading, the contradiction that closed the seam on a different question, and the two of the design's own edges a type-blind check would reach | | 106 | the decision-100 ruling of 2026-09-09 | row 100 moved from open to ruled — proving conditioned on the blast tier the declaration write already resolves to, a declaration above some tier proven before it binds production work and one below not. The status cell states the three grounds (invariant 6's extend-the-mechanism test, what proving establishes that signing does not, and proportionality on the tier as the design's expression of blast radius), the proxy the ruling accepts, what would reopen it, and the three things it leaves open deliberately. The row's blocking cell reworded: the migration.md claim it put in doubt is corrected by this pass rather than made true | | 107 | the decision-103 opening of 2026-09-09 | decision 103 opened — whether a step's declaration is a floor or a ceiling, and whether it covers writes as well as reads. Registered open and deliberately unruled, with the three candidates (requirements only, an exhaustive declaration refused at runtime, and symmetry for writes without a ceiling), the asymmetry that prompted it (the floor binds at runtime and the ceiling only at review), and the absence of any write-side counterpart to reads_to_enter and reads_to_close. The blocking cell names decisions 41 and 94 as the outer bound the row sits inside rather than reopens, and decision 97's enforcement point at the record as what a step-scoped refusal would have to change | | 108 | the decision-104 opening of 2026-09-09 | decision 104 opened — what a reader of adapter-sourced state in the record may rely on. Registered open and deliberately unruled, with the three candidates (the scoped claim made explicit, a completeness guarantee no reader need supplement, and coverage surfaced at every read surface), and the four rules that bound an answer without settling it: principle 5 and the degraded-read rule against a claim no mechanism establishes, principle 11 against the stored form of it, vocabulary.md#coverage stating from the other side that coverage is not a conclusion on completeness, and principle 1 against a requirement on read surfaces that nothing checks. The blocking cell names the placement defect the question inherits, calendar.md asserting the scoped claim in passing while citing a home that carries only the definition of coverage. A fourth candidate added in the same revision — incorporation, adapter-sourced material becoming typed entities and edges rather than only artifacts — which answers what is there to read rather than what the record claims, makes no completeness claim, and turns on invariant 1 against a retrieval no reader is prompted to make; the row states what it owes, its bound, against Art. 9 for a third party, calendar.md#what-this-adapter-refuses, and decision 39's ruling that link attaches what a task names | | 109 | the endeavour-naming pass of 2026-09-09 | three phrases corrected where the cutover stood in for the whole endeavour rather than for the instant migration.md gives the word. In the decision-77 argument and in the prose above it, the two time-critical decisions are time-critical for laying the foundation; and in both places the key-minting clause now names the migration's stage 3, which is where grants are widened and credentials are checked, rather than a cutover, which is stage 4c and mints nothing. The decision-76 row takes the same correction. No ruling, ground, or pointer changes: the sentences said a longer span than the word they used names. Decision 100's blocking cell keeps cutover, where it cites migration.md#ordering-and-the-cutover-for-the-skills and that stage's own cutover batch | | 112 | the decision-105 opening of 2026-09-10 | decision 105 opened — where a credential comes from before the custody rules reach it, and what the swarm does when that source cannot be read. Registered open and deliberately unruled, with three candidates (a store named on the deployment as a parameter beside its target host, a per-vendor binding carrying its own source, and the design declining the question) and the four constraints that bound any answer: principle 5 on the unreadable store, custody by revocability already dividing credentials in two, invariant 9 against a second origin, and the dual-admit window binding the source as much as the grant. The blocking cell names decision 90 as the shape a store-as-parameter answer would extend, and distinguishes this from G17 and decision 101, which ask what the binding carries rather than where the value comes from | | 114 | the decision-101 ruling of 2026-09-10 | row 101 moved from open to ruled — principal_binding carries credential_kind, credential_value, credential_issuer, and expires_at, one edge per credential, with no separate credential entity. The status cell states the four grounds: the dual-admit window refusing any shape that holds one binding per principal, which eliminates the grant-as-binding candidate; that loading the existing type registers no fourteenth type where G26 makes registration one-way; invariant 6, since principal_binding already joins the two credential systems; and invariant 9 against the credential entity, which would give the value a second home during rotation. The section at authority_model.md states the rule, the field vocabulary (AAuth (sub, iss) = credential_value + credential_issuer), endpoint/expiry answers, and resolver outcomes (Permit / Deny / Indeterminate). data_model.md#relationships registers the writable principal_binding shape. The cost accepted is that a value on an edge is read wherever the edge is read, so custody by revocability now travels with the edge; and decision 105 is named as what this does not settle | | 115 | the decision-48/101 endpoint pass of 2026-09-11 | row 48's status cell amended to name the acts-as binding, with the reason it is that edge and not the agent's AAuth edge; decisions 107, 108, and 109 opened — what the acts-as edge carries and whether it is presented, whether an agent may hold one to another agent, and whether an operator may hold one. All three are endpoint-semantics questions decision 101 leaves unstated and stage 1's one-way registration does not close, since what it registers is the edge and its fields, not the vocabulary of kinds or a constraint on endpoints | | 116 | the decision-106 opening of 2026-09-10 | decision 106 opened — what a verdict on an issue is pinned to, and what a change to the thing it judged does to it. Registered open and deliberately unruled, with three candidates (the verdict carrying the body state it read, a derived staleness read, and the design declining to pin on an issue) and the asymmetry that motivates it: a conclusion that holds work is recoverable because the work does not proceed, while one that permits work is not, because nothing waits. The blocking cell names decision 72, whose pinning rule this asks whether an issue inherits, and github.md#issues, which already makes an issue an artifact and already handles issues.edited as an observation, so the state a pin would read exists and nothing reads it | | 118 | the decision-35 vocabulary pass of 2026-09-15 | register row 35 records the name taken (vendor_binding), the substitution landed, and the distinguishing rule that separates the merged binding from deployment_configuration; register row 90's blocking cell records the no third name for it clause as amended, with none of its three rules changed; the direction-of-truth row for external-system mapping names one binding type rather than two | | 121 | the task-assembly ruling of 2026-09-21 | decision 84 moved from open to ruled and was tightened after exact-head review: a workflow-entering task's creation boundary admits the task, intake batch, ADDRESSED_BY, and classify hold finding together; that finding is a persistent assembly exclusion through lease lapse, crash, and transfer; creation grants no lease, and only a declaration-resolved pm step owner may claim assembly. The aggregate-parent exemption remains outside claim and outside every workflow. draft and a dedicated edge remain rejected | | 124 | the harness-carriers pass of 2026-09-25 | harness_carriers.md registered in conformance.md#scope as an authored companion, not keyed and not inlined, with the reason it is not keyed yet | | 125 | the dynamic-workflows ruling of 2026-09-25 | decision 116 registered as ruled, the operator's: a task no declaration fits is carried by a workflow created for it and one that nearly fits waits for its amendment, never held for similar tasks; approval of a new or amended declaration split by blast tier; every task a declaration carries may improve it; no automatic retirement; promotion to core by the operator at five tasks, counted by planning's survey; an amendment removing or weakening a protection goes to the operator; the authoring task PART_OF the originating task's plan, its write carried by planning's amend; an improvement proposal an entity of its own; the last two closed as defaults applied by consistency — an originating task placed under a plan at classify, operator-only where none fits, and retiring a declaration holding a protection the operator's; nothing left open in the row | | 126 | the credential-rotation-split pass of 2026-09-26 | register row 118 added and marked ruled (2026-09-26, the operator's) — credential rotation split by issuer: the swarm rotates unattended what it alone issues and consumes, verified live before the old credential retires and rolled back if that check fails; a provider-minted key is minted by the operator with everything after minting the swarm's; a root secret stays the operator's outright; and a long-lived credential presented to an external system is superseded by a short-lived, per-session one from that system's own issuer. Argued in adapters.md#a-per-agent-credential-is-an-obligation-where-the-system-issues-one and authority_model.md#grants. Names decision 105 as what it does not settle | | 127 | the reference-workflows-and-no-core-promotion pass of 2026-09-26 | register row 116's narrative amended: superseded in part — decision 116's default (g) (a created workflow becomes core by the operator's decision at five tasks) and the matching survey-driven proposal step no longer hold, under the operator's 2026-09-26 ruling no_workflow_status_above_active (master plan ent_81aadb43caf2fa493361e8ed): a workflow's status is draft, active, or retired, with nothing above active. A companion ruling the same day (foundation_workflows_are_reference_designs_intake_is_core) holds that workflows.md's named workflows are reference designs an instance may seed drafts from, none live by default, with intake alone core because every task enters through it. Everything else row 116 settles is unaffected | | 129 | the planning-commissioning pass of 2026-09-28 | decision 119 added and ruled: per-level commission, pause, resume, and cancel actions write one superseding decision chain; planning records become valid DEPENDS_ON endpoints; the dependency-ready frontier, maximum safe parallelism, evidence-level completion, scope admission, interruption recovery, and stop conditions are derived through existing mechanisms; the decision-119 corpus checker is registered as a merge gate and bound to the six named normative clauses plus each PM-13 through PM-17 row, so phrase matches elsewhere cannot satisfy it | | 133 | the roles-as-slots ruling of 2026-10-13 | decision 142 ruled and registered: no role is foundational, so the design fixes no role list and owner_role is a slot each implementation fills | | 134 | the builder-never-reviews ruling of 2026-10-13 | decision 143 ruled and registered, with the operator's two rulings (the role that builds is never the role that reviews; distinctness is checked on the agent itself, not on interest) separated from the defaults applied by consistency; rows 48 and 49 point to it; row 142 loses the gloss that a deterministic runner invokes no model and states the declaration pair as the swarm's approval never being the proposer's | | 135 | the conditioned-payment ruling of 2026-10-13 | decision 144 ruled and registered: a payment resolved by its parameters is taken without a checkpoint only when the payee is known, the amount is the expected amount, the bank details are unchanged, the payment is under the per-payee cap, and a second principal verifies it; row 143's clause naming declared host automation deleted, since no adapter declares it; revised after review and the operator's three rulings of 2026-10-14 (the cap is inclusive; the two routes, this decision's and decision 127's, coexist with the stricter guard governing a payee under both; at most one release per payee per scheduled period and, with no schedule, between operator-resolved checkpoints), with the reference checkpoint defined once, the cap's provenance read from its permitting checkpoint, and the "narrower reading" claim corrected; rows 27, 48 and 143 brought into line; revised after the second review round: route membership by the presence of a cap entry, the period found from the engine's clock against dated windows, the reference checkpoint as the most recent closed one, and nineteen labelled author readings of which two widen | | 146 | the application-on-an-instance pass of 2026-10-20 | decisions 145 to 157 registered as ruled (155 to 157 on 2026-10-20), each row separating the operator's ruling from requirements carried from the issue's gap list; application.md registered in conformance.md#scope as an authored companion; two rows added to the direction-of-truth table (an application's composition on an instance, and the authoritative side of a business record class during a cutover); decision 158 registered as ruled (2026-10-22) and decision 47's and decision 146's rows corrected to say 47 is amended by 158; decisions 159 (halt) and 160 (per-payee cap) registered as ruled and row 158 notes which parts of its mechanism are derived | | 147 | the PR1129 ARCH consistency repair of 2026-10-23 | mechanical Decision 84 check now fails when the purpose summary contradicts atomic intake opening or when the parent scenario, PART_OF row, or WM-35 drops landing and applicable criterion evidence; no ruling changed | | 148 | the PR1129 aggregate-parent admission repair of 2026-10-24 | Decision 84 records immutable creator-time admission class as the aggregate-parent exception, including childless reads and fail-closed legacy classification. | | 150 | the trunk, CI budget, and acceptance proposal of 2026-10-27 | derived from the operator's 2026-10-27 direction to draft register additions after the delivery review: rows 162, 163, and 164 registered open, each with a recommendation, a stated default if never ruled, and no ruling: a row moves to ruled only through an explicit operator ruling recorded on it, never by the merge that drafted it; row 161 is left to the open pull request that claims it. A conformance row for decision 148, bounded to what that decision rules (an instance's delivery path), is recorded in status.md, not here | | 151 | the trunk, CI budget, and acceptance ruling of 2026-10-28 | derived from the operator's ruling in an interactive session on 2026-10-28, "as written": rows 162, 163, and 164 moved from open to ruled, each exactly as its own recommendation stated it; each keeps its rejected alternatives and drops its stated default if never ruled and its not-ruled-by-merging caveat, which the ruling discharges |

conformance_suite.md

Revision Pass What changed
38 the rulings pass of 2026-09-06 decision 44 ruled — a signed or blocking verdict requires a held lease by its signer; decision 43 ruled in its enumeration half — the bootstrap set is the thirteen-record table, every member read back; the rows that waited on decisions 31, 32, 35, 42, 43, 44, 48 to 51, 53, and 54 updated
39 the second rulings pass of 2026-09-06 decision 43 ruled in its second half — the operator's later governance write gated, self-resolved and marked, with 47; the rows that waited on 36, 43, 47, 50, 52, 53, and 56 turned mechanical; U-14 closed by 56
50 the minimization-recalibration pass of 2026-09-06 WF-16 updated for disclosure_lint; U-34 opened and closed in the same pass
57 the verdict-provenance pass of 2026-09-06 DM-28 added, the new session_digest edge decision 40 rules, required on an agent's verdict
58, 2026-09-06, derived from the operator's 2026-09-06 12:56 memo, via conformance.md's decision 67 the schema-drift pass DM-10b added — the substrate refuses a write naming an undeclared field, expected-failing until Neotoma satisfies it, distinct from DM-10's client-side read-back check
66, derived from the operator's 2026-09-06 14:44 memo the agent-identity pass of 2026-09-06 AD-39, AD-40, and AD-41 added — decision 69's per-agent-credential obligation and the shared-credential verdict's disposition, the outbound mark and its refusal, and the credential's home on the vendor_binding
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
58 — Revised by the schema-drift pass (revision 58, 2026-09-06, derived from the operator's 2026-09-06 12:56 memo, via conformance.md's decision 67): DM-10b added — the substrate refuses a write naming an undeclared field, expected-failing until Neotoma satisfies it, distinct from DM-10's client-side read-back check.
66 — Revised by the agent-identity pass of 2026-09-06 (revision 66, derived from the operator's 2026-09-06 14:44 memo): AD-39, AD-40, and AD-41 added — decision 69's per-agent-credential obligation and the shared-credential conclusion's disposition, the outbound mark and its refusal, and the credential's home on the vendor_binding.
99 the retired-name binding pass of 2026-09-08 WM-15's failure condition names the retired blocked status as retired, so the row states the retirement it tests for
118 the decision-35 vocabulary pass of 2026-09-15 AD-42 added for the binding/deployment-configuration distinguishing rule, testing the type separation and censusing which type each declared read resolves; deployment_configuration added to the context entities recorded as having no row in data_model.md#concepts; the binding substituted to the one name in rows 13, U-19, U-27, GW-53, FP-3, and WF-20, and in the bootstrap's context-entity list. Decision 35's quoted deciding evidence keeps both names, being a quotation
121 the task-assembly ruling of 2026-09-21 WM-14a tests the four-part workflow-entering assembly unit, persistent exclusion through lapse/crash/transfer, declaration-resolved PM ownership, and early-visibility, lease-deletion, and creator-auto-grant mutants; WM-31 and WM-31a distinguish an ordinary active hold from the creator-time, pre-lease assembly exception; WM-35 preserves the aggregate-parent exemption; WM-27 distinguishes intake creation from successor-verdict opening; WM-39 distinguishes ordinary workflow entry from assembly
129 the planning-commissioning pass of 2026-09-28 PM-13 through PM-17 added for control authority, blocked dependencies and independent parallel children, continuous planning versus forever recurrence, descendant effect evidence and scope admission, safe resumption, and refusal to close a parent with unmet criteria; each mechanical row names its mutant. PM-13 and PM-17 distinguish paused delivery work from the still-reachable live planning control task and require interrupted resume_plan to traverse its grant, owner seat, action gate, and confirmed read-back; the checker binds every row's own setup, action, and refusal cell
133 the roles-as-slots ruling of 2026-10-13 WF-2 restated against the new section (workflows.md#roles-are-slots-and-the-design-fixes-only-the-constraints-on-filling-them): the design fixes no role set and every named role resolves; bootstrap step 6 reworded to name the slots rather than two fixed roles
134 the builder-never-reviews ruling of 2026-10-13 GW-55 added: an agent that built an artifact signs no review step on it, with a cell for each of these refusals and exemptions: the builder's own verdict, an advance by another agent, by the operator, and by a routed remedy, unknown authorship (an unresolved actor, an actor absent from a head observation, an unreadable PRODUCES set), an external author, a binding rotated or ended before the head advanced, an artifact omitted from the pins, an artifact only the pins name, an optional step that opened, an undeclared class, waived, and the work and deterministic steps
135 the conditioned-payment ruling of 2026-10-13 PY-8, PY-10 and PY-12 restated so that no count of payments graduates one, the ceiling is a policy value, and a checkpoint carries the destination and any schedule entries; PY-16 to PY-21 added (the positive control, one refusal per condition, the bound on releases, the reference checkpoint, comparands the payer wrote, the absent cap, the verifier and its lease and order, the take-time re-read with the destination submitted as written, the money rules, and the unreadable condition), each refusal case changing one thing from the positive control and required to write a gate_hold checkpoint; the pol(...) fixture extended; WF-17's consent case extended; GW-41 restated so that the advisory path resolves a payment as held and only the enforcing path may release it; the period, route-membership, reading-home, concurrent-take, ordering and timed-out-checkpoint cells added to PY-10, PY-16b to PY-16g and PY-19
147 the PR1129 ARCH consistency repair of 2026-10-23 WM-35 plants a terminal-but-unlanded child and unmet planning criterion, and requires the derived parent completion read to refuse each until landing and effect evidence are present
148 the PR1129 aggregate-parent admission repair of 2026-10-24 WM-13 and WM-35 cover positive workflow peers, childless and last-child-removed parents, fail-closed classification, live/frontier exclusion, and nonvacuous completion.
152 the promised-edits pass of 2026-10-28 GH-19 added for decision 162's two planted refusals, WF-27 for decision 163's, WF-28 for decision 164's; X-12 notes that decision 163 leaves the closing condition it reads as it is

data_model.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 claimant and workflow policy retired; the checkpoint's reason classes cited from their one home
31 the memo-gap pass of 2026-09-06 REFERS_TO from a task to a record entity it concerns and from a verdict to what it read; the source kept in the record; what an agent_session is not
34 the workflow-format pass of 2026-09-06 the workflow row carries every field the declaration declares — applies_when, the read dependencies, freshness, and the two intervals
36 the second workflow-format pass of 2026-09-06 a step's two intervals may each be the task's due_date; the special-category mark on a registered type, and the three mechanisms that read it
37, the conformance suite's findings carried back into their homes the testability pass of 2026-09-06 the finding row; sign_off carrying its findings by edge, tasks_attached[], and the per-kind pinned state, SIGNED_BY → principal; DUPLICATE_OF; acceptance_criteria[] on the task; recoveries and lapse_cap on action_policy; rounds_cap and none_permitted on the declaration; the daemon's window observation; blocked retired as a status
38 the rulings pass of 2026-09-06 the verdict as the verdict's reconciled projection; a verdict's lease check as a derived read; the tool dimension on a grant's capabilities and the budget shape on param_constraints and delegation_edge.scope; quorum and disjoint_roles[] per class on action_policy; a host's process and checkout artifact kinds; what an ownership_grant confers; no credit, initiative, or proposal type
39 the second rulings pass of 2026-09-06 self_resolved on the checkpoint, decision 47; metered_resources[] per class on action_policy, decision 53; the governance types on the engine's grant alone, decision 56; the initiative-class constraint on a task write capability as the right to propose, decision 52; a work-model type in subject_types[] refused at the write, decision 36
40 the planning pass of 2026-09-06 the planning record and the decision rows; PART_OF from a task to its planning record and between levels; SUPERSEDES; the ascent as a derived read on the task
44 the Human Inversion mapping pass of 2026-09-06 a verdict's attribution stops at the agent and its version — the model or harness observed at the write is absent, and named as such beside vendor_binding, decision 42, and open decision 59, rather than added as a field
50 the minimization-recalibration pass of 2026-09-06 the broadened capture purpose stated in record conventions, and the special-category bullet marked as not reached by it
51 the transport-and-delivery pass of 2026-09-06 a paragraph added under Concepts stating why observation has no row of its own — not the finding/G15 shape, since nothing references it by edge — and why delivery is deliberately never stored, both already implied by existing rules and now stated in the one place a reader of this table would look
— the rulings-61-62-64 pass of 2026-09-06 decision 64 ruled in part — the runner as writer, any declaring step as reader, and the special-category mark's reach to the type per revision 36's F23; the field-by-field shape kept open as the row's remainder
57 the verdict-provenance pass of 2026-09-06 verdict and REFERS_TO gain a session_digest target, decision 40; the decision-64 note updated for the close-out pass's full ruling — session_digest's field list is schema authoring, not an open decision
58 the decision-70 ruling of 2026-09-06 the project field on the workflow and batch rows renamed declaration_scope, the scoping key distinguished from decision 57's planning level of the same name — vocabulary.md#declaration-scope
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
121 the task-assembly ruling of 2026-09-21 the task row's claimable read names the persistent assembly exclusion and its PM-only classify exception, separate from lease state; the finding row admits the creator-time assembly finding only in the atomic unit and derives its lease-independent exclusion
37 the testability pass of 2026-09-06 the conformance suite's findings carried back into their homes: the finding row; verdict carrying its findings by edge, tasks_attached[], and the per-kind pinned state, SIGNED_BY → principal; DUPLICATE_OF; acceptance_criteria[] on the task; recoveries and lapse_cap on action_policy; rounds_cap and none_permitted on the declaration; the daemon's window observation; blocked retired as a status
99 the retired-name binding pass of 2026-09-08 the task row names the retired blocked status as retired
105 the acyclicity pass of 2026-09-09 decision 102 opened and argued here as data_model.md#whether-acyclicity-is-a-property-of-a-relationship-type-or-of-the-graph, beside data_model.md#relationships, where the design's thirteen edge types are stated. The section records that the per-type reading is asserted in two documents and argued in neither, that contradiction X-15 closed the seam on the division of enforcement while taking that reading as its premise, and that FOLLOWS and ownership_grant are the two of the design's own edges a type-blind check would reach. It states the question and three candidates, and rules nothing
114 the decision-101 ruling of 2026-09-10 principal_binding relationships row amended from fieldless agent → principal / "the principal the agent acts as" to the writable credential-binding shape: endpoints credential (edge-keyed; no credential entity) → principal; fields credential_kind, credential_value, credential_issuer, expires_at; one edge per credential; derived read matches live edges on kind+value[+issuer] and takes the principal endpoint. Concepts-table principal relationships cell updated to name principal_binding as the edge that carries those fields
115 the decision-48/101 endpoint pass of 2026-09-11 the concepts-table agent row's principal_binding cell amended from the unqualified → principal to the two-edge shape the principal row already stated — the AAuth edge ending at the agent and the acts-as edge at the operator, told apart by credential_kind. The unqualified singular was the same latent ambiguity decision 48's ruling carried, on the entity row
125 the dynamic-workflows ruling of 2026-09-25 improvement_proposal added to the concepts table as a hand-authored row (decision 116): an entity of its own, PART_OF → verdict and REFERS_TO → batch, the relationship types a finding uses; the PART_OF and REFERS_TO rows name it as a source; no relationship type minted
129 the planning-commissioning pass of 2026-09-28 task and planning-record rows carry the existing DEPENDS_ON relationship in both task and planning-record shapes; planning control stays an immutable decision effect, while frontier, parallelism, and completion proof are derived and status/cursor/frontier fields are forbidden; the relationship table admits task and planning-record endpoints
133 the roles-as-slots ruling of 2026-10-13 the swarm_roster row notes that the role names are the implementation's own; no field changed
134 the builder-never-reviews ruling of 2026-10-13 the workflow row's steps[] gain class (review, work, or deterministic; absent reads as review); the verdict row's derived reads gain the signer-is-an-author refusal at the write and the omitted-artifact refusal, and the artifact row's gain its authors, read and never stored, external only for a credential with no binding and unresolved for any other outcome; no entity added
135 the conditioned-payment ruling of 2026-10-13 the action_policy row gains payee_caps[], with what the design reads from it and the cap the design does not supply; the action row gains the destination a payment submits, and states that the gate's reading is an observation and not a stored decision; the cap is counted by the checkpoint that permitted its write, and consent_tolerance is stated as not governing the unattended comparison of the amount; the action row names the engine's take-time reading as an observation on the action carrying a reference to each record read and the result for each condition, and the REFERS_TO row gains action → the records the gate read at its take
146 the application-on-an-instance pass of 2026-10-20 two concepts rows added: console_module (which holds no source of truth) and the display profile (display_profile, a provisional name until the record registers it); the principal row notes the provisional instance_owner mark on an operator; the self_resolved, waived, and payee_caps[] cells test the resolver as an instance owner
147 the PR1129 ARCH consistency repair of 2026-10-23 PART_OF derived parent completion now requires every child terminal and landed and applicable planning criterion effect evidence; no field or edge changed
148 the PR1129 aggregate-parent admission repair of 2026-10-24 The task row declares immutable admission_class; PART_OF and LEASE rows constrain parent targets and claims, and completion requires a current child.

failure_posture.md

Revision Pass What changed
35 the consistency pass of 2026-09-06 the merge action's class named merge_pr in the recovery table
29 the simplification pass of 2026-09-05 claimant retired for lease holder
31 the memo-gap pass of 2026-09-06 a condition of a batch is raised on one of its tasks, never on the batch
34 the workflow-format pass of 2026-09-06 rule 5's ceiling for a holding step, and the unclaimed-step interval, each named as a field on the step
37 the testability pass of 2026-09-06 the announcement path's own outage and the capture of last resort; the window observation; action_policy.recoveries; recovery paths and their cadence on the binding; lapse_cap; which checkpoints hold a task from claim; AWAITS names principals
43 the model-and-harness-routing pass of 2026-09-06 open decision 60 — a runner's lease-held step losing its model or harness mid-execution; the tier-eligibility half ruled as a consequence of decision 59
44 the rulings pass of 2026-09-06 decision 60 ruled in full — unavailability holds and raises under the existing lapse_cap, no second clock; capability_unavailable named as a reason class distinct from capability_denied
45 the underdetermined-inputs pass of 2026-09-06 decision 71 ruled — a required read that resolved to no instance raises underdetermined_inputs at hydration, before the step opens, and an input found but too thin to act on stays the step owner's judgement under decision 13
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
86 the reason-class enumeration repair of 2026-09-08 capability_unavailable, ruled a reason class of its own by decision 60, added to the canonical enumeration in Checkpoints on tasks: one queue, one protocol and to the recital of which checkpoints hold a task from claim, both of which had omitted it; no decision opened or ruled, and what the class means is unchanged
99 the retired-name binding pass of 2026-09-08 the checkpoint section names the retired blocked status as retired where it states what the status meant
118 the decision-35 vocabulary pass of 2026-09-15 the binding that names the announcement path substituted to vendor_binding; no claim changed
146 the application-on-an-instance pass of 2026-10-20 the refuse-resume-by-replay section states that a governance write applied to another instance is a reissue, a first take through that instance's own gate, and not a resume by replay; the halt section states who may invoke and who may lift a halt (decision 159, ruled 2026-10-22)

gates_and_workflows.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 workflow policy retired and its section renamed; hot path retired; the reason classes cited from their one home; open decision 32
31 the memo-gap pass of 2026-09-06 decisions 37, 38, and 40 ruled here — work reviewed on the record, closed work redone through intake, and what a step leaves at close; the governance types stated as one list in one home; the finding's unknown classification; the task_policy home for an operator-specific standing finding
34 the workflow-format pass of 2026-09-06 two declared intervals on every step, unclaimed_after and hold_bound; a planned wait as a step's own close condition held under decision 13; required coverage as the value of freshness; consent over several like actions as one presentation of several checkpoints; the governance class with no policy value named among what resolves to NEVER — .consistency pass of 2026-09-06 (revision 35: when the checkpoint a consent step carries is written, and what the gate evaluates at the take; the merge action's class named merge_pr)
36 the second workflow-format pass of 2026-09-06 a step's bound may be declared as the task's due_date; an operator_only action inside a workflow is taken by the operator and its step closes on the confirmation, never on the resolution; a read dependency on a special-category type carries no marker of its own
37 the testability pass of 2026-09-06 the finding as an entity the rules bind on; rounds_cap; the recorded amendment; an optional step's condition reads what exists; none_permitted; the floor-list sentence retired; open decision 56 — where the enforcement point for a governance write sits
38 the rulings pass of 2026-09-06 decision 32 ruled — the verdict stays a stored field, the verdict's own projection of its findings and its author, reconciled at the write
39 the second rulings pass of 2026-09-06 decision 56 ruled here — the sole-writer grant, the engine acting for the gate; the checkpoint's raiser and resolver never one principal save the operator's marked self-resolution, decision 47; the finding-as-entity settlement marked reviewed and upheld
40 the planning pass of 2026-09-06 the amendment to a planning record as the third named class of internal writes that are actions, amend_<level>; a lesson at a planning record's scope filed one level up
43 the model-and-harness-routing pass of 2026-09-06 open decision 59 — where a minimum model tier per action class or blast radius would live, should an instance choose to declare one
46 the session-reconciliation pass of 2026-09-06 two paragraphs added to the decision-40 section — "no session is persisted" is not what the ruling says, and a verdict may carry a REFERS_TO edge to the session or digest that produced it, proposed and not ruled
47 the rulings pass of 2026-09-06 decision 59 ruled in full — min_tier on action_policy, evaluated at the same take as blast, with the operator's values setting a floor only for irreversible classes: payments, sends, merges, governance writes; every other class unset
48 the event/signal/delivery pass of 2026-09-06 the host's review-token sentence renamed signal to event, matching adapters.md's own Identity rule wording; one gmail.md anchor updated to the renamed section
56, rebased onto the checker-mechanism and self-awareness passes the peering pass of 2026-09-06 a synced observation on a governance type is recorded and never takes effect — the reducer's tie-break ranking and decisions 41/56's admission together, no new mechanism; open decision 65, what surfaces an inert governance-type sync write, since neither a checkpoint nor a finding fits without stretching
58 the underdetermined-inputs pass of 2026-09-06 decision 71 ruled — a required read that resolved to no instance is not a failed read and raises underdetermined_inputs at hydration; sufficiency judged as presence here and as adequacy by the step owner under decision 13
59, 2026-09-06, rebased onto the close-out and register-reconciliation passes the decision-65 ruling decision 65 ruled — the engine's existing write-back read (principle 2) extended by one field to check for an unreconciled sync-sourced observation on the governance type it just confirmed, carrying the new reason class no_credential, written aggregated per window on the engine's agent_session in the same shape adapters.md's disposition rule already gives a drop; no new carrier invented
57 the verdict-provenance pass of 2026-09-06 decision 40 narrowed to a verdict's shape at close; the sentence claiming a session's turns are "not an entity the design has" corrected against decision 63; a verdict's REFERS_TO → session_digest ruled, required where the signer is an agent
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
56 the peering pass of 2026-09-06 rebased onto the checker-mechanism and self-awareness passes: a synced observation on a governance type is recorded and never takes effect — the reducer's tie-break ranking and decisions 41/56's admission together, no new mechanism; open decision 65, what surfaces an inert governance-type sync write, since neither a checkpoint nor a finding fits without stretching
59 the decision-65 ruling 2026-09-06, rebased onto the close-out and register-reconciliation passes: decision 65 ruled — the engine's existing write-back read (principle 2) extended by one field to check for an unreconciled sync-sourced observation on the governance type it just confirmed, carrying the new reason class no_credential, written aggregated per window on the engine's agent_session in the same shape adapters.md's disposition rule already gives a drop; no new carrier invented
83 — Revised by the write-readability pass of 2026-09-08 (revision 83, derived from the operator's 2026-09-08 stance on what a step may assume about a preceding step's write): decision 89 opened and ruled here — a step does not open until the write it depends on is readable by the principal that will execute it, stated as ordering and never as an interval, placed on the step's opening beside the hydration phase rather than on the declaration, because the reader is the only principal positioned to check it; principle 2's writer-side read-back is left untouched and is named as not covering the cross-principal case.
107 the decision-103 opening of 2026-09-09 the floor-or-ceiling question stated where the declared-reads rule is argued, adjacent to it and without ruling: what binds at runtime and what binds at review, that no counterpart to reads_to_enter and reads_to_close names what a step writes, the three candidates with what each owes invariants 1, 6, and 9, and an explicit note that the adapter's before-and-after topology is not reopened and that freshness qualifies a declared read rather than bounding an undeclared one
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding where the channel's reach and the context-entity-as-input list are stated; no claim changed
121 the task-assembly ruling of 2026-09-21 the sequencing recital distinguishes an intake batch opened in a workflow-entering task's atomic creation unit from a successor batch opened by a closing verdict
133 the roles-as-slots ruling of 2026-10-13 owner_role stated as a slot, with a pointer to the constraints any role set must satisfy; no rule changed
134 the builder-never-reviews ruling of 2026-10-13 the section The builder of a change never signs its review added: the operator's two rulings, the interest-level reading not adopted, the defaults applied by consistency, the declared step class, how authorship is recorded and read (an expired or ended binding recorded unresolved and never external), the refusal at the verdict write, what the signer sees, the waived verdict, the reference steps by class, what the rule does not decide (whether a digest is verified by an agent other than its author); class added to the declaration's field list
135 the conditioned-payment ruling of 2026-10-13 decision 144 applied: the gate's first evaluation and the take-time evaluation, and the note on the NEVER tier, state the one release of a payment on its five conditions; follow-ups to the builder-never-reviews section (decision 143): "What fires" states that an unclaimed step raises unclaimed_step where unclaimed_after is set and a step claimed by an author holds by its lease and ends in repeated_lapse, citing failure_posture.md; the defaults paragraph names the two bold rulings it follows in place of "the first two paragraphs"; the clause on declared host automation deleted, since no adapter declares it; a role described as naming a slot and not as being one; two over-long paragraphs rewrapped; the gate's inputs for a payment, the advisory path's restrictive branch, the bound on releases, the destination read once at the take, and the operator_only exception stated; the garbled sentence of the first-moment paragraph repaired; the bound's period found from the engine's recorded time of the take, named in the paragraph on the absence of a clock as the one place a release reads time, and the "one exception" hedged to this revision
146 the application-on-an-instance pass of 2026-10-20 step classes: customer reply review listed as review, and grounding_lint as deterministic; the waiver paragraph states that the operator principal who waives is an instance owner and that no grant extends the waiver

github.md

Revision Pass What changed
37 the testability pass of 2026-09-06 the host's assignment never writes assigned_to; impl closes on a mergeable pull request, stated in workflows.md
65 the host-configuration pass of 2026-09-06 what the host must be configured to be, ruled an extension of obligations 1 and 6 rather than a seventh obligation — the subscription reconciliation obligation 1's drop counter structurally cannot perform, and the host's merge-permitting configuration as the standing form of the permit the gate never issued; the required state per repository, and the reporting-permission row that belongs to neither obligation; open decision 69, whether a difference at admission blocks the grant or is a finding on the review step
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
78 the artifact-homing pass of 2026-09-07 decision 85 opened and argued here, in the outbound section's neighbourhood — the outbound table gives a step a row for editing an issue and a row for commenting on it and never says which a principal's own artifact takes; the four rules that bear on the question and the four dispositions, none taken
134 the builder-never-reviews ruling of 2026-10-13 the pull_request.opened and pull_request.synchronize rows and the git_push and open_pr outbound rows record the actor resolved at delivery, external only for a credential with no binding and unresolved for an expired, ended, or indeterminate one; a review row added for a verdict write refused because the signer is an author of the batch's artifacts
135 the conditioned-payment ruling of 2026-10-13 the pull_request.opened row states that the artifact is linked to the batch whose tasks it addresses as PRODUCES from the batch
150 the trunk, CI budget, and acceptance proposal of 2026-10-27 a section added arguing decision 162 (open): what is deployed is a commit on the default branch's history, judged on the commit and at the time of deployment with the ref as provenance, and a verdict binds a deployment only through the head that becomes it and only if the verdict and merge were recorded first; a size limit and a stale sweep stated as declaration data. The impl closing-condition sentence under Conditions that are not events gains a pointer to decision 163's finding, which does not hold the step
151 the trunk, CI budget, and acceptance ruling of 2026-10-28 the section arguing decision 162 marked ruled instead of open and as the argument for the ruling instead of a proposal; the pointer under Conditions that are not events names decision 163 as ruled. The follow-up edit to the release workflow's verify_deployed row is stated as a follow-up, not made here. No rule is changed
152 the promised-edits pass of 2026-10-28 the sentence stating that the release workflow's verify_deployed row was to gain the ancestry condition in a follow-up change now says it carries it, and the matrix paragraph points at GH-19 instead of a later change. No rule is changed

gmail.md

Revision Pass What changed
37 the testability pass of 2026-09-06 refusal 1's mechanical half, the field allowlist on the grant
38 the event/signal/delivery pass of 2026-09-06 "Every inbound signal, and what it becomes" and its table headers, Linkage, Identity, and the disposition sentence renamed to event, matching github.md's "Event and action" precedent; signal kept only where the design means the record's reading of an event
50 the minimization-recalibration pass of 2026-09-06 refusal 1 narrowed to a third party's Article 9 data, capture generous otherwise under the broadened purpose
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding in the scope line and the inbound table's untracked-mailbox row; no claim changed

harness_carriers.md

Revision Pass What changed
124 the harness-carriers pass of 2026-09-25 document added: the payloads the swarm needs inside a harness, the five carriers, the payload-by-carrier matrix marking each cell guaranteed, discretionary, not applicable, or unverified, the delivery ladder and each evaluated harness's rung, where each payload binds, and the dated measured constraints; consolidates plan ent_81aadb43caf2fa493361e8ed decisions carrier_design_docs, harness_delivery_ladder, and agent_skills_canonical_rule_index, with the others its front matter names
128 the Codex hook measurement pass of 2026-09-26 the Codex session-start-hook cell moved from unverified to yes and its derived rung from protocol beside a generated file to bundle with a hook after a controlled Codex CLI 0.153.4 run returned an opaque identifier supplied only by hook stdout; the measured user-scope install and the unobserved project-local path are recorded separately, and the Cursor question remains open

migration.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 gap G14 closed; workflow policy retired
31 the memo-gap pass of 2026-09-06 gaps G1 and G12 closed
32 2026-09-06 the skills leg — five classes of skill, the mapping of each to its target, stage 11, gaps G28–G31, and open decision 42
37 the testability pass of 2026-09-06 gaps G6, G7, G8, G11, G13, and G15 closed
38 the rulings pass of 2026-09-06 decisions 31 and 42 ruled — the merge form for a re-type, and a skill's harness mechanics split among the grant, a vendor_binding, and the harness's own configuration; gap G19 closed
39 the second rulings pass of 2026-09-06 leg one grants the governance types to the engine alone, decision 56
40 the planning pass of 2026-09-06 gaps G9, G10, and G31 closed by planning_model.md; the planning types' dispositions; the plan family mapped to workflows.md#planning
50 the minimization-recalibration pass of 2026-09-06 conversation, conversation_message introduced and registered, decision 63; session_digest's row marked registered and drift-carrying
— the close-out pass of 2026-09-06 decision 64 closed in conformance.md; the conversation, conversation_message row repointed from decision 64 "still open" to its ruled writer/reader/mark and its authored remainder; a new subsection, Session types: the field-by-field shape decision 64 left to the schema, states what must be authored, who owns it, what constrains it, and the existing rows it carries forward without restating their figures
57 the verdict-provenance pass of 2026-09-06 session_digest's row carries the zero-existing-edges drift decision 40's new REFERS_TO ← verdict edge leaves behind
58, 2026-09-06, derived from the operator's 2026-09-06 12:56 memo, via conformance.md's decision 67 the schema-drift pass G25 cross-referenced as the design-side symptom of the same missing registry read neotoma#1972's diverging relationship_type copies show; no gap number added, no figure restated
60 the undefined-term pass of 2026-09-06 a new section, Substrate field names the design reads and never adopts as terms, records user_id, sub, iss, conversation, raw_fragments, and reducer_config — six names cited across five or more foundation documents whose concepts the design already names, kept out of vocabulary.md so the design outlives the substrate's field names; no gap number added, since none of the six is a place the foundation fails to say what the migration needs
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
58 — Revised by the schema-drift pass (revision 58, 2026-09-06, derived from the operator's 2026-09-06 12:56 memo, via conformance.md's decision 67): G25 cross-referenced as the design-side symptom of the same missing registry read neotoma#1972's diverging relationship_type copies show; no gap number added, no figure restated.
106 the decision-100 ruling of 2026-09-09 one sentence corrected in the skills cutover: the cutover batch is the parity test applied to a procedure, and what the dual-run supplies is a fallback a brand-new declaration lacks. The clause claiming it is the same test the conformance suite runs for any declaration is deleted as false — the suite runs from zero against named fixtures and tests whether the engine enforces the design's rules, never whether a particular declaration does useful work. The stage's sequence, its dependencies, and its reversibility are unchanged
118 the decision-35 vocabulary pass of 2026-09-15 the retired channel_config → vendor_binding rename recorded as the design/implementation mapping this document exists to carry: a rename of a keep type, no field moved and no row rewritten, with deployment_configuration named as unaffected and distinct. The context-entity list carries one binding name rather than two
121 the task-assembly ruling of 2026-09-21 the batch-introduction row no longer treats a legacy task's absent intake batch as the current entry condition: new workflow-entering tasks get the batch atomically at creation, aggregate parents need none, and pre-existing executable tasks remain held under G24 until a governed carrying rule supplies a conforming admission path
127 the reference-workflows-and-no-core-promotion pass of 2026-09-26 "twelve core workflows" and "a core workflow of workflows.md" reworded to "twelve reference workflows" and "a reference workflow of workflows.md", following the operator's 2026-09-26 ruling that the named workflows there are reference designs, none live by default, with intake alone core; no claim about the population plan's phases or the skill-mapping table changes
133 the roles-as-slots ruling of 2026-10-13 the roster row points to docs/swarm_role_set.md, outside this directory, and says the roster and workflow-declaration entities govern over it; recorded late, in the follow-up that also restored the 133 rows for principles.md
148 the PR1129 aggregate-parent admission repair of 2026-10-24 Historical tasks without admission_class stay visible but cannot be claimed until creation evidence supports reconciliation; current child count is insufficient.

multi_tenant.md

Revision Pass What changed
73 the decisions 76 and 77 pass of 2026-09-07 moved into the foundation set by decision 77 (docs/multi_tenant.md → docs/foundation/multi_tenant.md, with history); given the decision-74 front-matter form and a pointer to this table; section 1's "current state" row and section 6.2's deferral trigger annotated against decision 76's ruling, with neither claim edited; section 7 noted as registered at conformance.md rows 79 to 83. Amendments before this one were made outside the set and are not reconstructed here
80 the decision-80 ruling of 2026-09-07 section 7 item 2 ruled and its argument added as multi_tenant.md#the-tenant-is-matched-on-the-grant-not-derived-from-the-subject — the grant as the whole statement of what a principal may do, the tool half that carries no subject, decision 76 tested and found not to settle it, the rejected alternative and why its cheapness is not a ground, what decision 79 still governs, the sequencing behind decision 86, and the backfill verdict; section 3.2's parenthetical alternative closed; section 7's header note corrected from five open to four
90 the register-gap rollup of 2026-09-08 the document moved into docs/foundation/, which subjects it to the vocabulary rules for the first time; the nine Never hits that surfaced repaired by substituting the term the vocabulary prescribes, changing no claim
91 the decision-86 ruling of 2026-09-08 the sequencing paragraph of the decision-80 ruling rewritten from ruled-now-buildable-after-86 to ruled-and-now-expressible-in-full: a tool capability being an ordinary entry of capabilities[], match_tenant scopes it as it scopes a record capability, and a shell or filesystem capability is now a capability there is something to scope. The ruling itself is unchanged
96 the decisions 81 to 83 pass of 2026-09-08 derived from the operator's 2026-09-08 memo. Section 7's items 3, 4, and 5 ruled, and its header note corrected from four open to one. Two arguments added: multi_tenant.md#every-instance-may-have-one-operator-or-many-and-hosting-does-not-decide-it, retiring decision 82's framing and settling section 3 as load-bearing; and multi_tenant.md#what-this-design-requires-of-the-records-sharing-model-and-of-an-operators-reach-within-it, ruling decisions 81 and 83 to the record's design and stating the two rules this design requires of it in their place, with the operator-is-not-a-tenant-owner challenge answered against the corpus's own text. Section 1's table and section 6.2's trigger annotated a second time, neither claim edited
98 the forker retirement of 2026-09-08 decision 82's retirement of the word carried into this document's prose: section 1's fork row, section 4's partition sentence, section 5's roster sentence, and section 6.2's trigger and its annotation now say operator or tenant. Section 2's closing clause — that a hosted multi-tenant deployment is what makes tenant isolation a requirement rather than a convenience — is dropped as falsified by decision 82 and the drop annotated in place. Decision 82's own argument keeps the word where it states what was rejected, on lines that name it as retired
102 the decisions 96 and 79 pass of 2026-09-08 section 7 item 1 ruled and its argument added as multi_tenant.md#the-tenant-identifier-is-a-human-slug-with-an-immutable-uuid-behind-it — the slug read in an AAuth subject and in operational output, the immutable UUID that pays off the rename cost rather than accepting it, and decision 80 as the load-bearing ground that keeps the slug an addressing convenience and never an identity source; section 7's header note corrected from one open to none, and its rules list given the ruling's link; decision 80's What this does not decide updated from a decision 79 that remains the operator's to one he has taken
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding in the fork row, the per-tenant configuration list, the per-human channels item, and the routing-target item; no claim changed

payments.md

Revision Pass What changed
36 the second workflow-format pass of 2026-09-06 a purchase or a booking with a merchant is out of scope here, being an effect on the merchant's system and not on a rail
39 the second rulings pass of 2026-09-06 the raiser-resolves and quorum pointers cite decisions 47 and 50 as ruled
40 the event/signal/delivery pass of 2026-09-06 the Purpose sentence, "Inbound: every signal a rail can produce," its two subsection headings, its table headers, and the Linkage rule renamed to event; signal kept only in its ordinary-English sense
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
135 the conditioned-payment ruling of 2026-10-13 decision 144 applied: the section A payment on known terms is taken without a checkpoint, and only on five conditions read from the record added; the composition table, the paragraph reading the mechanisms together, the second-gate paragraph, the outbound row, the recovery paragraph, the refusal, the row on the rails' recurring feature, and the drift row restated so that no payment graduates by count and the five conditions are the one release from the checkpoint; revised after review and the operator's three rulings of 2026-10-14: the reference checkpoint defined once, the cap read by the checkpoint that permitted its write, the bound on releases, the destination compared and submitted as one value, the second principal's operands and order, the gate's reading named as an observation, the two routes and the stricter guard, and the "narrower reading" claim replaced by which defaults widen; the stale destination list of decision 27 corrected; revised after the second review round: route membership by the presence of a cap entry and the two bounds shared, the period found by the gate from the engine's recorded time of the take against the dated window of each carried schedule entry, the bound counted from the engine's readings as one step per payee, the reference checkpoint as the most recent closed one by ingestion time, the checkpoint naming the condition that failed, the ordering times named as the engine's, the audit signature corrected for an unknown action, and the author's readings labelled and counted; the console document, outside this directory, gains gap G13 for a read over payments taken without a checkpoint
146 the application-on-an-instance pass of 2026-10-20 the cap section states that setting or changing a per-payee cap is the instance owner's only (decision 160, ruled 2026-10-22), the reference-checkpoint approval is granted per class, and the permitting checkpoint is an instance owner's

planning_model.md

Revision Pass What changed
45 the ancestry pass of 2026-09-06 the operator's question on missing ancestry — whether the swarm derives an absent parent, or finds the gap — settled against planning_model.md#authority-per-level-an-amendment-is-an-action-and-its-class-is-the-levels and decisions 17, 41, 51, and 52; judge's and route's defect lists extended by one item each, with no new step or type; decision 61 opened
47 the priority pass of 2026-09-06 the permissive orphan default reversed on the operator's argument that explicit ancestry serves both execution and prioritization — every task now expects an ancestor by default, satisfied at near-zero noise by a default ancestor per intake class rather than a finding on every orphan; the no-authoring refusal restated as the line the default and the refusal meet at; decision 61 reframed from a per-level expectation to a per-class default, still open and still blocked on decision 57
48 the rulings pass of 2026-09-06 decision 57 ruled — five levels, task → plan → project → strategy → mission, on the operator's word; objective settled as content within a strategy record and not a sixth level. Decision 61 not ruled: the priority pass (revision 47) reframed the question after this ruling was drafted against the pre-reversal framing, from "where a per-level ancestry expectation is declared" to "where an intake class's default ancestor is declared," and the reframed question is left as revision 47 stated it, still open and still blocked on 57, since ruling on the superseded framing would rule a question that no longer exists in that shape
— the rulings-61-62-64 pass of 2026-09-06 decision 61 ruled — the default ancestor named on the intake_rule, unblocked now that decision 57 fixes the levels
67 the project-term pass of 2026-09-06 decision 70 opened — project names decision 57's planning level and is also the scoping key on workflow and batch, and nothing yet says whether the two are one thing; the possessives that read the key as ownership are resolved to the owners the rules name, in this document and across the corpus
68 the decision-70 ruling of 2026-09-06 decision 70 ruled — two concepts share one word; the planning level keeps project, the scoping key on workflow and batch is renamed declaration_scope, and the section that posed the question now argues the ruling, with G20's global roster as the evidence a planning record cannot be the key and invariant 12 as what obliges the rename rather than a note; three existing terms swap-tested and rejected before the compound was coined
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
90 the register-gap rollup of 2026-09-08 decision 70's rename carried through — project names the planning level, and the scoping key on a declaration is the declaration scope
96 the decisions 81 to 83 pass of 2026-09-08 derived from the operator's 2026-09-08 memo. planning_model.md#whether-an-instances-planning-records-are-per-instance-and-how-a-swarm-reading-several-relates-them added, opening decision 98 — registered here rather than absorbed into the decision-82 ruling whose subject is the tenancy axis; states what decisions 76 and the cross-record collision rule already settle, and the two halves they do not reach
97 the decision-91 ruling of 2026-09-08 decision 98's second open half restated against decision 91 now being ruled: a controlling instance exists, so a candidate home for swarm-level planning exists, and what keeps the half open is whether the swarm has planning of its own at all — a home being available is not a record needing one. Nothing in 98 is ruled here
100 the decision-98 ruling of 2026-09-08 decision 98 ruled here in two of its three halves. The open section is replaced by a ruled one, promoted from ### to ## — it was nested under the operator-amendment gate, whose subject it is not. Planning records are per instance, argued as a consequence of the one-edge ascent, the collision mechanism, and decision 76 rather than as a choice; a declared read may name another instance, under explicit naming, a declared freshness, and admission at the named instance. The section states what it does not reach: the read is not a write, and decision 76's separation rule binds every use of the mechanism without forbidding it
129 the planning-commissioning pass of 2026-09-28 commissioning section added: authority and control decisions, dependency-ready frontier and maximum safe parallelism, continuous planning versus recurring delivery, descendant effect evidence, discovered-work admission, quiescence, recovery, and stop conditions; the earlier completion read strengthened from terminal descendants alone to terminal-and-landed descendants with criterion evidence. Pause quiesces delivery work while the live planning task remains reachable only for authorized resume_<level> or cancel_<level> control, including after interruption and without weakening grant, owner-seat, action-gate, or confirmed-read-back requirements
148 the PR1129 aggregate-parent admission repair of 2026-10-24 The commissioned frontier selects only workflow_entering task leaves.

principles.md

Revision Pass What changed
37 the testability pass of 2026-09-06 invariants 3, 6, 8, and 10 given their mechanical form — the named instruments, the singletons' closure, the citation lint, and "landed" as a derived read
44 the Human Inversion mapping pass of 2026-09-06 where the human sits, operator attention as the protected constraint, and the sovereignty reason for the owned record, stated beside the invariants; the cross-disciplinary rubric named as out of scope until P4
49 the vocabulary-standard pass of 2026-09-06 invariant 12 added, stating the operator's own standard for the vocabulary's size and overlap as a design invariant, generalizing the substitution test status.md revision 29 already applied to the term retired for review step in revision 19
57 the naming pass of 2026-09-06 decision 73 opened under invariant 12 — whether a term should prefer a single word, and what exception admits the qualified compounds the no-overlap half currently depends on, step owner and the three scope compounds among them; the parenthesized-object verb form and a structural defect in vocabulary.md's heading levels recorded with it. Opened, not ruled). Which mechanisms exist on a given checkout, and where nothing fires, is measured in status.md, not here.
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
82 — Revised by the autonomy-goal pass of 2026-09-08 (revision 82, derived from the operator's 2026-09-08 stance on the autonomy goal: decision 88 opened and ruled — the operator is involved wherever involvement is needed and nowhere it is not, bootstrap inside the rule; stated as a goal beside the invariants and not as a thirteenth invariant, since it is a test applied per return rather than a property every change holds; the attention paragraph qualified in scope rather than contradicted — it governs what a return costs, the goal governs whether it happens). Which mechanisms exist on a given checkout, and where nothing fires, is measured in status.md, not here.
101 the decision-73 ruling of 2026-09-08 decision 73 ruled — no single-word preference: a term takes as many words as the design's distinction requires, and no more, and the qualifier must be load-bearing, tested by dropping it and seeing whether what remains is already bound or no longer names the entry. Stated as the existing swap test applied to the qualifier rather than to the whole term, so the ruling names no exception and renames nothing. Invariant 12's closing block, which had carried the question open with its candidate collapses, replaced by the ruled test and the three grounds the preference was rejected on — hidden kinship across the task compounds, collision with bound point and gate and separation of duties, and the four scope compounds the no-overlap half itself depends on. The vocabulary.md heading-level defect kept as a recorded defect, with its counts remeasured: 136 ### headings, 41 multi-word, one non-term among them, so 135 terms and 40 multi-word
133 the roles-as-slots ruling of 2026-10-13 the review end's role list marked as example names of the reference workflows; no invariant changed; recorded late, in the follow-up that also restored the 133 row for migration.md
134 the builder-never-reviews ruling of 2026-10-13 the review end's role list drops pm, which is declared work, and states that a review step is one declared review, in place of the sentence that nothing distinguishes a review step from a working step; no invariant changed
135 the conditioned-payment ruling of 2026-10-13 the list of necessary returns excepts a payment released on its own parameters from the never-set, with no invariant changed

scenarios.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 walkthroughs (e)–(j) merged back from scenarios_extended.md, whose only reason to exist — a reading-block budget — no longer applied to a document that is not on the reading list
35 the consistency pass of 2026-09-06 scenario (j)'s garbled clause, left when lens was retired, repaired
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
121 the task-assembly ruling of 2026-09-21 scenarios (a), (f), and (j) distinguish a workflow-entering task's atomic intake creation from the aggregate parent's no-workflow exemption; scenario (j) states the assembly exception, its atomic unit, persistent hold, PM-only claim, and explicit intake predecessor node
147 the PR1129 ARCH consistency repair of 2026-10-23 scenario (f) prose and diagram apply the full derived parent completion predicate and show both incomplete branches
148 the PR1129 aggregate-parent admission repair of 2026-10-24 The aggregate-parent and ordinary intake scenarios show creator-time classification, childless persistence, and last-child removal.

telegram.md

Revision Pass What changed
37 the testability pass of 2026-09-06 every uncorrelated message from a bound principal is a task; the start-time binding is a cache with a declared staleness bound
39 the second rulings pass of 2026-09-06 the raiser-resolves pointer cites decision 47 as ruled
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding in the scope line, the chat-identity statement, the routing-belongs-to-the-binding statement, and the announcement-path cache; no claim changed

vocabulary.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 claimant, workflow policy, and hot path retired; the checkpoint reason classes cited from their one home; a code-era field removed from the Owner table
31 the memo-gap pass of 2026-09-06 the finding's unknown scope; what an agent_session is not for
34 the workflow-format pass of 2026-09-06 the two intervals on the step entry; where the set of action_type values lives
35 the consistency pass of 2026-09-06 the operator-facing agent defined by role; merge as an action-class name retired for merge_pr
36 the second workflow-format pass of 2026-09-06 a bound as the task's due_date on the step entry; the operator_only step; a rule keying on a field a step wrote; no marker on a read for a special-category type; decision 55 on the external-system entry
37 the testability pass of 2026-09-06 blocked retired as a task status; the terminal set declared on the type; the finding and sign_off fields; rounds_cap and none_permitted
38 the rulings pass of 2026-09-06 the verdict as the verdict's reconciled projection; a signed or blocking verdict written under a held lease; what owning confers; the counting rule and the thresholds' home on the quorum and separation entries; an initiative as a task by class; the host as an external system; a budget as a grant's and a delegation's scope term
39 the second rulings pass of 2026-09-06 the raiser never the resolver save the operator's marked self-resolution, on the approval entry; the right to propose as a grant capability and what stops as a task, on the proposal and reprioritization entries; metered resources and the engine's sole governance grant, on the grant entry; a rule naming a work-model type refused at the write
40 the planning pass of 2026-09-06 the planning-model section — planning record, planning level, ascent, unplanned, planning decision, planner, and the amend verb
41 the record-sense pass of 2026-09-06 the artifact definition and five other sentences that read "record" against an external system rephrased to "an entry an external system holds," closing the record Not-for collision; the Not-for scoped to a Never for docs/foundation/adapters.md and the five per-system adapter documents
44 the Human Inversion mapping pass of 2026-09-06 two term collisions with a public essay series disambiguated — reconciler as this design's projection-parity check, never the essay's adjudicating role, and replay as the essay's as-of-read sense, never this design's refused re-execution sense
47 the priority pass of 2026-09-06 the priority entry added, giving the term a home beside claimable as a derived read a principal consults and is never bound to obey
48 the rulings pass of 2026-09-06 decision 34 ruled — the pipeline entry replaced by engine, defined once; decision 33 ruled — the stage entry rewritten to authored prose only, with no steps[].phase field
49 the event/signal/delivery pass of 2026-09-06 the event entry added — the delivery's payload, distinct from the delivery that carried it and the signal the adapter reads it into — and the delivery and signal entries cross-referenced against it; the operator's question of whether events, signals, and deliveries are properly distinguished
50 the transport-and-delivery pass of 2026-09-06 mapping, receiver, signature, and idempotency key entries added; effect dedup tightened to name the key by reference; cursor and capability left as prose on the grant entry, the latter checked for collision and found none
52 the operator's 2026-09-06 terminology review of role, domain, and scope the role entry added, beside step owner; the domain and permission scope entries added for the authority tuple's second and third terms; finding scope and waiver scope added as qualified compounds rather than one entry for bare scope's four senses, with bare scope left to the author and the ## Scope heading untouched
53 the adversarial term audit of 2026-09-06 the governance write entry added — cited by name across six documents with no entry of its own, its definition already stated verbatim in gates_and_workflows.md; ten Not-for/Never violations fixed by unambiguous rephrasing, the record-for-external-system pattern found again in three new sites and a stale steps[].phase field removed from data_model.md
54 the checker-mechanism pass of 2026-09-06 check_foundation_vocabulary.py's record ban rebuilt as a structural, corpus-wide check — a bound term possessed by, or governed by a preposition or relative clause pointing at, a foreign-system noun — after the literal-phrase, six-document-scoped version missed two more rounds of paraphrase; 28 further Not-for/Never violations this rebuilt check found across adapters.md, calendar.md, conformance.md, data_model.md, gmail.md, migration.md, payments.md, work_model.md, and workflows.md fixed by the same unambiguous rephrasing; one adapters.md heading renamed with its four cross-references, its anchor confirmed unused outside docs/foundation; as_read extended to strip **bold**/*italic* emphasis, closing a second escape the fix found live in data_model.md
56, rebased onto the checker-mechanism and self-awareness passes the peering pass of 2026-09-06 decision 55 ruled on the external system entry — a second instance of the record is not one; the governance write entry's admission sentence extended to name a synced write's own, unattributed shape
57 the underdetermined-inputs pass of 2026-09-06 the underdetermined_inputs entry added, swap-tested against undetermined_scope and undeclared_dependency
57 the naming pass of 2026-09-06 decision 72 opened — whether the name since retired, sign-off, named its record neutrally, given that the record carries three conclusion values of which only signed is an approval and signed is itself one of them; argued in a section of its own beside the Owner section, which records the same kind of finding about a different word. Opened, not ruled: the rename is the operator's and would touch files three open PRs are amending
60 the undefined-term pass of 2026-09-06 reason class added as the category entry a reader meeting repeated_lapse had no way to resolve, with repeated_lapse, rounds_exhausted, unreadable_workflow, capability_denied, and capability_unavailable defined beneath it; principal binding and session_digest added, each carrying a rule no existing term could hold — the counting rule and the agent verdict's required reference; lapse_cap, min_tier, confidence_threshold, external_api_write, and verify_deployed deliberately NOT given entries, each named instead on the entry that already owns its set — action_policy, action_type, and step — since a value is not a term (principle 9); the drop reason named on the dropped entry as the adapter's, not the design's; six substrate field names recorded in migration.md#substrate-field-names-the-design-reads-and-never-adopts-as-terms rather than promoted
68 the decision-70 ruling of 2026-09-06 declaration scope added — the key that selects which workflow declaration a batch runs under, swap-tested against instance, domain, and tenant and distinguished from the planning level; project added beside it, defining the planning sense and banning the scoping sense; project retired as the name of the scoping key
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
77 the decision-78 ruling of 2026-09-07 the external system entry extended to name the swarm's own serving instance as one only while it is the object of an operation, beside the decision 45 and 55 sentences it already carried; the record entry's See list pointed at the ruling, with a note that the third Not for limb is unaffected because no adapter reaches the record under it — the prohibition itself unchanged
56 the peering pass of 2026-09-06 rebased onto the checker-mechanism and self-awareness passes: decision 55 ruled on the external system entry — a second instance of the record is not one; the governance write entry's admission sentence extended to name a synced write's own, unattributed shape
88 the verdict-rename pass of 2026-09-08 decision 72 ruled — the record that closes a step is the verdict and the field it carries is the conclusion; sign-off and sign_off retired as names of the record, kept under Retired names; the ruling argued in a section of its own beside the Owner section
90 the register-gap rollup of 2026-09-08 the session_digest entry added; the scoping key renamed declaration scope per decision 70; verify_deployed named on the step-names entry; decision 72's section given the rules index decision 74 requires
98 the forker retirement of 2026-09-08 forker added to operator's Never list and to the Retired names table, replaced by operator, so decision 82's retirement binds mechanically rather than resting on prose
99 the retired-name binding pass of 2026-09-08 five retirements bound that prose alone had left unenforced — blocked as a task status, the graduation sense of recurring series, operator_preview, calendar_routing_config, and merge as an action class — each added to the Never list of the term that replaced it
118 the decision-35 vocabulary pass of 2026-09-15 vendor_binding and deployment_configuration entered as terms — the first never having had an entry despite being named across the corpus, the second never having had one despite being a standing distinct type; channel_config added to Retired names beside calendar_routing_config, whose row is re-pointed to the surviving name; the adapter entry's Never line extended to both retired binding names
125 the dynamic-workflows ruling of 2026-09-25 improvement proposal added (decision 116): a proposal on a verdict that a declaration could serve its class better where nothing it did was a defect, swap-tested against finding, which keeps meaning a defect or objection, and against proposal, whose initiative sense it does not carry, with its Field an entity of its own; finding gains the matching Not-for
133 the roles-as-slots ruling of 2026-10-13 role defined as a slot; operator-facing agent, steward, planner, and review step marked as example role or step names; the step entry's pointer follows the renamed section
134 the builder-never-reviews ruling of 2026-10-13 slot defined with its swap test, and the ordinary-sense use in the resolution note unlinked; review step defined by a declared class; separation of duties restated as a check over a checkpoint's edges for most pairs and over the verdict for the builder and review pair, on the agent itself; role now names a slot and the slot swap test agrees with role and step owner
135 the conditioned-payment ruling of 2026-10-13 step class added with its swap test against action_type, review step, and reason class, and listed in the step entry; slot states that the roles section's headings use "is a slot" as shorthand for "names a slot"; blast radius notes a payment's release by its parameters; action_policy lists payee_caps[]; the same "names a slot" wording applied in docs/swarm_role_set.md, outside this directory, whose sentence on the table moved there also records the release steward's row split in two by decision 143; separation of duties names the payer and verifier of a payment taken without a checkpoint as read on the agent itself, and blast radius says a payment's release is the only clearing; separation of duties names the payer as the signer of prepare, the agents seated in pay, the holders of the payer-slot leases, and the taker, and blast radius hedges the only clearing to this document
146 the application-on-an-instance pass of 2026-10-20 application, environment, business record, business matter, and reissue added, each swap-tested against its nearest term (stated in the pull request); the replay entry states that a reissue is not a replay; the operator entry and the waived conclusion state that reserved acts belong to the instance owner and no grant extends them; instance owner added with a sixth row in the Owner table; the Owner section counts six meanings
147 the PR1129 ARCH consistency repair of 2026-10-23 the parent task definition now requires children terminal and landed and applicable planning criterion effect evidence for derived completion
148 the PR1129 aggregate-parent admission repair of 2026-10-24 Claimable and parent task definitions use immutable admission class and require a current child for completion.

work_model.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 claimant retired for lease holder; open decision 34
31 the memo-gap pass of 2026-09-06 the governance list cited from its one home rather than counted; pointers to the closed-work and intake-linkage rulings
34 the workflow-format pass of 2026-09-06 the declared case of decision 13, bounded by hold_bound; the unclaimed-step interval named as unclaimed_after
36 the second workflow-format pass of 2026-09-06 an intake rule may key on a field a step wrote on a type it may name, with the writer in its provenance predicate; decision 36 untouched
37 the testability pass of 2026-09-06 blocked retired as a status and claimability read from the checkpoint; the declared terminal set; two moments open a batch; tasks_attached[]; the next recurring instance created and read back before the closing sign-off; a terminal status only where the declaration permits none; the writer as the cross-type cycle check's enforcement point; C2 settled by the write contract
38 the rulings pass of 2026-09-06 a signed or blocking verdict is written under a held lease, cited from decision 44's ruling; the bootstrap set as the closed list decision 43 rules
39 the second rulings pass of 2026-09-06 decision 36 ruled here — a rule keys on no work-model record type, the operator's lean toward every type considered and set aside; decision 43's second half cited as ruled; the C2 and blocked settlements marked reviewed and upheld
40 the planning pass of 2026-09-06 a task's one PART_OF edge targets its parent task or a planning record; the ascent as a derived read distinct from the chain; unplanned work admitted
43 the model-and-harness-routing pass of 2026-09-06 runner, already defined in vocabulary.md, settled as the seat a step's outcome depends on — no new type introduced
47 the priority pass of 2026-09-06 ordering within the claimable pool given a home beside claimable, argued as a derived read over the ascent, due_date, workflow urgency, and blast radius rather than a maintained field, on the operator's connection from the ancestry reversal; a principal's "may" rather than "must" toward the highest-standing task, with decision 62 opened on whether an instance may bind the stronger form
48 the rulings pass of 2026-09-06 decision 34 ruled — engine defined, pipeline retired for the step-path publisher; the count of four execution mechanisms unchanged
49 the event/signal/delivery pass of 2026-09-06 one calendar.md anchor updated to its renamed section
— the rulings-61-62-64 pass of 2026-09-06 decision 62 ruled — "must" per class as action_policy data, default "may", on the shape min_tier and metered_resources[] already carry
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
76 the task-assembly pass of 2026-09-07 decision 84 argued here, beside work_model.md#intake-is-every-tasks-first-workflow whose unrouted rule defines the gap — the operator's proposed draft status recorded as disfavoured on C1/invariant 11, the invariant-12 collision with draft as a step name, and the status vocabulary's open/terminal scope, with four dispositions and no ruling
84 the task-liveness pass of 2026-09-08 decision 92 ruled — a task is live when some principal could claim it now, claimable read existentially over the backlog rather than from one principal's seat; no term minted, the partition stated beside the claimable predicate, and the count of rows holding the retired status routed to status.md
89 the liveness-partition amendment of 2026-09-08 decision 92's partition corrected from two parts to three — a nonterminal task under a held lease is claimable by nobody and is neither terminal nor checkpointed, so the two-part statement accounted for no actively executing task; the middle part described in the existing lease/held terms and given no name, and no term minted
103 the workflow-proving pass of 2026-09-09 decision 100 opened and argued here, beside work_model.md#changing-the-swarm-is-work-and-it-goes-through-a-workflow-like-any-other, whose declaration-as-governance-write ruling defines the gap: the gate judges a declaration as written and the first batch routed through it is the first execution of any step of it. The section states the question, the four mechanisms that bear on it and what each is scoped to — the migration's dual-run cutover, the recovery-path cadence rule, the conformance suite's disposable instance, and the review step — the three candidates, and the two rules any answer must survive; it argues no side. replay is named as unavailable to any candidate, per vocabulary.md#replay
105 the acyclicity pass of 2026-09-09 a forward pointer added where the per-type cycle check is asserted: whether that reading is the design's requirement or its assumption about the record it was written against is decision 102, argued in data_model.md. The two checks the section states are unchanged, and no candidate there changes the writer's walk
106 the decision-100 ruling of 2026-09-09 decision 100 ruled here, the section rewritten from the open question revision 103 argued into the ruling: proving conditioned on the blast tier, with the three grounds, the cost accepted — the tier is assigned to the write and not to the declaration's future behavior, and is accepted as a proxy — what would reopen it, and the three things it leaves open, which are the threshold value, the ground a proving run runs against, and whether the unproven state is an edge or the absence of a proving record. Principle 3's planted positive and the advisory path's parity shape are carried through from the open section; the refusal of replay is unchanged
121 the task-assembly ruling of 2026-09-21 decision 84 ruled here and was tightened after exact-head review: the four-part workflow-entering assembly unit excludes the lease; its creator-time hold finding persists as the claim exclusion through crash and transfer; the generic hold section now distinguishes that persistent condition from an active lease-bearing hold; creation grants no ownership; only the intake declaration's resolved pm step owner may claim classify; and only that verdict ends the exclusion. The aggregate parent remains outside claim and outside every workflow. The no-lease interval is therefore safe rather than executable. draft and a dedicated edge remain rejected
125 the dynamic-workflows ruling of 2026-09-25 decision 116 ruled here — a section stating the work-model consequences: no task waits for other tasks to exist, the one wait admitted is decision 14's on the one amendment or authoring made for the task, approved by blast tier, the authoring task PART_OF the originating task's plan and routed to planning once its draft declaration is active and to operator-only until then, an amendment removing or weakening a protection the operator's, every batch may improve the declaration it ran under through decision 17, and what the ruling does not change; a pointer from Intake is every task's first workflow
127 the reference-workflows-and-no-core-promotion pass of 2026-09-26 the Scope pointer reworded from "core workflows (including intake) are workflows.md" to "reference workflows and intake, the one core workflow, are workflows.md", following the operator's 2026-09-26 ruling that the named workflows there are reference designs an instance may seed drafts from, none live by default, with intake alone core because every task enters through it
129 the planning-commissioning pass of 2026-09-28 the existing DEPENDS_ON edge extended from the batch-to-created-task hold to task and planning-record ordering without weakening the batch rule; parent completion strengthened from terminal child counts to terminal-and-landed descendants with applicable criterion evidence
133 the roles-as-slots ruling of 2026-10-13 the operator-only claim rule marks the operator-facing agent as an example slot name; the rule that such a task is carried to the operator is unchanged
135 the conditioned-payment ruling of 2026-10-13 the paragraph on a recurring task and an action series says a recurring payment's consent step exists whether or not the gate holds its action at a checkpoint, in place of whether or not its class has graduated
146 the application-on-an-instance pass of 2026-10-20 one section added: a business matter is a record that tasks refer to and is not itself a task (decision 152, ruled), with its open or closed state derived from its tasks and stored only where no task stands behind it (decision 156, ruled 2026-10-20); the invariants rules list gains it
147 the PR1129 ARCH consistency repair of 2026-10-23 Purpose distinguishes the atomic task/intake/ADDRESSED_BY creation boundary and persistent assembly finding from the closing verdict that opens a successor batch; the recurrence discussion uses the full parent completion predicate
148 the PR1129 aggregate-parent admission repair of 2026-10-24 Admission, claim, active/live reads, parent membership and completion use one stable creator-time class; childless parents remain visible and incomplete.

workflows.md

Revision Pass What changed
29 the simplification pass of 2026-09-05 operator_preview retired for consent; open decision 33
31 the memo-gap pass of 2026-09-06 decision 39 ruled here — what intake's link attaches and what hydration resolves; the payment consent row aligned with decision 27
34 the workflow-format pass of 2026-09-06 the two declared intervals and the planned wait, cited in How to read a workflow section, outreach, and operator-only; a standing constraint on an entity a task names, read at intake
35 the consistency pass of 2026-09-06 the three consent-carrying workflows cite when their checkpoint is written and what the take re-evaluates
36 the second workflow-format pass of 2026-09-06 a bound declared as the task's due_date and the operator_only step, cited in How to read a workflow section and operator-only; a matter, a case, or a filing as a record entity the task names, under What link attaches
37 the testability pass of 2026-09-06 DUPLICATE_OF at dedupe; impl closes on a mergeable pull request; none_permitted on feature and security; a bug needing a design choice becomes a new task; the transcript is a source, not an artifact; the contact allowlist at extract
40 the planning pass of 2026-09-06 the planning workflow, the planner role, and the thirteenth core workflow
44 the Human Inversion mapping pass of 2026-09-06 the postmortem workflow, the fourteenth core workflow; one sentence on feature's legal placement as a choice applies_when already makes, not a chronological default
45 the rulings pass of 2026-09-06 decision 33 ruled — the steps[].phase field dropped; the Stages line kept as authored prose, its wording an editorial matter for this document
50 the minimization-recalibration pass of 2026-09-06 a disclosure_lint step added to outreach, the mechanical half of what review judged alone
55 the self-awareness pass of 2026-09-06 postmortem's entry condition extended to a capability_denied or capability_unavailable checkpoint resolved without clearing the gap; a proposed architecture change routed at merge like any other finding, planning's amend step named as the closest shape, applied reflexively and not reused as a class; the bootstrapping limitation extended to a gap that prevents the proposal itself
69 the front-matter rollout of 2026-09-07 decision 74 applied to this document — the revision chain moved verbatim into revisions.md, and each section stating three or more full-sentence rules opened with the list of them; no argument changed
121 the task-assembly ruling of 2026-09-21 intake's entry condition and the workflow summary state decision 84's assembly exception: every workflow-entering task already has its intake batch at creation, an assembling one adds the persistent classify hold, and an aggregate parent enters no workflow
117 the postmortem carrier reconciliation of 2026-09-14 workflows.md#postmortem applies decision 36 to all four entry classifications: an ordinary allowed-type entity carries the step-written, read-back classification and its source/writer provenance; the session, checkpoint, or task is evidence, never the intake rule's subject. The seven excluded work-model types remain excluded; the misleading halt sentence naming agent_session as the carrier is removed
118 the decision-35 vocabulary pass of 2026-09-15 the binding substituted to vendor_binding in social-content's target platforms and operator-only's present step; no claim changed
125 the dynamic-workflows ruling of 2026-09-25 decision 116 ruled here — a section holding the rules: what route does on fit, near fit, and none, and why its hold is not a wait for similar tasks; who approves a new or amended declaration (the workflow class split by blast tier, the approver distinct from the proposer); an amendment that removes or weakens a consent point, a review step, or a closing condition the operator's, fail-closed; how a run proposes an amendment, as a standing finding or an improvement proposal, the latter an entity linked by PART_OF and REFERS_TO; and the rules for a workflow created for one task (the planning workflow for its authoring, the task PART_OF the originating task's plan and its write carried by amend, naming and deduplication, where its purpose is stated, no automatic retirement, promotion to core by the operator at five tasks, counted at planning's survey; an originating task under no plan, and a retirement that removes a protection, closed as defaults applied by consistency); a pointer from the planning section; intake's successors widened to every declaration in force for the scope; the Scope and Purpose paragraphs distinguish core workflows from created ones
127 the reference-workflows-and-no-core-promotion pass of 2026-09-26 two operator rulings applied: (1) the named workflows in this document are reference designs an instance may seed drafts from, none live by default — the title, Purpose, and Scope sections reframe "the core workflows" as "reference designs," with intake named the one exception and the only core workflow because every task enters through it; every other "core workflow" usage in this document (the planning section, the created-workflow rules, workflows.md#how-to-read-a-workflow-section, the purpose-statement parity clause) reworded to "reference workflow"; (2) a workflow's status is draft, active, or retired, with nothing above active — decision 116's default (g) (a created workflow becomes core by the operator's decision at five tasks) and the matching survey-driven proposal step are removed from the rules list, the planning-section paragraph, and the created-workflow-for-one-task section, replaced by a stated supersession and the rule that a workflow's task count is reported as usage, never a promotion trigger
133 the roles-as-slots ruling of 2026-10-13 the table of named roles removed and replaced by a section stating roles as slots and the five constraints any role set must satisfy (separation of duties, a review step signed by its own step owner or waived by the operator, operator_only taken by the operator and closed on the confirmation, a deterministic step still filled by a principal that resolves through the roster, every slot resolving or holding with unspawnable_assignee); the role names in the step tables marked as examples; the table moved out of the foundation to the reference implementation's own documentation
134 the builder-never-reviews ruling of 2026-10-13 constraint 1 gains the fourth place separation of duties is required (the builder and review pair, on the agent itself) as a list, and states the declaration pair as "the swarm's approval is never the proposer's"; constraint 4 drops the gloss that a deterministic runner invokes no model and names the class; release verify_deployed gets its own slot; digestion verify is declared work and its independence left undecided; the owner_role sentence says a role stands for a slot; the sentence on the retired role list is stated as a date
135 the conditioned-payment ruling of 2026-10-13 decision 144 applied to the payment workflow: the purpose, the verify and consent rows, the paragraph after them, and the fast paths restated, replacing the sentence that let a recurring payment graduate under the recurrence rule by count; prepare assembles the destination, verify matches and compares it and states the verifier's lease and order, consent closes on a verdict naming what the gate read, and constraint 1 of the five names both pairs read on the agent itself; the period phrase extended to a payee with no schedule, and constraint 1 names every holder of a payer-slot step
146 the application-on-an-instance pass of 2026-10-20 customer_reply added as the fifteenth reference workflow (decision 153, ruled) with a hand-authored step table, the three rules the table does not carry, the planted refusals a later suite change should add, and what the customer-service capabilities that are not reference workflows become; the scope's count moves from fourteen to fifteen
148 the PR1129 aggregate-parent admission repair of 2026-10-24 Intake admits the declared class atomically and classify cannot reclassify an existing workflow peer.
150 the trunk, CI budget, and acceptance proposal of 2026-10-27 two sections added under feature arguing decisions 163 and 164 (both open): CI at the pinned head as a step resource with a declared time budget (an over-budget green run is a standing finding and does not hold impl) and a release-candidate run for heavy suites that needs a criterion naming them, and an optional acceptance step seated after the review steps and before merge by applies_when. The feature step table gains the acceptance row and the finding clause on impl, and constraint 1 of the five gains a proposed fifth place for the acceptance owner, all marked open; the table is edited by hand because no generator for these tables exists on this checkout, and the declaration entity carries both when one does
151 the trunk, CI budget, and acceptance ruling of 2026-10-28 the sections arguing decisions 163 and 164 marked ruled instead of open, and the hand-edited feature step table and the fifth place in constraint 1 changed from open to ruled. The follow-up edit carrying the impl finding clause to bug and security is stated as a follow-up, not made here. No rule is changed
152 the promised-edits pass of 2026-10-28 the release workflow's verify_deployed row gains the ancestry condition decision 162 argued; the impl row of bug and of security gains the finding clause decision 163 argued, and the sentence promising it now says it is made; the matrix paragraphs under decisions 163 and 164 point at WF-27 and WF-28 instead of a later change. No rule is changed

Documents not yet migrated

None. Decision 74's rollout is complete: all nineteen documents in docs/foundation/ that carried a front-matter chain now carry a pointer to their table above instead. Nineteen is the directory's twenty-one documents less the two with no table. status.md is one — a dated report, not a foundation design document, never keyed and never inlined, and its revisions are its own sections rather than a front-matter chain. This file is the other: it holds every other document's history and has none of its own.