A-354/A-360: the indexer serves the first view modules again and says each change on its views family, so grants is not frozen (C5).
A-355: modules/mesh-delivery-watchman/go.mod requires and replaces nodebuildimage and nodebuildnode. Every G build of a mesh-delivery module (indexer, assigner, builder, teller, checker, view, pipeline, grants, bridge) failed on this alone at 14:50-14:55 UTC.
A-357/A-361: kind 6 edges (B runs a version that serves A) come from a package's calls words too, obeying the cycle rule, so the start order puts the indexer and gate before the tool runner.
Quick vs thorough: thorough (the order is derived from declared calls for every module); the check refusing an undeclared called verb is queued after G.
Tests: unit suite passes; manifest judge built at this head and at the trunk accepts every manifest (184 per case, 0 refused, identical verdicts).
Group with mesh-sdk fix/47-G-start. The gate is down (G not delivered): merged in the forge by the operator; G is placed by the written start list.
Reviewed-by: mesh-code-reviewer@shanks at 536c573223
Design 47, milestone G, start fixes (lead answers A-354, A-355, A-357, A-360, A-361 in hq design/47-G-lead-answers-30).
- A-354/A-360: the indexer serves the first view `modules` again and says each change on its views family, so grants is not frozen (C5).
- A-355: modules/mesh-delivery-watchman/go.mod requires and replaces nodebuildimage and nodebuildnode. Every G build of a mesh-delivery module (indexer, assigner, builder, teller, checker, view, pipeline, grants, bridge) failed on this alone at 14:50-14:55 UTC.
- A-357/A-361: kind 6 edges (B runs a version that serves A) come from a package's `calls` words too, obeying the cycle rule, so the start order puts the indexer and gate before the tool runner.
Quick vs thorough: thorough (the order is derived from declared calls for every module); the check refusing an undeclared called verb is queued after G.
Tests: unit suite passes; manifest judge built at this head and at the trunk accepts every manifest (184 per case, 0 refused, identical verdicts).
Group with mesh-sdk fix/47-G-start. The gate is down (G not delivered): merged in the forge by the operator; G is placed by the written start list.
Reviewed-by: mesh-code-reviewer@shanks at 536c5732238e6f471b4ba379f003375de2e97e8e
https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
cmd/mesh-delivery-watchman imports the seats nodebuildimage and nodebuildnode, but its go.mod named only
nodebuildgo, so the watchman did not build from main. Every G part builds from main before any is placed.
Builds: design 47 G A-355
Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
The grants part reads mesh-delivery-indexer.modules as one of its five first views; G's indexer stopped serving it
(deb88b17), so the read is a failed gap and grants issues no new right once G's indexer runs. The tool comes back in
its form before G (the first-view tool over the state modules, its callers list), answered from the newest trunk
revision, until grants reads the catalog half.
Builds: design 47 G A-354
Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
A package's `calls` names the seat verbs its code calls on a module's behalf in the invokes form; the indexer derives
an edge of kind 6 from such a word against the verb's server, as from `invokes`, so every module built against the
SDK is delivered after the running versions that serve its start. The path for stated capability words stays.
Builds: design 47 G A-357, §47 (kind 6)
Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
The grants part follows the first view modules on the indexer's views family after its first ask. G's indexer keeps
no state modules, so nothing said its changes and a newly merged module reached grants only when it asked again. A
new trunk revision that changes the modules is now said as the mark of modules at that revision's number (the number
the first view answers every value at), after which a reader short of it asks the first view once; views.modules is
among the indexer's emits.
Builds: design 47 G A-360, A-354
Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
The graph left out only invoked verbs on a cycle, so a package's seat call word's kind-6 edge stayed on a cycle (the
gate and the indexer, the gate and mesh-hand-acts at every SDK release). The module graph's LeaveOut now runs over the
entries with each package's seat call words counted among the invokes of every module built against it, and what it
leaves out joins each entry's LeftOut.
Builds: design 47 G A-361, A-357; ADR 0614 §3
Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
Deliverynovox/mesh-delivery@536c5732238e — merged since 2026-11-13T19:08:14Z
Source — source.main moved to novox/mesh-delivery@bac26c8a28. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
2026-11-13 18:55 (new) → proposed (announced): novox/mesh-delivery#216's head announced
2026-11-13 18:55 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-13 19:08 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/mesh-delivery@536c5732238e` — **merged** since 2026-11-13T19:08:14Z
**Source** — source.main moved to novox/mesh-delivery@bac26c8a288b. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Group** `fix/47-G-start`: novox/mesh-delivery@536c5732238e, novox/mesh-sdk@ab355879f00b
**Transitions**
- 2026-11-13 18:55 (new) → proposed (announced): novox/mesh-delivery#216's head announced
- 2026-11-13 18:55 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-13 19:08 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-act:switched.owed.21879.novox/mesh-delivery.216.536c5732238e6f471b4ba379f003375de2e97e8e.view -->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Design 47, milestone G, start fixes (lead answers A-354, A-355, A-357, A-360, A-361 in hq design/47-G-lead-answers-30).
modulesagain and says each change on its views family, so grants is not frozen (C5).callswords too, obeying the cycle rule, so the start order puts the indexer and gate before the tool runner.Quick vs thorough: thorough (the order is derived from declared calls for every module); the check refusing an undeclared called verb is queued after G.
Tests: unit suite passes; manifest judge built at this head and at the trunk accepts every manifest (184 per case, 0 refused, identical verdicts).
Group with mesh-sdk fix/47-G-start. The gate is down (G not delivered): merged in the forge by the operator; G is placed by the written start list.
Reviewed-by: mesh-code-reviewer@shanks at
536c573223https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
Delivery
novox/mesh-delivery@536c5732238e— merged since 2026-11-13T19:08:14ZSource — source.main moved to novox/mesh-delivery@bac26c8a28. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Group
fix/47-G-start: novox/mesh-delivery@536c573223, novox/mesh-sdk@ab355879f0Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.