Issue 890, ADR 0552. Group feat/890-placement with mesh-sdk and mesh-catalog.
When every level passed and some packages are unmet, the checker keeps the passes and asks those packages again (Packages = the unmet ones, Needs named) so a node with the need tests them; a declined ask is put again under a new id; it fails if a placed answer still leaves a package unmet, or if the ask is still declined 30 minutes after the first decline (naming the need). Nothing is counted twice. mesh-delivery-checker pins mesh-sdk 33395f68.
Tests: TestOnlyThePackageWithoutAKeptVerdictRuns (unmet, decline, placed ask with Packages, fixture/outside never kept, no double count, the bound). Try try-1793020140266724572 passed.
Delivery order: the build modules should reach the machines before the checker; an old checker ignores unmet (the package is left untested, as NOT RUN today) and an old build module reports none (nothing is placed), so a mixed state degrades to today's behaviour.
Issue 890, ADR 0552. Group feat/890-placement with mesh-sdk and mesh-catalog.
When every level passed and some packages are unmet, the checker keeps the passes and asks those packages again (Packages = the unmet ones, Needs named) so a node with the need tests them; a declined ask is put again under a new id; it fails if a placed answer still leaves a package unmet, or if the ask is still declined 30 minutes after the first decline (naming the need). Nothing is counted twice. mesh-delivery-checker pins mesh-sdk 33395f68.
Tests: TestOnlyThePackageWithoutAKeptVerdictRuns (unmet, decline, placed ask with Packages, fixture/outside never kept, no double count, the bound). Try try-1793020140266724572 passed.
Delivery order: the build modules should reach the machines before the checker; an old checker ignores `unmet` (the package is left untested, as NOT RUN today) and an old build module reports none (nothing is placed), so a mixed state degrades to today's behaviour.
Reviewed-by: review-890@shanks at 3073495a06701fb63cb5af099880dfbd02800ff1
A check that landed on ace passed with mesh-build-node's integration tests skipped. The build module now leaves such a
package unmet; the checker keeps the passes and asks the levels from the first unmet one with the need named, putting the
ask again under a new id when a node lacking it declines it. Re-pins mesh-sdk feat/890-placement.
Deliverynovox/mesh-delivery@3073495a0670 — merged since 2026-10-26T13:40:51Z
Source — source.main moved to novox/mesh-delivery@1cbae7d41c. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
2026-10-26 13:26 (new) → proposed (announced): novox/mesh-delivery#72's head announced
2026-10-26 13:26 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-26 13:40 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-delivery@3073495a0670` — **merged** since 2026-10-26T13:40:51Z
**Source** — source.main moved to novox/mesh-delivery@1cbae7d41cd0. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Group** `feat/890-placement`: novox/mesh-catalog@d3423f54ed58, novox/mesh-delivery@3073495a0670, novox/mesh-sdk@33395f68b309
**Transitions**
- 2026-10-26 13:26 (new) → proposed (announced): novox/mesh-delivery#72's head announced
- 2026-10-26 13:26 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-26 13:40 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`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Issue 890, ADR 0552. Group feat/890-placement with mesh-sdk and mesh-catalog.
When every level passed and some packages are unmet, the checker keeps the passes and asks those packages again (Packages = the unmet ones, Needs named) so a node with the need tests them; a declined ask is put again under a new id; it fails if a placed answer still leaves a package unmet, or if the ask is still declined 30 minutes after the first decline (naming the need). Nothing is counted twice. mesh-delivery-checker pins mesh-sdk 33395f68.
Tests: TestOnlyThePackageWithoutAKeptVerdictRuns (unmet, decline, placed ask with Packages, fixture/outside never kept, no double count, the bound). Try try-1793020140266724572 passed.
Delivery order: the build modules should reach the machines before the checker; an old checker ignores
unmet(the package is left untested, as NOT RUN today) and an old build module reports none (nothing is placed), so a mixed state degrades to today's behaviour.Reviewed-by: review-890@shanks at
3073495a06Delivery
novox/mesh-delivery@3073495a0670— merged since 2026-10-26T13:40:51ZSource — source.main moved to novox/mesh-delivery@1cbae7d41c. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Group
feat/890-placement: novox/mesh-catalog@d3423f54ed, novox/mesh-delivery@3073495a06, novox/mesh-sdk@33395f68b3Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.