Every build module runs the failure contract's conformance kit, and the catalogue refuses one that does not (issue 1901) #516

Merged
mesh-tools merged 4 commits from fix/1901-failure-contract into main 2026-10-26 23:44:17 +00:00
Member

Issue 1901, group fix/1901-failure-contract (mesh-sdk merges first). mesh-build-go and mesh-build-node report test failures through mesh-sdk's buildstep parsers and run conformance.Run in kit_test.go; checks/failurekit refuses a module claiming a node-build-* seat with a test tool but no kit (mesh-build-image is exempt: no test step). Pins mesh-sdk v0.1.14-0.20261026233910-a2759ec92ec9.

Merged with today's main: sdk pins taken from main then repinned; checks/failurekit/reads-outside in main's path-list form (modules//module.json, modules/mesh-build-). Folded: mesh-build-node fetch_test's password 'pw' could occur in a random workspace name (fails on plain main too); now 's3cret-pw!'.

Tests: unit and go vet -tags integration green in failurekit, mesh-build-go, mesh-build-node; all 22 catalogue checks pass. Counts within budget (mesh-build-go 173 unit / 17 integration, mesh-build-node 92 / 8, failurekit 2).

Reviewed-by: review-1901k@shanks at 4548b97910 (the contract)
Reviewed-by: review-1901m@shanks at e8a953818c (the merge with main)

Issue 1901, group fix/1901-failure-contract (mesh-sdk merges first). mesh-build-go and mesh-build-node report test failures through mesh-sdk's buildstep parsers and run conformance.Run in kit_test.go; checks/failurekit refuses a module claiming a node-build-* seat with a test tool but no kit (mesh-build-image is exempt: no test step). Pins mesh-sdk v0.1.14-0.20261026233910-a2759ec92ec9. Merged with today's main: sdk pins taken from main then repinned; checks/failurekit/reads-outside in main's path-list form (modules/*/module.json, modules/mesh-build-*). Folded: mesh-build-node fetch_test's password 'pw' could occur in a random workspace name (fails on plain main too); now 's3cret-pw!'. Tests: unit and go vet -tags integration green in failurekit, mesh-build-go, mesh-build-node; all 22 catalogue checks pass. Counts within budget (mesh-build-go 173 unit / 17 integration, mesh-build-node 92 / 8, failurekit 2). Reviewed-by: review-1901k@shanks at 4548b9791015cb8ce604351a5a3198365b1682db (the contract) Reviewed-by: review-1901m@shanks at e8a953818c710e7f16eb9229d42d71b43a9ff874 (the merge with main)
mesh-tools added 4 commits 2026-10-26 23:43:20 +00:00
mesh-build-node kept the first fifteen lines of node --test's output, so a passing line of the first file stood for the
failure. Both build modules now parse through the SDK (go test -json, node --test's TAP report written to a file, the
type-check and go vet as console failures), name themselves in the result, and run the SDK's captured cases; the
catalogue check failurekit refuses a node-build-* module with a test step whose tests do not run the kit.
Merge main into fix/1901-failure-contract: pin mesh-sdk a2759ec (the group's sdk head), the failure kit check's marker lists what it reads (issue 1936), and the registry test's password can no longer match a random workspace name (issue 1901)
mesh/delivery merged: source.main moved to novox/mesh-catalog@64530a8dcb08
mesh/delivery-group group fix/1901-failure-contract merged: every member is merged
mesh/check checking e8a953818c71 on 64530a8dcb08 | novox/mesh-catalog#516 in group fix/1901-failure-contract
e8a953818c
Author
Member

Delivery novox/mesh-catalog@e8a953818c71 — merged since 2026-10-26T23:44:19Z

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

Group fix/1901-failure-contract: novox/mesh-catalog@e8a953818c, novox/mesh-delivery@f4a86f5884, novox/mesh-sdk@a2759ec92e

Transitions

  • 2026-10-26 23:43 (new) → proposed (announced): novox/mesh-catalog#516's head announced
  • 2026-10-26 23:43 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 23:44 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-catalog@e8a953818c71` — **merged** since 2026-10-26T23:44:19Z **Source** — source.main moved to novox/mesh-catalog@64530a8dcb08. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves. **Group** `fix/1901-failure-contract`: novox/mesh-catalog@e8a953818c71, novox/mesh-delivery@f4a86f58843d, novox/mesh-sdk@a2759ec92ec9 **Transitions** - 2026-10-26 23:43 (new) → proposed (announced): novox/mesh-catalog#516's head announced - 2026-10-26 23:43 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 23:44 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`.
Author
Member

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.

mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
mesh-tools merged commit 64530a8dcb into main 2026-10-26 23:44:17 +00:00
mesh-tools deleted branch fix/1901-failure-contract 2026-10-26 23:44:17 +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-catalog#516