Make checker_status count only steps that can still run, so a key a build module left running is not read as a full node (issue 1890) #24

Merged
jschoubben merged 1 commits from fix/1890-checker-stale-steps into main 2026-10-23 11:01:11 +00:00
Member

Issue 1890. checker_status counted every step key a build module left 'running' (some since 2026-10-21) as a running step, so the operator and the lead read every node as full while checks waited. The checker's own capacity (buildrun.Places, in memory, freed at the step bound) was never held by them: this changes what the status says, not how checks are placed.

  • Keys past the step bound, or whose build module is not running on that node (node-engine.have), move to a separate left_running list with the reason.
  • Groups made only of hq pull requests are no longer listed as unjudged.
  • A test proves a step that never ends fails its check and frees its node's place.

Not in scope (issue 1890 note 2): mesh-sdk's buildstep never ends a step of a stopped module; a key past the bound may still run on its node.

Try: passed (unit and integration) on e7620287.

Reviewed-by: review-1890@shanks at e762028760

Issue 1890. checker_status counted every step key a build module left 'running' (some since 2026-10-21) as a running step, so the operator and the lead read every node as full while checks waited. The checker's own capacity (buildrun.Places, in memory, freed at the step bound) was never held by them: this changes what the status says, not how checks are placed. - Keys past the step bound, or whose build module is not running on that node (node-engine.have), move to a separate `left_running` list with the reason. - Groups made only of hq pull requests are no longer listed as unjudged. - A test proves a step that never ends fails its check and frees its node's place. Not in scope (issue 1890 note 2): mesh-sdk's buildstep never ends a step of a stopped module; a key past the bound may still run on its node. Try: passed (unit and integration) on e7620287. Reviewed-by: review-1890@shanks at e7620287603227c57627a329e1f4a7320e886e62
mesh-tools added 1 commit 2026-10-23 10:36:05 +00:00
Make checker_status count only steps that can still run, so a key a build module left running is not read as a full node (issue 1890)
mesh/delivery delivered
mesh/check pass e76202876032 on b714eab995a5 | unit 422 run, 0 kept | integration 467 run, 0 kept | over bound: integration (slowest integration mesh-…
e762028760
The checker's own places are released when a step ends or its wait passes the step bound; checker_status read every
'running' key in the build modules' steps buckets as a step in flight, so keys left by stopped, restarted or unassigned
build modules looked like full nodes. It now lists them under left_running with why (past the bound, module not on the
node, module not running), and leaves hq-only groups out of the unjudged candidates.
Author
Member

Delivery novox/mesh-delivery@e76202876032 — delivered since 2026-10-23T11:03:50Z

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

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

Machines

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

Transitions

  • 2026-10-23 10:36 (new) → proposed (announced): novox/mesh-delivery#24's head announced
  • 2026-10-23 10:39 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-23 10:39 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-23 11:01 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-23 11:01 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
  • 2026-10-23 11:03 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@e76202876032` — **delivered** since 2026-10-23T11:03:50Z **Delivery plan** — builds mesh-delivery-checker → novox; no bus step - tier 0: mesh-delivery-checker - novox: receives mesh-delivery-checker **Machines** - mesh-delivery-checker on every machine running it: sent **Transitions** - 2026-10-23 10:36 (new) → proposed (announced): novox/mesh-delivery#24's head announced - 2026-10-23 10:39 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-23 10:39 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-23 11:01 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-23 11:01 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit - 2026-10-23 11:03 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 75a4821eff into main 2026-10-23 11:01:11 +00:00
jschoubben deleted branch fix/1890-checker-stale-steps 2026-10-23 11:01:11 +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#24