The node-engine composes again when a build it waits on is done (issue 774) #181

Merged
jschoubben merged 1 commits from fix/build-not-done-holds-one-module into main 2026-10-30 18:53:09 +00:00
Member

selfcompose watches the builder's builds bucket and makes a pass on a done build of a wanted module (granted by NodeComposeReads). A test replays 19:30: the want moves to a build still building, the module is held with no done build yet, the build lands and the module is handed with no other change. Pins mesh-sdk 9685990.

Please wait for mesh/check to pass before merging (today's 19:13 and 19:30 faults both merged ahead of their check). Merge mesh-sdk first.

Reviewed-by: rev-sweep@shanks at 33131dcbfe

selfcompose watches the builder's builds bucket and makes a pass on a done build of a wanted module (granted by NodeComposeReads). A test replays 19:30: the want moves to a build still building, the module is held with no done build yet, the build lands and the module is handed with no other change. Pins mesh-sdk 9685990. Please wait for mesh/check to pass before merging (today's 19:13 and 19:30 faults both merged ahead of their check). Merge mesh-sdk first. Reviewed-by: rev-sweep@shanks at 33131dcbfe77967c84312005b42660f983939d7b
mesh-tools added 1 commit 2026-10-30 18:52:27 +00:00
Compose again when a wanted build lands, so a node that waited on a build is not left refused until another input moves (issue 774)
mesh/delivery merged: source.main moved to novox/mesh-host@b133a8949dcb
mesh/delivery-group group fix/build-not-done-holds-one-module merged: every member is merged
mesh/check checking 33131dcbfe77 on 2ae7c53376e8 | novox/mesh-host#181 in group fix/build-not-done-holds-one-module
33131dcbfe
At 19:30 on 2026-10-30 node-tools' want moved to a build not yet done; once it landed, ace, g14 and shanks stayed
refused until some other input moved (g14 and shanks at 19:40, ace after a restart), since the composer watched no
build.

Quick fix: compose again on a timer while anything is held. Thorough fix: the composer watches the builder's builds
(within the node's compose reads, NodeComposeReads) and makes a pass when a done build of a module the node wants, at
its want's or the trunk's build, lands; nothing else moves it. With mesh-sdk 9685990a (pinned here) a running module
whose build is not done is held, keeping what runs, so the pass that waited composes it as soon as it lands. Chose
thorough: event-driven, no poll.
Author
Member

Delivery novox/mesh-host@33131dcbfe77 — merged since 2026-10-30T18:53:12Z

Source — source.main moved to novox/mesh-host@b133a8949d. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.

Group fix/build-not-done-holds-one-module: novox/mesh-host@33131dcbfe, novox/mesh-sdk@9685990a15

Transitions

  • 2026-10-30 18:52 (new) → proposed (announced): novox/mesh-host#181's head announced
  • 2026-10-30 18:52 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-10-30 18:53 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@33131dcbfe77` — **merged** since 2026-10-30T18:53:12Z **Source** — source.main moved to novox/mesh-host@b133a8949dcb. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `fix/build-not-done-holds-one-module`: novox/mesh-host@33131dcbfe77, novox/mesh-sdk@9685990a15ed **Transitions** - 2026-10-30 18:52 (new) → proposed (announced): novox/mesh-host#181's head announced - 2026-10-30 18:52 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-10-30 18:53 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`.
jschoubben merged commit b133a8949d into main 2026-10-30 18:53:09 +00:00
jschoubben deleted branch fix/build-not-done-holds-one-module 2026-10-30 18:53:10 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-host#181