This adds R166 to replays/register.go, in the same form as R401, R201 and the R279/R412 entries in #90:
Kind InRepository, in mesh-controller.
Fix is the merge of mesh-controller #281 (4473bc7d7315bb462dcce7d6a8927bff37ecdc59).
The test is TestReplay166 in ./internal/catalogue.
Home/HomeRef point at the commit that adds the test, mesh-controller #287 (b1baa8d8baf0289b76e8082b3b95d146af6a973e). It is reachable now on its branch and on main once #287 merges.
Why
Issue 166 is resolved with a replay that fails before its fix and passes on it.
How it was tested
go run ./cmd/prove --repos <the clones> R166 printed: R166 (issue 166): PROVED — before its fix fails, on its fix passes.
Before the fix it fails with cannot unmarshal object into manifestFields.requires.0 of type string.
go test ./ in replays passes.
For issue 166 (its replay).
## What
This adds R166 to `replays/register.go`, in the same form as R401, R201 and the R279/R412 entries in #90:
- Kind `InRepository`, in mesh-controller.
- `Fix` is the merge of mesh-controller #281 (4473bc7d7315bb462dcce7d6a8927bff37ecdc59).
- The test is `TestReplay166` in `./internal/catalogue`.
- `Home`/`HomeRef` point at the commit that adds the test, mesh-controller #287 (b1baa8d8baf0289b76e8082b3b95d146af6a973e). It is reachable now on its branch and on main once #287 merges.
## Why
Issue 166 is resolved with a replay that fails before its fix and passes on it.
## How it was tested
- `go run ./cmd/prove --repos <the clones> R166` printed: `R166 (issue 166): PROVED — before its fix fails, on its fix passes`.
- Before the fix it fails with `cannot unmarshal object into manifestFields.requires.0 of type string`.
- `go test ./` in `replays` passes.
For issue 166 (its replay).
mesh/repo-check head 87eca0c9a9e8 merged into trunk e5ccf484684d — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
Issue 166 resolves with its replay. TestReplay166 in the controller (mesh-controller #287) uses only
what the catalogue had before #281, so the prover lays it over the commit before: it fails there and
passes on the fix.
Deliverynovox/mesh-lab@87eca0c9a9e8 — delivered since 2026-10-13T00:38:35Z
Delivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
2026-10-13 00:28 (new) → proposed (announced): novox/mesh-lab#92's head announced
2026-10-13 00:32 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
2026-10-13 00:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-13 00:38 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-13 00:38 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-lab@87eca0c9a9e8` — **delivered** since 2026-10-13T00:38:35Z
**Delivery plan** — builds nothing: the change touches no module of the mesh's graph
**Transitions**
- 2026-10-13 00:28 (new) → proposed (announced): novox/mesh-lab#92's head announced
- 2026-10-13 00:32 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
- 2026-10-13 00:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-13 00:38 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-13 00:38 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`.
Independent review of the R166 register entry (hq issue 166, ADR 0330). Posted as a comment review: the forge refuses an APPROVED event from a tool (ADR 0266).
Fields are right and consistent with mesh-controller #287:
Fix 4473bc7d7315bb462dcce7d6a8927bff37ecdc59 is the merge of mesh-controller #281; its first parent is 454a3db.
Package ./internal/catalogue, Test TestReplay166 and Files internal/catalogue/replay166_test.go match the file #287 adds.
Home mesh-controller, HomeRef b1baa8d8baf0289b76e8082b3b95d146af6a973e is #287's head, whose only change is that file.
Kind InRepository, Repository mesh-controller, Issue 166. No store needed, so no MESH_TEST_POSTGRES note, correctly.
Follows R401, R201 and #90's R279/R412: same field order, same comment shape (incident, why a test of its own, what it is written with, Fix and Home explained). What and Asserts match what the test checks.
Proved. From this head in a worktree, after fetching mesh-controller: go run ./cmd/prove --repos <clones> R166 printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", the before-failure being the parse at replay166_test.go:18. go vet ./... and go test ./... in replays pass.
Nothing public-repo-sensitive; words accurate.
Notes, not blocking:
HomeRef is reachable only once mesh-controller #287 merges (the comment says so); merge #287 first.
#90 appends R279/R412 at the same place at the end of Register, so whichever of #90 and #92 merges second needs a rebase; the conflict is mechanical.
mesh/merge-gate and mesh/delivery were still pending at this head when reviewed; read them before merging.
Independent review of the R166 register entry (hq issue 166, ADR 0330). Posted as a comment review: the forge refuses an APPROVED event from a tool (ADR 0266).
1. Fields are right and consistent with mesh-controller #287:
- Fix 4473bc7d7315bb462dcce7d6a8927bff37ecdc59 is the merge of mesh-controller #281; its first parent is 454a3db.
- Package ./internal/catalogue, Test TestReplay166 and Files internal/catalogue/replay166_test.go match the file #287 adds.
- Home mesh-controller, HomeRef b1baa8d8baf0289b76e8082b3b95d146af6a973e is #287's head, whose only change is that file.
- Kind InRepository, Repository mesh-controller, Issue 166. No store needed, so no MESH_TEST_POSTGRES note, correctly.
2. Follows R401, R201 and #90's R279/R412: same field order, same comment shape (incident, why a test of its own, what it is written with, Fix and Home explained). What and Asserts match what the test checks.
3. Proved. From this head in a worktree, after fetching mesh-controller: `go run ./cmd/prove --repos <clones> R166` printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", the before-failure being the parse at replay166_test.go:18. go vet ./... and go test ./... in replays pass.
4. Nothing public-repo-sensitive; words accurate.
Notes, not blocking:
- HomeRef is reachable only once mesh-controller #287 merges (the comment says so); merge #287 first.
- #90 appends R279/R412 at the same place at the end of Register, so whichever of #90 and #92 merges second needs a rebase; the conflict is mechanical.
- mesh/merge-gate and mesh/delivery were still pending at this head when reviewed; read them before merging.
Verdict: approve at 87eca0c9a9e84fc2fd751590f92c7ce3f757127e
Independent review, done from a fresh clone of mesh-controller and mesh-lab (not relying on the mesh-admin review already on this pull request).
The register entry's fields match mesh-controller #287 exactly: Fix 4473bc7d7315bb462dcce7d6a8927bff37ecdc59 is the merge commit of #281 (parent 454a3db); Package ./internal/catalogue, Test TestReplay166, Files internal/catalogue/replay166_test.go match the one file #287 adds; Home mesh-controller, HomeRef b1baa8d8baf0289b76e8082b3b95d146af6a973e is #287's head.
HomeRef is reachable from mesh-controller main: git merge-base --is-ancestor b1baa8d main succeeds, since #287 merged as eb7ee921b533269656bbed6e4b0d3d5eaeca7220.
Proved directly: with mesh-controller and mesh-lab cloned as siblings and this pull request's branch checked out, cd replays && go run ./cmd/prove R166 printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", with the before-failure at replay166_test.go:18. I also ran the underlying test myself in three worktrees of mesh-controller: it fails on 454a3db (the commit before #281) with the exact message the entry's comment describes, and passes on 4473bc7 (the fix) and on b1baa8d (the PR head); go vet ./internal/catalogue is clean at the head.
Conflicts with mesh-lab #90: both pull requests append their new Replay entries immediately before the same closing } of the Register slice. Merging #92 onto main and then attempting to merge #90 produces a real git conflict in replays/register.go at exactly that point. It is mechanical only — both sides add independent entries (R166 here; R279 and R412 in #90) with no shared fields or logic — so whichever merges second needs a trivial rebase to re-append its block after the other's.
Gitea statuses at this head (87eca0c9a9) are all success: mesh/delivery ("ready: it delivers once merged"), mesh/merge-gate ("head 87eca0c9a9 merged into trunk e5ccf48468 — pass: the change touches no module of the mesh's graph"), and mesh/repo-check ("its merge-check.sh passed"). The earlier pending entries for the same context are just the build queue's history.
No blocking issues. The only thing to flag before merging is the mechanical conflict with #90 — merge one, then rebase the other.
Verdict: approve at 87eca0c9a9e84fc2fd751590f92c7ce3f757127e
Independent review, done from a fresh clone of mesh-controller and mesh-lab (not relying on the mesh-admin review already on this pull request).
1. The register entry's fields match mesh-controller #287 exactly: Fix 4473bc7d7315bb462dcce7d6a8927bff37ecdc59 is the merge commit of #281 (parent 454a3db); Package ./internal/catalogue, Test TestReplay166, Files internal/catalogue/replay166_test.go match the one file #287 adds; Home mesh-controller, HomeRef b1baa8d8baf0289b76e8082b3b95d146af6a973e is #287's head.
2. HomeRef is reachable from mesh-controller main: `git merge-base --is-ancestor b1baa8d main` succeeds, since #287 merged as eb7ee921b533269656bbed6e4b0d3d5eaeca7220.
3. Proved directly: with mesh-controller and mesh-lab cloned as siblings and this pull request's branch checked out, `cd replays && go run ./cmd/prove R166` printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", with the before-failure at replay166_test.go:18. I also ran the underlying test myself in three worktrees of mesh-controller: it fails on 454a3db (the commit before #281) with the exact message the entry's comment describes, and passes on 4473bc7 (the fix) and on b1baa8d (the PR head); go vet ./internal/catalogue is clean at the head.
4. Conflicts with mesh-lab #90: both pull requests append their new Replay entries immediately before the same closing `}` of the Register slice. Merging #92 onto main and then attempting to merge #90 produces a real git conflict in replays/register.go at exactly that point. It is mechanical only — both sides add independent entries (R166 here; R279 and R412 in #90) with no shared fields or logic — so whichever merges second needs a trivial rebase to re-append its block after the other's.
5. Gitea statuses at this head (87eca0c9a9e8) are all success: mesh/delivery ("ready: it delivers once merged"), mesh/merge-gate ("head 87eca0c9a9e8 merged into trunk e5ccf484684d — pass: the change touches no module of the mesh's graph"), and mesh/repo-check ("its merge-check.sh passed"). The earlier pending entries for the same context are just the build queue's history.
No blocking issues. The only thing to flag before merging is the mechanical conflict with #90 — merge one, then rebase the other.
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.
What
This adds R166 to
replays/register.go, in the same form as R401, R201 and the R279/R412 entries in #90:InRepository, in mesh-controller.Fixis the merge of mesh-controller #281 (4473bc7d7315bb462dcce7d6a8927bff37ecdc59).TestReplay166in./internal/catalogue.Home/HomeRefpoint at the commit that adds the test, mesh-controller #287 (b1baa8d8baf0289b76e8082b3b95d146af6a973e). It is reachable now on its branch and on main once #287 merges.Why
Issue 166 is resolved with a replay that fails before its fix and passes on it.
How it was tested
go run ./cmd/prove --repos <the clones> R166printed:R166 (issue 166): PROVED — before its fix fails, on its fix passes.cannot unmarshal object into manifestFields.requires.0 of type string.go test ./inreplayspasses.For issue 166 (its replay).
Delivery
novox/mesh-lab@87eca0c9a9e8— delivered since 2026-10-13T00:38:35ZDelivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.Independent review of the R166 register entry (hq issue 166, ADR 0330). Posted as a comment review: the forge refuses an APPROVED event from a tool (ADR 0266).
Follows R401, R201 and #90's R279/R412: same field order, same comment shape (incident, why a test of its own, what it is written with, Fix and Home explained). What and Asserts match what the test checks.
Proved. From this head in a worktree, after fetching mesh-controller:
go run ./cmd/prove --repos <clones> R166printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", the before-failure being the parse at replay166_test.go:18. go vet ./... and go test ./... in replays pass.Nothing public-repo-sensitive; words accurate.
Notes, not blocking:
Verdict: approve at
87eca0c9a9Verdict: approve at
87eca0c9a9Independent review, done from a fresh clone of mesh-controller and mesh-lab (not relying on the mesh-admin review already on this pull request).
The register entry's fields match mesh-controller #287 exactly: Fix 4473bc7d7315bb462dcce7d6a8927bff37ecdc59 is the merge commit of #281 (parent 454a3db); Package ./internal/catalogue, Test TestReplay166, Files internal/catalogue/replay166_test.go match the one file #287 adds; Home mesh-controller, HomeRef b1baa8d8baf0289b76e8082b3b95d146af6a973e is #287's head.
HomeRef is reachable from mesh-controller main:
git merge-base --is-ancestor b1baa8d mainsucceeds, since #287 merged as eb7ee921b533269656bbed6e4b0d3d5eaeca7220.Proved directly: with mesh-controller and mesh-lab cloned as siblings and this pull request's branch checked out,
cd replays && go run ./cmd/prove R166printed "R166 (issue 166): PROVED — before its fix fails, on its fix passes", with the before-failure at replay166_test.go:18. I also ran the underlying test myself in three worktrees of mesh-controller: it fails on 454a3db (the commit before #281) with the exact message the entry's comment describes, and passes on 4473bc7 (the fix) and on b1baa8d (the PR head); go vet ./internal/catalogue is clean at the head.Conflicts with mesh-lab #90: both pull requests append their new Replay entries immediately before the same closing
}of the Register slice. Merging #92 onto main and then attempting to merge #90 produces a real git conflict in replays/register.go at exactly that point. It is mechanical only — both sides add independent entries (R166 here; R279 and R412 in #90) with no shared fields or logic — so whichever merges second needs a trivial rebase to re-append its block after the other's.Gitea statuses at this head (
87eca0c9a9) are all success: mesh/delivery ("ready: it delivers once merged"), mesh/merge-gate ("head87eca0c9a9merged into trunke5ccf48468— pass: the change touches no module of the mesh's graph"), and mesh/repo-check ("its merge-check.sh passed"). The earlier pending entries for the same context are just the build queue's history.No blocking issues. The only thing to flag before merging is the mechanical conflict with #90 — merge one, then rebase the other.