Design 47 follows ADR 0633, 0637, 0638 and 0639: the take-in by the indexer it names, and the group try (issues 1966, 1921) #521

Merged
mesh-tools merged 6 commits from docs/47-try-and-take-in into main 2026-11-05 20:06:31 +00:00
Member

Design 47 (delivery from commit to delivered) gains two subsections and the glossary two words, from accepted decisions:

  • A try: a delivery group's check at exact commits (ADR 0637, 0638, 0639): members at exact commits, the group check's own code including the composition on every placed node, error rather than pass when it could not judge, kept verdicts shared with the pull-request check, no try in the normal flow; the checker's events try.started / try.ended and the indexer's candidate from them, its recovery at start (consumer first, then checker_tries, then the events); the tools against the four lines of a module's tools; the two reads that stay under ADR 0596 §3 until issue 1966 moves them.
  • Taken in by the indexer it names (ADR 0633 v33, ADR 0639 §7-§10): the revision names its indexer, validation with the seat definitions its merges carry, the build fixed at start, own build unknown, a group taken in as one revision, the bounded and recoverable waits and both hand acts emitting take-in.taken, with ADR 0633's live case restored.
  • Glossary (Delivery): try, pending revision.

Reviewed by architectural domain: one round by the four domain reviewers (security and upgrade, seams and tools, running and testing, health and events); every must-finding was fixed in the code (mesh-delivery #155, #156) and written down as ADR 0639, which this text cites clause by clause; the notes are on issue 1921 (note 39). A second round was not run: the amendment describes only accepted records and delivered code (a bent rule, said to the operator). Live: #155 and #156 were taken in by the indexer they named, as one revision, with no hand act (2026-11-05). hq's checks pass (go test ./...).

Still open, listed under "What is not decided here": how long the stream checks keeps its events.

Reviewed-by: review-seams-and-tools@shanks at b926db338d

https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i

Design 47 (delivery from commit to delivered) gains two subsections and the glossary two words, from accepted decisions: - **A try: a delivery group's check at exact commits** (ADR 0637, 0638, 0639): members at exact commits, the group check's own code including the composition on every placed node, error rather than pass when it could not judge, kept verdicts shared with the pull-request check, no try in the normal flow; the checker's events `try.started` / `try.ended` and the indexer's candidate from them, its recovery at start (consumer first, then `checker_tries`, then the events); the tools against the four lines of a module's tools; the two reads that stay under ADR 0596 §3 until issue 1966 moves them. - **Taken in by the indexer it names** (ADR 0633 v33, ADR 0639 §7-§10): the revision names its indexer, validation with the seat definitions its merges carry, the build fixed at start, `own build unknown`, a group taken in as one revision, the bounded and recoverable waits and both hand acts emitting `take-in.taken`, with ADR 0633's live case restored. - Glossary (Delivery): **try**, **pending revision**. Reviewed by architectural domain: one round by the four domain reviewers (security and upgrade, seams and tools, running and testing, health and events); every must-finding was fixed in the code (mesh-delivery #155, #156) and written down as ADR 0639, which this text cites clause by clause; the notes are on issue 1921 (note 39). A second round was not run: the amendment describes only accepted records and delivered code (a bent rule, said to the operator). Live: #155 and #156 were taken in by the indexer they named, as one revision, with no hand act (2026-11-05). hq's checks pass (`go test ./...`). Still open, listed under "What is not decided here": how long the stream `checks` keeps its events. Reviewed-by: review-seams-and-tools@shanks at b926db338dcfbb4ca1e65980b3590c95b7b1079f https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
mesh-tools added 6 commits 2026-11-05 19:27:30 +00:00
A try now checks a delivery group at exact commits with the check's own code, and a
merge's take-in waits for the indexer its revision names, so design 47 says both where
its checks and its source revision are described. The indexer hears a try on the
checker's events rather than reading its state (ADR 0596); the record changing
ADR 0637 §4 to say so is to follow. The glossary gains try and pending revision.

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
The checker says a whole try's start and end as try.started and try.ended on its stream
checks, and the indexer recovers open tries through checker_tries; the record changing
ADR 0637 §4 carries this and is cited until its number is known.

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
ADR 0638 makes the candidate from the checker's events and decides that the indexer
creates its consumer, asks checker_tries and fixes the candidates before it handles
an event; the design now says so and how it is checked.

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
The try and the take-in described seams, failure paths, live cases and the health
chain less exactly than the release builds them: the reads that stay until issue
1966, the bus form of pending and the tryevent contract, the try's tools against the
four lines, a checker_tries that does not answer, try events never lost, what a
narrowed try keeps, the finding and the condition keeper, and both live cases. Rulings
no record decides are marked as the review's.

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
The rulings of round 1 now rest on a record, clause by clause, instead of on the
review; the indexer's own build is set once from the build it was started with, so a
process being replaced cannot take in with its old manifest validator (ADR 0639 §7).

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
Design 47 cites ADR 0639 §9 for the hand drop, so both hand acts are said to clear take-in-waits
mesh/delivery merged: source.main moved to novox/hq@1ca5a3a1331f
mesh/check being carried to b926db338dcf on 1ca5a3a1331f | from 674f88f9abb8
b926db338d
ADR 0639 v9 gives the drop its own clause and moves the checks to clause 10.

Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
Author
Member

Delivery novox/hq@b926db338dcf — merged since 2026-11-05T20:06:33Z

Source — source.main moved to novox/hq@1ca5a3a133. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.

Transitions

  • 2026-11-05 19:27 (new) → proposed (announced): novox/hq#521's head announced
  • 2026-11-05 19:27 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
  • 2026-11-05 20:06 ready → merged (merged): on the trunk its modules follow: merged there

The commit's note under refs/notes/mesh-plan keeps every transition of this change up to its merge: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/hq@b926db338dcf` — **merged** since 2026-11-05T20:06:33Z **Source** — source.main moved to novox/hq@1ca5a3a1331f. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Transitions** - 2026-11-05 19:27 (new) → proposed (announced): novox/hq#521's head announced - 2026-11-05 19:27 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false) - 2026-11-05 20:06 ready → merged (merged): on the trunk its modules follow: merged there The commit's note under `refs/notes/mesh-plan` keeps every transition of this change up to its merge: `git log --notes=mesh-plan`.
mesh-tools merged commit 1ca5a3a133 into main 2026-11-05 20:06:31 +00:00
mesh-tools deleted branch docs/47-try-and-take-in 2026-11-05 20:06:32 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#521