From 87fdd04e814fa65340df10bb897bb4c61df32dee Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:44:49 +0100 Subject: [PATCH 01/17] Answer A-323: the assigner and the node-engine are one step, the node-engine's want first Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 6 ++++++ 1 file changed, 6 insertions(+) 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 bac1be9a..5c95167a 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 @@ -586,3 +586,9 @@ the principle that settles it, cited as "design 47 G A-n". catch-all of seat events by one handler per seat it consumes; for the seat `mesh-catalog` it takes each event it consumes except `registration-changed`, which the branches follower takes, and whatever the watchman needs of that event it takes from the follower. The SDK's hub keeps one taker per message. +- **A-323** (§49, §268; principle 3) The assigner and the node-engine on one node are an acting cycle of delivery edges + only (compose and place), so they are delivered as one step (§49), never held by each other: the assigner writes that + node's node-engine want first, held by nothing but its build (§268), and holds the node's other wants, its own included, + until the node-engine seat says the new version runs there. The acting-wait check finds a cycle across steps as well as + within one, and a want held on a cycle it cannot break says so as a finding (found in the dry run of G on itself, + 2026-11-13). -- 2.54.0 From 75149fb5f3187fc036918f53c0e900ab39d3235d Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:48:25 +0100 Subject: [PATCH 02/17] Answer A-324: an archive or upstream artifact has its steps bypassed; a module no seat builds is left out of the seed by name Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 6 ++++++ 1 file changed, 6 insertions(+) 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 5c95167a..45681abc 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 @@ -592,3 +592,9 @@ the principle that settles it, cited as "design 47 G A-n". until the node-engine seat says the new version runs there. The acting-wait check finds a cycle across steps as well as within one, and a want held on a cycle it cannot break says so as a finding (found in the dry run of G on itself, 2026-11-13). +- **A-324** (§8, §535, §704, design 51; principles 3, 7) An artifact the builder packs or fetches itself, kind `archive` or + `upstream` with no language (design 51), has no lint, unit or integration step to ask: the seed and the runner call no + build seat's `steps` for it, its registration carries those steps as `bypass` (§8's reason), and the runner places no + bypassed step. An artifact that names a language or kind no build seat serves stays a failure as §535 says, naming the + artifact, in the seed as in the runner: the seed leaves that one module out with a finding naming it, never the whole + seed. -- 2.54.0 From 6f417f30e78fac80fa9e0371bc0173dd83f632d6 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:49:07 +0100 Subject: [PATCH 03/17] Correct A-324 as A-325: a bypassed step is still placed and said Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 4 ++++ 1 file changed, 4 insertions(+) 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 45681abc..4d62222c 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 @@ -598,3 +598,7 @@ the principle that settles it, cited as "design 47 G A-n". bypassed step. An artifact that names a language or kind no build seat serves stays a failure as §535 says, naming the artifact, in the seed as in the runner: the seed leaves that one module out with a finding naming it, never the whole seed. +- **A-325** (corrects A-324's runner half; §23, §28; principle 3) The runner places a bypassed step as §23 and §28 say: + outcome `bypassed`, asked of no one, said. For an artifact of kind `archive` or `upstream` with no language, its lint, + unit and integration steps are `bypass` whatever its policy says, so no build seat is asked for them; every other step + keeps its policy. -- 2.54.0 From a60e04ed47abb7ca072e5c54b12ec41dde3b83c6 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:49:27 +0100 Subject: [PATCH 04/17] Answer A-326 to A-328: the build-input cycle is allowed, a late registration places its pipelines, the runner's own pipeline is never held Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- .../01-to-be/47-milestones/G-22-lead-answers-2.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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 4d62222c..43a97062 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 @@ -602,3 +602,17 @@ the principle that settles it, cited as "design 47 G A-n". outcome `bypassed`, asked of no one, said. For an artifact of kind `archive` or `upstream` with no language, its lint, unit and integration steps are `bypass` whatever its policy says, so no build seat is asked for them; every other step keeps its policy. +- **A-326** (§47, §49, §51, §270, ADR 0614 §6; principles 3, 8) A cycle through a build module's own inputs is not + §49's: where the build edge (kind 3) goes out of an artifact of a module that holds a build seat into an artifact it + builds, the running version builds the new one (§270), so the cycle is broken at the running version and is allowed. + Every other cycle with a build edge is refused at take-in, naming every artifact on it (§49, §51); the indexer builds + that rule in G, over the catalog graph it keeps. An edge of kind 4 names the artifact that offers the provision (its + `answered-by`), not the module's first process resource. +- **A-327** (§21, §23, §54; principles 1, 3) A pipeline started before its module has a registration is placed when the + registration arrives: the runner, on `registration-changed`, places from the registration the steps of every pipeline of + that module that has none, once each (by compare-and-set), and says it. Until then the pipeline says it waits on the + module's registration. +- **A-328** (§29, §65, §270; principle 5) A take-in that changes the runner holds every other pipeline of the take-in + until the new runner runs (§65), but never the runner's own pipeline: that one runs on the running runner, as a build + module's running version builds its successor (§270), so its pass lets the new runner be wanted (§29) and its running + releases the held ones. The bound stays only as a failure bound, with its finding. -- 2.54.0 From 04e259524f1d906a58f36aae4c8750c026e878b6 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:49:50 +0100 Subject: [PATCH 05/17] Answer A-329: the seed's left-out module raises seed-left-out until a seat builds it Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 4 ++++ 1 file changed, 4 insertions(+) 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 43a97062..511775ac 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 @@ -616,3 +616,7 @@ the principle that settles it, cited as "design 47 G A-n". until the new runner runs (§65), but never the runner's own pipeline: that one runs on the running runner, as a build module's running version builds its successor (§270), so its pass lets the new runner be wanted (§29) and its running releases the held ones. The bound stays only as a failure bound, with its finding. +- **A-329** (A-324, §8; principles 3, 7) The module the seed leaves out raises the indexer's finding `seed-left-out`, + scope `module`, id the module's name, naming the artifact and its language or kind, and is named in the seed's ask + beside the unprotected branches (`Left`, §8). It clears only when a later seed finds a build seat for every artifact of + it, or the module leaves the catalogue; the seed being applied without it does not clear it. -- 2.54.0 From 9fa132e3930625d74a29164f5480ca3716fc7467 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:53:08 +0100 Subject: [PATCH 06/17] Answer A-330: the acting-cycle finding; the node-engine's want is held by no acting edge, other rules stand Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 5 +++++ 1 file changed, 5 insertions(+) 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 511775ac..3a7d18a7 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 @@ -620,3 +620,8 @@ the principle that settles it, cited as "design 47 G A-n". scope `module`, id the module's name, naming the artifact and its language or kind, and is named in the seed's ask beside the unprotected branches (`Left`, §8). It clears only when a later seed finds a build seat for every artifact of it, or the module leaves the catalogue; the seed being applied without it does not clear it. +- **A-330** (sharpens A-323; §268; principles 3, 8) A want the assigner holds on a cycle it cannot break raises its finding + `acting-cycle`, scope `module`, id `.` of the held want, naming the cycle with each edge's step; the next + pass that finds the want held on no cycle clears it. "Held by nothing but its build" means held by no acting edge: the + node-engine's want on a node (the holder of the seat `node-engine` there, read from the acting edges' seat) keeps every + other rule of a want (grant, hold, canary, composition). -- 2.54.0 From f9f78f8f3610735b94c6a03ae4e79b53ea3cfddf Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 01:58:42 +0100 Subject: [PATCH 07/17] Answer A-331: a cycle across steps is a cycle; amends 272 as A-323 built it Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 3 +++ 1 file changed, 3 insertions(+) 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 3a7d18a7..37b6fe23 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 @@ -625,3 +625,6 @@ the principle that settles it, cited as "design 47 G A-n". pass that finds the want held on no cycle clears it. "Held by nothing but its build" means held by no acting edge: the node-engine's want on a node (the holder of the seat `node-engine` there, read from the acting edges' seat) keeps every other rule of a want (grant, hold, canary, composition). +- **A-331** (amends §272 by A-323; §49; principle 3) §272's "a cycle across two steps is none" no longer holds: a cycle of + acting waits across steps is a cycle (A-323), delivered as one step where it has delivery edges only (§49), and a want + held on one no rule breaks raises `acting-cycle` (A-330). -- 2.54.0 From 7c13ee568240be87c5dc1b8d6d63ce8a84c50d11 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:02:20 +0100 Subject: [PATCH 08/17] Answer A-332: a kind-4 edge keeps its first-process-resource source Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 3 +++ 1 file changed, 3 insertions(+) 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 37b6fe23..dac18a9d 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 @@ -628,3 +628,6 @@ the principle that settles it, cited as "design 47 G A-n". - **A-331** (amends §272 by A-323; §49; principle 3) §272's "a cycle across two steps is none" no longer holds: a cycle of acting waits across steps is a cycle (A-323), delivered as one step where it has delivery edges only (§49), and a want held on one no rule breaks raises `acting-cycle` (A-330). +- **A-332** (withdraws A-326's last sentence; §47; principle 7) A manifest names no artifact for a provision (`answered-by` + is `helper` or unsaid), and the delivery waits cut edges down to module names, so the artifact a kind-4 edge starts from + changes no order: it stays the module's first process resource, as built, and G changes nothing there. -- 2.54.0 From e4145affa2103673179f4e14f58a3887557e2da1 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:06:52 +0100 Subject: [PATCH 09/17] Answer A-333: package-only cycles and delivery edges into packages are not refused Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 7 +++++++ 1 file changed, 7 insertions(+) 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 dac18a9d..9bb9596b 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 @@ -631,3 +631,10 @@ the principle that settles it, cited as "design 47 G A-n". - **A-332** (withdraws A-326's last sentence; §47; principle 7) A manifest names no artifact for a provision (`answered-by` is `helper` or unsaid), and the delivery waits cut edges down to module names, so the artifact a kind-4 edge starts from changes no order: it stays the module's first process resource, as built, and G changes nothing there. +- **A-333** (sharpens §49 and A-326; §47; principles 3, 7) Two more cycles are not §49's. (1) A cycle of package edges + (kind 1) alone: a real import cycle is refused by the language's own build, and one found only because imports are + given to every artifact of a module is not a cycle of what is built. (2) No delivery edge (kinds 2, 4, 5, 6) ends at a + package artifact: a package is delivered only inside what uses it, which a kind-1 edge carries, so such an edge is not + made and cannot close a cycle. How it is checked: the indexer's cycle rule accepts today's trunk catalogue and G's own + (the dry run's entries, kept as test data), and refuses a cycle with a build edge among delivered artifacts, naming + them. -- 2.54.0 From 5df4fb0ff63d4694fdaff2606eda6637ac1f5364 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:12:58 +0100 Subject: [PATCH 10/17] Answer A-334: in a group take-in the changed runner is wanted on its own pass, first Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 4 ++++ 1 file changed, 4 insertions(+) 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 9bb9596b..e3ff9d1b 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 @@ -638,3 +638,7 @@ the principle that settles it, cited as "design 47 G A-n". made and cannot close a cycle. How it is checked: the indexer's cycle rule accepts today's trunk catalogue and G's own (the dry run's entries, kept as test data), and refuses a cycle with a build edge among delivered artifacts, naming them. +- **A-334** (sharpens A-328; §29, §65, §268; principle 5) In a group take-in that changes the runner, the runner is the + acting part the other members wait on, so it goes first as the node-engine does (§268): its member is wanted on its own + pipeline-ended once that passed, ahead of the group. The other members keep §29: their pipelines run on the new runner + once it runs, and they are wanted together on group-ended. The bound stays a failure bound only. -- 2.54.0 From 4a466efcac840a4a652647e35e4c79876ea3b6e9 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:18:35 +0100 Subject: [PATCH 11/17] A-329, A-333: the glossary's word catalog Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 e3ff9d1b..0d2bc6c3 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 @@ -619,7 +619,7 @@ the principle that settles it, cited as "design 47 G A-n". - **A-329** (A-324, §8; principles 3, 7) The module the seed leaves out raises the indexer's finding `seed-left-out`, scope `module`, id the module's name, naming the artifact and its language or kind, and is named in the seed's ask beside the unprotected branches (`Left`, §8). It clears only when a later seed finds a build seat for every artifact of - it, or the module leaves the catalogue; the seed being applied without it does not clear it. + it, or the module leaves the catalog; the seed being applied without it does not clear it. - **A-330** (sharpens A-323; §268; principles 3, 8) A want the assigner holds on a cycle it cannot break raises its finding `acting-cycle`, scope `module`, id `.` of the held want, naming the cycle with each edge's step; the next pass that finds the want held on no cycle clears it. "Held by nothing but its build" means held by no acting edge: the @@ -635,7 +635,7 @@ the principle that settles it, cited as "design 47 G A-n". (kind 1) alone: a real import cycle is refused by the language's own build, and one found only because imports are given to every artifact of a module is not a cycle of what is built. (2) No delivery edge (kinds 2, 4, 5, 6) ends at a package artifact: a package is delivered only inside what uses it, which a kind-1 edge carries, so such an edge is not - made and cannot close a cycle. How it is checked: the indexer's cycle rule accepts today's trunk catalogue and G's own + made and cannot close a cycle. How it is checked: the indexer's cycle rule accepts today's trunk catalog and G's own (the dry run's entries, kept as test data), and refuses a cycle with a build edge among delivered artifacts, naming them. - **A-334** (sharpens A-328; §29, §65, §268; principle 5) In a group take-in that changes the runner, the runner is the -- 2.54.0 From 712eca24ad120a547456cc83bb7d8d372a08087b Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:27:56 +0100 Subject: [PATCH 12/17] Answer A-335: the ten repositories still on version 1 join G's form (the operator's yes) Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 6 ++++++ 1 file changed, 6 insertions(+) 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 0d2bc6c3..989ee84f 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 @@ -642,3 +642,9 @@ the principle that settles it, cited as "design 47 G A-n". acting part the other members wait on, so it goes first as the node-engine does (§268): its member is wanted on its own pipeline-ended once that passed, ahead of the group. The other members keep §29: their pipelines run on the new runner once it runs, and they are wanted together on group-ended. The bound stays a failure bound only. +- **A-335** (§368, §583; principle 5; the operator, 2026-11-13 about 02:30 CET: yes) Every module on the trunk joins G's + form, not only G's own: the ten repositories whose 24 manifests still say `"version": "1"` (mesh-media-catalog, + Link2Pay, de-spiegel, photos, okioki, car-hunter, f1-circuits, snake, txt-game, amqp-email-forwarder) are members of + G's group, each manifest's `version` written as §583 says (the `MAJOR.MINOR` of its newest published version through + `builder_versions`, `0.1` for one with none). §368's rule keeps no old form. How it is checked: G's judge accepts every + trunk manifest at G's heads (the dry run's mesh-wide read, again before the push). -- 2.54.0 From cbd32e3fa467f1d01fd1154c638a75b7208a4a13 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:35:19 +0100 Subject: [PATCH 13/17] Answer A-336: a take-in heard before its branch's half starts with no steps Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 3 +++ 1 file changed, 3 insertions(+) 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 989ee84f..d4242f9d 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 @@ -648,3 +648,6 @@ the principle that settles it, cited as "design 47 G A-n". G's group, each manifest's `version` written as §583 says (the `MAJOR.MINOR` of its newest published version through `builder_versions`, `0.1` for one with none). §368's rule keeps no old form. How it is checked: G's judge accepts every trunk manifest at G's heads (the dry run's mesh-wide read, again before the push). +- **A-336** (A-327, §200; principles 3, 7) A take-in heard before its branch's catalog half is held starts its pipelines + with no steps, never with steps placed from empty entries (§200: nothing new of a branch is acted on until its half is + held); the path of A-327 places them once the half is held. -- 2.54.0 From e7e3691799448bf4eb35138b38feac7b69661785 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:42:06 +0100 Subject: [PATCH 14/17] A-336 holds for every start of a pipeline, not only a take-in Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 d4242f9d..28ce589e 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 @@ -648,6 +648,6 @@ the principle that settles it, cited as "design 47 G A-n". G's group, each manifest's `version` written as §583 says (the `MAJOR.MINOR` of its newest published version through `builder_versions`, `0.1` for one with none). §368's rule keeps no old form. How it is checked: G's judge accepts every trunk manifest at G's heads (the dry run's mesh-wide read, again before the push). -- **A-336** (A-327, §200; principles 3, 7) A take-in heard before its branch's catalog half is held starts its pipelines +- **A-336** (A-327, §200; principles 3, 7) Any start of a pipeline (a take-in, a package published) heard before its branch's catalog half is held starts its pipelines with no steps, never with steps placed from empty entries (§200: nothing new of a branch is acted on until its half is held); the path of A-327 places them once the half is held. -- 2.54.0 From b216d914f747d525ba30281c1e4b56e5596ae366 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:47:09 +0100 Subject: [PATCH 15/17] Answer A-337: the judge counts and finds declarers over the whole trunk case Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 5 +++++ 1 file changed, 5 insertions(+) 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 28ce589e..30baf99b 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 @@ -651,3 +651,8 @@ the principle that settles it, cited as "design 47 G A-n". - **A-336** (A-327, §200; principles 3, 7) Any start of a pipeline (a take-in, a package published) heard before its branch's catalog half is held starts its pipelines with no steps, never with steps placed from empty entries (§200: nothing new of a branch is acted on until its half is held); the path of A-327 places them once the half is held. +- **A-337** (§712, ADR 0579 §2; principles 3, 7) "Refusing only what the revision causes" takes the trunk case as it + stands: the judge counts old sections and finds the declaring modules over every trunk-case manifest that decodes, + accepted by its own rules or not, so a trunk manifest the new rules refuse still counts and still declares. A trunk-case + manifest that does not decode is named in the verdict's report. How it is checked: G's judge on G's heads against + today's unmigrated trunk refuses none of G's 169 manifests for a count or a declarer (the dry run's re-creation). -- 2.54.0 From 50c4980a491b409709b8586170ddc55703326bb9 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 02:47:38 +0100 Subject: [PATCH 16/17] A-337: the glossary's word, the manifest validator Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 30baf99b..eb023a72 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 @@ -652,7 +652,7 @@ the principle that settles it, cited as "design 47 G A-n". with no steps, never with steps placed from empty entries (§200: nothing new of a branch is acted on until its half is held); the path of A-327 places them once the half is held. - **A-337** (§712, ADR 0579 §2; principles 3, 7) "Refusing only what the revision causes" takes the trunk case as it - stands: the judge counts old sections and finds the declaring modules over every trunk-case manifest that decodes, + stands: the manifest validator counts old sections and finds the declaring modules over every trunk-case manifest that decodes, accepted by its own rules or not, so a trunk manifest the new rules refuse still counts and still declares. A trunk-case - manifest that does not decode is named in the verdict's report. How it is checked: G's judge on G's heads against + manifest that does not decode is named in the verdict's report. How it is checked: G's manifest validator on G's heads against today's unmigrated trunk refuses none of G's 169 manifests for a count or a declarer (the dry run's re-creation). -- 2.54.0 From ed8b3bbd98e798c1335718e7695d67fb2fe20372 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 13 Nov 2026 08:52:09 +0100 Subject: [PATCH 17/17] Answer A-338: f1-circuits' cache and Link2Pay's logs are class cache Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 3 +++ 1 file changed, 3 insertions(+) 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 eb023a72..08786da7 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 @@ -656,3 +656,6 @@ the principle that settles it, cited as "design 47 G A-n". accepted by its own rules or not, so a trunk manifest the new rules refuse still counts and still declares. A trunk-case manifest that does not decode is named in the verdict's report. How it is checked: G's manifest validator on G's heads against today's unmigrated trunk refuses none of G's 169 manifests for a count or a declarer (the dry run's re-creation). +- **A-338** (A-335, ADR 0233; principle 7; the operator, 2026-11-13 about 03:50 CET: "it's a poc") The two trunk manifests + the manifest validator refuses once they change, for a written directory with no data declared, declare it in G's + change: f1-circuits' `cache` and Link2Pay's `logs`, both class `cache`. -- 2.54.0