The indexer keeps an unreadable manifest's inputs, so an SDK upgrade judges it again at start (issue 1923) #29

Merged
jschoubben merged 1 commits from fix/1923-stale-none2 into main 2026-10-23 22:35:49 +00:00
Member

Fixes issue 1923: a module value whose manifest an older SDK could not read kept its 'manifest cannot be read' verdict after the SDK was upgraded, until its repository's next merge (met at R4g's switch: the three build modules had no fingerprint and were registered by hand).

  • At a merge (modules.go), a manifest the SDK cannot read now keeps its inputs (tree, lock hashes, named paths) beside None2 instead of dropping them.
  • At start (toolchains.go rejudged), such a value is judged again from manifests. with the running SDK; if it now reads, its kept inputs go through inputsOfNamed as a merge does, FP2 is written and None2 cleared. A manifest still unreadable is left untouched. Values written before this fix keep no inputs and wait for their next merge, as accepted on the issue.

Tests: 1923/AC1, 1923/AC2 (unit), 1923/AC3 (integration, the indexer whole on the bus). Local integration run of all eight modules green on top of #28; try-1792790838512393452 passed (unit 119 run, integration 129 run, 0 failed).

Moves mesh-delivery-indexer (novox).

Reviewed-by: review-fixes@shanks at 32542ebc14
Pushed-by: fix-1923@shanks

Fixes issue 1923: a module value whose manifest an older SDK could not read kept its 'manifest cannot be read' verdict after the SDK was upgraded, until its repository's next merge (met at R4g's switch: the three build modules had no fingerprint and were registered by hand). - At a merge (modules.go), a manifest the SDK cannot read now keeps its inputs (tree, lock hashes, named paths) beside None2 instead of dropping them. - At start (toolchains.go `rejudged`), such a value is judged again from manifests.<digest> with the running SDK; if it now reads, its kept inputs go through `inputsOfNamed` as a merge does, FP2 is written and None2 cleared. A manifest still unreadable is left untouched. Values written before this fix keep no inputs and wait for their next merge, as accepted on the issue. Tests: 1923/AC1, 1923/AC2 (unit), 1923/AC3 (integration, the indexer whole on the bus). Local integration run of all eight modules green on top of #28; try-1792790838512393452 passed (unit 119 run, integration 129 run, 0 failed). Moves mesh-delivery-indexer (novox). Reviewed-by: review-fixes@shanks at 32542ebc14c3a5b5c3477afc170ea947ae2b26e3 Pushed-by: fix-1923@shanks
mesh-tools added 1 commit 2026-10-23 21:30:10 +00:00
Keep an unreadable manifest's inputs and judge its verdict again at start, so an upgraded SDK clears it (issue 1923)
mesh/delivery delivered
mesh/check pass 32542ebc14c3 on 7a88eb0a5609 | unit 122 run, 366 kept | integration 132 run, 414 kept | composition passed on novox
32542ebc14
Author
Member

Delivery novox/mesh-delivery@32542ebc14c3 — delivered since 2026-10-23T22:37:44Z

Delivery plan — builds mesh-delivery-indexer → novox; no bus step

  • tier 0: mesh-delivery-indexer
  • novox: receives mesh-delivery-indexer

Machines

  • mesh-delivery-indexer on every machine running it: sent

Transitions

  • 2026-10-23 21:30 (new) → proposed (announced): novox/mesh-delivery#29's head announced
  • 2026-10-23 22:35 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-23 22:36 held → delivering (release): the operator's hand merge at 00:35, which by the operator's word of 2026-10-24 00:24 releases it (build, publish, deliver until the new setup works); reviewed at its head
  • 2026-10-23 22:37 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says

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

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-delivery@32542ebc14c3` — **delivered** since 2026-10-23T22:37:44Z **Delivery plan** — builds mesh-delivery-indexer → novox; no bus step - tier 0: mesh-delivery-indexer - novox: receives mesh-delivery-indexer **Machines** - mesh-delivery-indexer on every machine running it: sent **Transitions** - 2026-10-23 21:30 (new) → proposed (announced): novox/mesh-delivery#29's head announced - 2026-10-23 22:35 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-23 22:36 held → delivering (release): the operator's hand merge at 00:35, which by the operator's word of 2026-10-24 00:24 releases it (build, publish, deliver until the new setup works); reviewed at its head - 2026-10-23 22:37 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
jschoubben merged commit 55f486e040 into main 2026-10-23 22:35:49 +00:00
jschoubben deleted branch fix/1923-stale-none2 2026-10-23 22:35:50 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-delivery#29