From f99c0c9e2912520a3500f1612ddfb92e46d24354 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 12 Nov 2026 17:09:10 +0100 Subject: [PATCH] Amend A-293: the newest build is the last trunk build-ended event heard for the module 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, 5 insertions(+), 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 fdcca16e..a01525db 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 @@ -437,4 +437,8 @@ the principle that settles it, cited as "design 47 G A-n". - **A-293** (§421, §628, ADR 0593 §6, issue 1966 U1/U8; principles 1 and 3) In by-entries mode the node-engine still says a placed module's newest build that ended failed as a refused key with the build's words: it hears the builder's build-ended event for that fingerprint (an event, not a read of the builder's builds), so no reader waits - on a build that will never be done; a queued or running build stays unpublished. + on a build that will never be done; a queued or running build stays unpublished. A placed module's newest build is + the last trunk build-ended event (one naming no branch) the engine heard for that module, from the builder's + build-ended events read whole at start and then followed, as the assigner hears them (A-181, §556): a failed end + writes the refused key `..` with the event's words, a later done end of the module supersedes + it, and an end naming a branch moves nothing.