Issue 280: a rebuild of an unchanged source was read as a new bus #153

Merged
mesh-admin merged 1 commits from issues/280-a-rebuild-of-an-unchanged-source-was-read-as-a-new-bus into main 2026-10-06 20:12:07 +00:00
Contributor
  • New issue 280 (located; fixed by mesh-controller PR #99). An image is not byte-reproducible, so ADR 0236's "same artifacts is no move" never held for an image module. A catalogue merge that did not touch the bus rebuilt it, and every send to the control node waited for a planned bus upgrade.
    • The fix: the builder records a source fingerprint per build: module tree, context trees, and bases and toolchains by digest. A rebuild with the fingerprint of the build it repeats is registered with that build's artifacts, so nothing moves.
    • The diagnosis: the wide rebuild came from a file at the repository's root (the merge-check script). That file is shared code under issue 278's rule too, which the controller's what-if confirms. Narrowing that rule is left open in the issue.
  • ADR 0236: a progressive insight on the no-move rule. The rule assumed a rebuild that changes nothing makes the same artifacts. It now also covers a rebuild made from the same source, and the decision stands.

Checks: records.py, index.py and cycle.py all pass.

- **New issue 280** (`located`; fixed by mesh-controller PR #99). An image is not byte-reproducible, so ADR 0236's "same artifacts is no move" never held for an image module. A catalogue merge that did not touch the bus rebuilt it, and every send to the control node waited for a planned bus upgrade. - **The fix:** the builder records a source fingerprint per build: module tree, context trees, and bases and toolchains by digest. A rebuild with the fingerprint of the build it repeats is registered with that build's artifacts, so nothing moves. - **The diagnosis:** the wide rebuild came from a file at the repository's root (the merge-check script). That file is shared code under issue 278's rule too, which the controller's what-if confirms. Narrowing that rule is left open in the issue. - **ADR 0236:** a progressive insight on the no-move rule. The rule assumed a rebuild that changes nothing makes the same artifacts. It now also covers a rebuild made from the same source, and the decision stands. Checks: records.py, index.py and cycle.py all pass.
mesh-admin added 1 commit 2026-10-06 20:11:35 +00:00
Issue 280: a rebuild of an unchanged source was read as a new bus
mesh/merge-gate the mesh is checking this head against every machine
mesh/delivery delivered
897bcce502
An image is not byte-reproducible, so ADR 0236's no-move rule never held
for one; the rule now also reads a build's source. Progressive insight on
ADR 0236 says what the rule assumed and what stands.
mesh-admin merged commit 76c00c15e2 into main 2026-10-06 20:12:07 +00:00
mesh-admin deleted branch issues/280-a-rebuild-of-an-unchanged-source-was-read-as-a-new-bus 2026-10-06 20:12:07 +00:00
Author
Contributor

Delivery novox/hq@897bcce50252 — delivered since 2026-10-09T07:31:48Z

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-06 23:05 (new) → proposed (announced): novox/hq#153's head announced
  • 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on
  • 2026-10-09 07:31 held → delivered (done): merged, and nothing for a walk to move: builds nothing: the change touches no module of the mesh's graph

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/hq@897bcce50252` — **delivered** since 2026-10-09T07:31:48Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-06 23:05 (new) → proposed (announced): novox/hq#153's head announced - 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on - 2026-10-09 07:31 held → delivered (done): merged, and nothing for a walk to move: builds nothing: the change touches no module of the mesh's graph The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#153