Delivery group feat/data-items (mesh-sdk, mesh-host, mesh-catalog, mesh-delivery), one check, one Approve. Decision: ADR 0577 (the node-engine publishes each placed module's data items; disk-load watches them and composes nothing), changing ADR 0571 §5. Fixes issue 1955 in part: disk-load needed 30 to 45 minutes per round on ace, g14 and shanks, and went silent for 45 hours when its mesh-sdk refused a manifest.
Quick fix (a prefix filter in the states reader) not chosen: a fourth hand pin and more logic in mesh-sdk. Thorough fix chosen: one composer per node, disk-load event-driven.
This member: internal/selfcompose/data.go writes . only when it differs and deletes keys of modules that left; a failed run or write is retried on the composer's growing bound; a done build is kept per run and dropped on any change of its key. Pins mesh-sdk c28c645.
Reviewed-by: reviewer-577@shanks at e031758e4a
Pushed-by: builder-577@shanks
Delivery group feat/data-items (mesh-sdk, mesh-host, mesh-catalog, mesh-delivery), one check, one Approve. Decision: ADR 0577 (the node-engine publishes each placed module's data items; disk-load watches them and composes nothing), changing ADR 0571 §5. Fixes issue 1955 in part: disk-load needed 30 to 45 minutes per round on ace, g14 and shanks, and went silent for 45 hours when its mesh-sdk refused a manifest.
Quick fix (a prefix filter in the states reader) not chosen: a fourth hand pin and more logic in mesh-sdk. Thorough fix chosen: one composer per node, disk-load event-driven.
This member: internal/selfcompose/data.go writes <node>.<module> only when it differs and deletes keys of modules that left; a failed run or write is retried on the composer's growing bound; a done build is kept per run and dropped on any change of its key. Pins mesh-sdk c28c645.
Reviewed-by: reviewer-577@shanks at e031758e4a37eb1bdf75f116f67f4926d9a0e7b0
Pushed-by: builder-577@shanks
https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
After a pass that handed a new composition, the node's composer works out its modules' data
items from the inputs it composed from and writes each module's key <node>.<module> of
mesh-host_data only when it differs, deleting the keys of modules that left. Pins mesh-sdk
feat/data-items for the contract and the engine's grant. Two tool-answer tests are merged so
the unit count stays where it was.
Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
The data items after a pass re-read each placed module's build over the bus (about 55 per pass on
ace, g14 and shanks); a done build never changes, so the composer keeps it. The items are now
worked out with the pass's own kept builds and modules run inside the node's own, as composed.
Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
The builder claims a done key again as a new revision, so a build kept as done is dropped on any
write of its key. Data items that could not be worked out or written stay due and owe a pass after
the growing bound, so a first write refused before the state or grant exists is tried again
without waiting for an unrelated composition.
Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
Deliverynovox/mesh-host@e031758e4a37 — merged since 2026-11-01T00:03:20Z
Source — source.main moved to novox/mesh-host@233bb23bbc. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
composed together: pass — the checker's verdict at the members' heads (e2b935f1f425)
Transitions
2026-10-31 23:46 (new) → proposed (announced): novox/mesh-host#191's head announced
2026-10-31 23:46 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-01 00:03 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-host@e031758e4a37` — **merged** since 2026-11-01T00:03:20Z
**Source** — source.main moved to novox/mesh-host@233bb23bbcb1. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Group** `feat/data-items`: novox/mesh-catalog@0c46f47ae57e, novox/mesh-delivery@ddadb75bf474, novox/mesh-host@e031758e4a37, novox/mesh-sdk@c28c645ca406
- composed together: pass — the checker's verdict at the members' heads (e2b935f1f425)
**Transitions**
- 2026-10-31 23:46 (new) → proposed (announced): novox/mesh-host#191's head announced
- 2026-10-31 23:46 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-01 00:03 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`.
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.
Delivery group feat/data-items (mesh-sdk, mesh-host, mesh-catalog, mesh-delivery), one check, one Approve. Decision: ADR 0577 (the node-engine publishes each placed module's data items; disk-load watches them and composes nothing), changing ADR 0571 §5. Fixes issue 1955 in part: disk-load needed 30 to 45 minutes per round on ace, g14 and shanks, and went silent for 45 hours when its mesh-sdk refused a manifest.
Quick fix (a prefix filter in the states reader) not chosen: a fourth hand pin and more logic in mesh-sdk. Thorough fix chosen: one composer per node, disk-load event-driven.
This member: internal/selfcompose/data.go writes . only when it differs and deletes keys of modules that left; a failed run or write is retried on the composer's growing bound; a done build is kept per run and dropped on any change of its key. Pins mesh-sdk c28c645.
Reviewed-by: reviewer-577@shanks at
e031758e4aPushed-by: builder-577@shanks
https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
Delivery
novox/mesh-host@e031758e4a37— merged since 2026-11-01T00:03:20ZSource — source.main moved to novox/mesh-host@233bb23bbc. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Group
feat/data-items: novox/mesh-catalog@0c46f47ae5, novox/mesh-delivery@ddadb75bf4, novox/mesh-host@e031758e4a, novox/mesh-sdk@c28c645ca4Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.