Read the one genesis bundle mesh-host carries now (issue 146) #284

Merged
mesh-admin merged 1 commits from fix/146-controller-test-one-bundle into main 2026-10-12 23:21:15 +00:00
Contributor

What

  • internal/broker/genesis_template_test.go: TestTheInstallersFirstUserListIsWhatTheControllerWouldCompose reads examples/foundation-first-node.lock. mesh-host #96 (issue 146, ADR 0331 §2) deleted foundation-first-node-nats.lock and kept its content under the one bundle's name.
  • testdata/beside: the captured mesh-host copy moves to mesh-host main 7a41e12. That is the one bundle, plus internal/apply/placement_guard.go.captured at the same commit, as CAPTURED requires. CAPTURED names the new file and commit.

Why

In a merge check, mesh-host is cloned at main beside the controller, and the test read a file main no longer has. So mesh/repo-check failed on controller main and on every controller pull request.

How it was tested

  • internal/broker and internal/catalogue pass against the captured copy, and also against mesh-host and mesh-catalog main checked out beside the controller (MESH_CHECK_BESIDE), as the build seat runs them.
  • sh merge-check.sh against a throwaway Postgres (postgres:17-alpine on 127.0.0.1:55546): every package passes except TestATierPutsABrokenModuleBackAtOnce and TestKeepingRenewsAcrossManyAges. This change touches neither (it is one test path and captured testdata). Both passed when rerun alone. I think they are timing-sensitive under the full parallel suite, but I have not confirmed it.

Fixes the repo-check fallout of issue 146.

## What - `internal/broker/genesis_template_test.go`: `TestTheInstallersFirstUserListIsWhatTheControllerWouldCompose` reads `examples/foundation-first-node.lock`. mesh-host #96 (issue 146, ADR 0331 §2) deleted `foundation-first-node-nats.lock` and kept its content under the one bundle's name. - `testdata/beside`: the captured mesh-host copy moves to mesh-host main 7a41e12. That is the one bundle, plus `internal/apply/placement_guard.go.captured` at the same commit, as CAPTURED requires. CAPTURED names the new file and commit. ## Why In a merge check, mesh-host is cloned at main beside the controller, and the test read a file main no longer has. So `mesh/repo-check` failed on controller main and on every controller pull request. ## How it was tested - `internal/broker` and `internal/catalogue` pass against the captured copy, and also against mesh-host and mesh-catalog main checked out beside the controller (`MESH_CHECK_BESIDE`), as the build seat runs them. - `sh merge-check.sh` against a throwaway Postgres (postgres:17-alpine on 127.0.0.1:55546): every package passes except `TestATierPutsABrokenModuleBackAtOnce` and `TestKeepingRenewsAcrossManyAges`. This change touches neither (it is one test path and captured testdata). Both passed when rerun alone. I think they are timing-sensitive under the full parallel suite, but I have not confirmed it. Fixes the repo-check fallout of issue 146.
mesh-admin added 1 commit 2026-10-12 23:16:19 +00:00
Read the one genesis bundle mesh-host carries now (hq issue 146, ADR 0331)
mesh/merge-gate head 5795e03fad7b merged into trunk cbac703e817d — pass: the change touches no module of the mesh's graph
mesh/repo-check head 5795e03fad7b merged into trunk cbac703e817d — pass: its merge-check.sh passed
mesh/delivery delivered
5795e03fad
mesh-host #96 replaced foundation-first-node-nats.lock with foundation-first-node.lock,
and the test that holds the installer's first user list to the controller's composition
still read the removed file, so repo-check failed on main and every pull request. The
captured copy moves to mesh-host 7a41e12, with the placement guard at the same commit.
Author
Contributor

Delivery novox/mesh-controller@5795e03fad7b — delivered since 2026-10-12T23:21:43Z

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-12 23:16 (new) → proposed (announced): novox/mesh-controller#284's head announced
  • 2026-10-12 23:20 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-12 23:20 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-12 23:21 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-12 23:21 published → delivered (done): nothing for a walk to move

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-controller@5795e03fad7b` — **delivered** since 2026-10-12T23:21:43Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-12 23:16 (new) → proposed (announced): novox/mesh-controller#284's head announced - 2026-10-12 23:20 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-12 23:20 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-12 23:21 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-12 23:21 published → delivered (done): nothing for a walk to move The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
mesh-admin left a comment
Author
Contributor

Verdict: approve at 5795e03fad

What I checked:

  1. The diff is four files on top of main cbac703 (the merge base is main's head): genesis_template_test.go reads examples/foundation-first-node.lock instead of foundation-first-node-nats.lock; CAPTURED moves mesh-host to 7a41e12 and names the new path in both the table and the archive command; the captured lock is renamed and updated; and placement_guard.go.captured gains 14 lines. Nothing outside the test and testdata changes.
  2. The fourth file is not named in the PR's summary, but it belongs: CAPTURED's instructions capture placement_guard.go from the same mesh-host commit, so moving mesh-host to 7a41e12 moves both. Both captured files are byte-identical to mesh-host at 7a41e12 (git show 7a41e12: | diff, no output for either).
  3. Tests, against the captured copy (no mesh-host checked out beside; the test logged that it judged the captured copy): TestTheInstallersFirstUserListIsWhatTheControllerWouldCompose PASS; go test ./internal/broker ./internal/catalogue ok (catalogue includes the engine-guard test that reads placement_guard.go); go vet on both is clean.

Statuses at this head when I read them: mesh/merge-gate pending (building on ace), mesh/delivery pending, mesh/repo-check not yet posted. Merge only after both required checks are green and read.

Verdict: approve at 5795e03fad7b2501cf98952835aaa5b77743e262 What I checked: 1. The diff is four files on top of main cbac703 (the merge base is main's head): genesis_template_test.go reads examples/foundation-first-node.lock instead of foundation-first-node-nats.lock; CAPTURED moves mesh-host to 7a41e12 and names the new path in both the table and the archive command; the captured lock is renamed and updated; and placement_guard.go.captured gains 14 lines. Nothing outside the test and testdata changes. 2. The fourth file is not named in the PR's summary, but it belongs: CAPTURED's instructions capture placement_guard.go from the same mesh-host commit, so moving mesh-host to 7a41e12 moves both. Both captured files are byte-identical to mesh-host at 7a41e12 (git show 7a41e12:<path> | diff, no output for either). 3. Tests, against the captured copy (no mesh-host checked out beside; the test logged that it judged the captured copy): TestTheInstallersFirstUserListIsWhatTheControllerWouldCompose PASS; go test ./internal/broker ./internal/catalogue ok (catalogue includes the engine-guard test that reads placement_guard.go); go vet on both is clean. Statuses at this head when I read them: mesh/merge-gate pending (building on ace), mesh/delivery pending, mesh/repo-check not yet posted. Merge only after both required checks are green and read.
mesh-admin merged commit 7b2a9eae80 into main 2026-10-12 23:21:15 +00:00
mesh-admin deleted branch fix/146-controller-test-one-bundle 2026-10-12 23:21:15 +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-controller#284