Design 26: answer the first review (the seat list's grain as ADR 0613 has it; out of step cleared only by the same contracts module)

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
This commit is contained in:
2026-11-04 00:10:40 +01:00
parent 34384b6c9c
commit 4710fd18c6
+5 -5
View File
@@ -189,8 +189,7 @@ way, in the milestone of ADR 0612 (ADR 0613 §1).
`mesh-broker`. Every other seat, the foundation's included, has its definition on the bus in the same milestone, all
at once (ADR 0608 §2), holding the seat list's grain: its name, whether it is held once or on every node, its verbs
with their inputs and its provision, generated from the seat list mesh-sdk compiles today, so the move changes
nothing a reader sees (ADR 0613 §2). A verb this milestone adds to such a seat (`mesh-config`'s `renames`,
`mesh-vault`'s `retire`, design 32 § 8) is added at that grain. Its messages, events and state layouts are added to
nothing a reader sees (ADR 0613 §2). Its messages, events and state layouts are added to
a seat's definition when its area's contract next changes, which moves that area's seats whole into its contracts
module in that change (ADR 0613 §3); which area moves when is tracked by issue 167 (ADR 0613 §4).
- **The seat set has one source.** The judge, the node-engine, the tool runner and claude-code each compile a copy of
@@ -222,7 +221,7 @@ way, in the milestone of ADR 0612 (ADR 0613 §1).
- **Findings**, written by the indexer, from which the condition keeper raises and clears the conditions (ADR 0564): a
trunk's seat definition that does not parse, `seat-definition-unparsed` (a pull request's is its check's verdict, not
a condition), cleared by a definition that parses; generated types on a trunk out of step with their definition,
`generated-types-out-of-step`, cleared by a clean build end. **Tools** of the indexer: `indexer_seat_definition`
`generated-types-out-of-step`, cleared only by a clean build end of the same contracts module. **Tools** of the indexer: `indexer_seat_definition`
(read one), `indexer_seat_definitions_again` (read a trunk's or a pull request's again now) and `indexer_out_of_step`
(the generated types out of step).
- **Contracts modules.** A seat's contract is published by a contracts module, which holds contracts only (every file
@@ -250,8 +249,9 @@ Acceptance tests: research 081's 14, 21, 25 and 26; a unit test that the generat
mesh-sdk compiled before the move, entry for entry; mesh-sdk's seat-naming test; each build module's compare step
failing on a differing, a missing and an unwritten file, naming each; the checker's `verdict` naming out-of-step
files; and cases of the indexer's whole-module integration test: a trunk
definition that does not parse writes its finding and a fixed one clears it; a check verdict naming out-of-step types
writes the finding and a clean one clears it; `indexer_seat_definition` answers the trunk's entry while a pull request
definition that does not parse writes its finding and a fixed one clears it; a trunk build end naming out-of-step types
writes the finding, a clean build end of another contracts module leaves it, and a clean one of the same module clears
it; `indexer_seat_definition` answers the trunk's entry while a pull request
holds another; a pull request's entries go when it closes; a definition over 256 KiB is refused; each of the three
tools answers.