diff --git a/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md b/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md index 48415742..4d4b555d 100644 --- a/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md +++ b/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md @@ -520,3 +520,19 @@ the principle that settles it, cited as "design 47 G A-n". held, the verb's reason named. - **A-310's shape:** `composer.Manifest` is `{Raw, Digest, Fingerprint}` (wire `fingerprint`), and `composer.Fill`'s getter takes the `Manifest`. +- **A-313** (corrects A-309 and A-290's "outputs store"; §58, §547, ADR 0666 §16; principle 7) A step answer over the + steps state's bound is kept in the steps state's own objects store, `steps-objects`, which the build module's + `requires` sizes with the state option `objects-max-mib: 256`; it lives as every `-objects` does (removed on + replace, an object whose key is gone kept for the drop tool), so no `outputs` require and no age option for the + objects template are added. A-309's lifetime line is withdrawn. +- **A-314** (A-313, §58, §547; principle 7) The three build modules' `steps` moves from the old `state` section into + `requires` as a state with `ttl-seconds: 172800` and `objects-max-mib: 256`; its bucket stays `_steps`, so + the seat's `steps` state is served from it as before. The step runner names the store through + `catalogue.StateObjectsName("steps")`, and the manifest validator accepts `objects-max-mib` on the state template. +- **A-315** (test 36, §637, §555, §405; principles 2, 3, 5 and 7) Test 36 takes the fingerprints of before G from the + mesh, not from a file: during G's check the trunk is before G, so it asks `seat:mesh-catalog.module` for the + indexer, the assigner, the gate, the backup holder and the bus module, and fetches each build by its fingerprint + through `seat:oci-artifact-registry` under the checker's account, as §637 says; the address of both is the bus the + check gives the test. Each fetched build is started the way every module is, by the node-engine's own apply of a + want on the test's bus, under the module's own account; the test starts no bare process. Where the seat does not + answer, the test fails, saying which build it could not fetch and why; it never skips.