Remove the PR description draft from the branch; it is kept outside the repository
mesh/delivery merged: source.main moved to novox/mesh-delivery@883d976b5f00
mesh/check checking ba4bfea0a407 on 883d976b5f00
mesh/delivery merged: source.main moved to novox/mesh-delivery@883d976b5f00
mesh/check checking ba4bfea0a407 on 883d976b5f00
This commit is contained in:
@@ -1,15 +0,0 @@
|
||||
Builder tool builder_announce_again: announce a done build again
|
||||
|
||||
Recovery of photos and link2pay on novox, 2026-10-29. The controller took both builds in on 10-28 and later lost the composition
|
||||
and the grant; its take-in composes only when a write of the build key arrives, and no tool wrote a done key again
|
||||
(builder_build_again refuses done keys). Every want for them was refused.
|
||||
|
||||
Quick fix (this change, about an hour): builder_announce_again (module, fp, why) rewrites a done key with its own bytes as a
|
||||
new revision of the same key (content, artifacts, manifest identical), by compare-and-set; refuses a key that is not done; logs
|
||||
who and why. It goes through the reasks state like builder_build_again.
|
||||
Thorough fix (not here): ADR 0547 and design 47, the node agent composes its own and the assigner stops waiting on controller
|
||||
compositions, so a lost composition cannot block a want. Chosen quick because the recovery blocks two live modules; the thorough
|
||||
fix is queued under that ADR.
|
||||
|
||||
Tests: one table-driven unit test (5 cases) in internal/build/announce_test.go; manifest test lists the tool.
|
||||
Reviewed-by: (to be filled from the reviewer)
|
||||
Reference in New Issue
Block a user