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

This commit is contained in:
2026-10-29 17:59:28 +01:00
parent fb7ad5cd73
commit ba4bfea0a4
-15
View File
@@ -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)