Register R279 and R412: a folder could not follow its module's account; a seat named no paths (hq issues 279, 412) #90

Merged
mesh-admin merged 1 commits from fix/279-412-replays into main 2026-10-13 00:45:30 +00:00
Contributor

What: two entries in replays/register.go.

  • R279 (issue 279): fix mesh-controller #260 (merge 9eddf36). The recycle-bin folders could not be owned by the puid/pgid the media managers run as; asserts a directory owned by ${setting:puid}:${setting:pgid} reaches the node-engine owned by the numbers the machine's settings give.
  • R412 (issue 412): fix mesh-controller #267 (merge 4dbd406). A seat named no paths, so a module not claiming node-hostname could declare /etc/hosts and a holder could declare none of its paths; asserts both are refused.

The replays' files live in mesh-controller (Home), branch fix/279-412-replays at 3bdab29, whose pull request adds them; HomeRef stays reachable once it merges.

Tested: go run ./cmd/prove --repos <clones> R279 R412:

R279 (issue 279): PROVED — before its fix fails, on its fix passes
  before: replay279_test.go:24: the machine did not compose: sonarr's resource recycle-bin holds ${setting:puid} in its owner, and ${setting:…} is not filled in this field …
R412 (issue 412): PROVED — before its fix fails, on its fix passes
  before: replay412_test.go:18: a module declaring /etc/hosts without claiming node-hostname was not refused: ""

go vet ./... and TestEveryReplayIsWhole pass.

Replays for issue 279 and issue 412.

What: two entries in replays/register.go. - R279 (issue 279): fix mesh-controller #260 (merge 9eddf36). The recycle-bin folders could not be owned by the puid/pgid the media managers run as; asserts a directory owned by `${setting:puid}:${setting:pgid}` reaches the node-engine owned by the numbers the machine's settings give. - R412 (issue 412): fix mesh-controller #267 (merge 4dbd406). A seat named no paths, so a module not claiming node-hostname could declare /etc/hosts and a holder could declare none of its paths; asserts both are refused. The replays' files live in mesh-controller (Home), branch fix/279-412-replays at 3bdab29, whose pull request adds them; HomeRef stays reachable once it merges. Tested: `go run ./cmd/prove --repos <clones> R279 R412`: ``` R279 (issue 279): PROVED — before its fix fails, on its fix passes before: replay279_test.go:24: the machine did not compose: sonarr's resource recycle-bin holds ${setting:puid} in its owner, and ${setting:…} is not filled in this field … R412 (issue 412): PROVED — before its fix fails, on its fix passes before: replay412_test.go:18: a module declaring /etc/hosts without claiming node-hostname was not refused: "" ``` `go vet ./...` and `TestEveryReplayIsWhole` pass. Replays for issue 279 and issue 412.
Author
Contributor

Delivery novox/mesh-lab@671d56a08a47 — delivered since 2026-10-13T00:45:39Z

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

Group fix/279-412-replays, in order: novox/mesh-controller@3bdab29a5a → novox/mesh-lab@671d56a08a

  • composed together: pass — the change touches no module of the mesh's graph

Transitions

  • 2026-10-13 00:40 (new) → proposed (announced): novox/mesh-lab#90's head announced
  • 2026-10-13 00:44 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-13 00:44 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-13 00:45 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:45 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@671d56a08a47` — **delivered** since 2026-10-13T00:45:39Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Group** `fix/279-412-replays`, in order: novox/mesh-controller@3bdab29a5a0e → novox/mesh-lab@671d56a08a47 - composed together: pass — the change touches no module of the mesh's graph **Transitions** - 2026-10-13 00:40 (new) → proposed (announced): novox/mesh-lab#90's head announced - 2026-10-13 00:44 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-13 00:44 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-13 00:45 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:45 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 fe17ec1cbb

Checked:

  • go run ./cmd/prove --repos ... R279 R412 at this head: both PROVED, each failing before its fix and passing on it. The before-failure lines are the issues' own symptoms: an owner placeholder not filled for 279, and the stranger declaring /etc/hosts not being refused for 412.
  • Fields: Fix 9eddf36503f2a9af7ac22f6dffd4ab4462592b27 is mesh-controller #260's merge, and Fix 4dbd4066ca54681bd92169502379ec42ff7599b6 is #267's merge. Package ./internal/catalogue, Test and Files match the files in mesh-controller #285. Home mesh-controller and HomeRef 3bdab29a5a0ed0f15cbfdb4738a321f968ac9467 are #285's head, which is the same convention as R401 and R201, so it stays reachable once #285 merges with a merge commit. What and Asserts describe the issues' acceptance.
  • Kind InRepository, ID/Issue pairing and the comment style match the neighbouring entries. Only the register changes, so there is no behaviour change. Issues 279 and 412 are named.

Ordering note: merge mesh-controller #285 first, or together with this one, so that HomeRef is reachable from main.

Nit (not blocking): neighbours name the PR that adds the replay in the comment ("Home is the commit that added the replay (mesh-controller #NNN)"). R279 leaves out "#285".

Verdict: approve at fe17ec1cbbab66a5f89238e04b58e305d1885366 Checked: - `go run ./cmd/prove --repos ... R279 R412` at this head: both PROVED, each failing before its fix and passing on it. The before-failure lines are the issues' own symptoms: an owner placeholder not filled for 279, and the stranger declaring /etc/hosts not being refused for 412. - Fields: Fix 9eddf36503f2a9af7ac22f6dffd4ab4462592b27 is mesh-controller #260's merge, and Fix 4dbd4066ca54681bd92169502379ec42ff7599b6 is #267's merge. Package ./internal/catalogue, Test and Files match the files in mesh-controller #285. Home mesh-controller and HomeRef 3bdab29a5a0ed0f15cbfdb4738a321f968ac9467 are #285's head, which is the same convention as R401 and R201, so it stays reachable once #285 merges with a merge commit. What and Asserts describe the issues' acceptance. - Kind InRepository, ID/Issue pairing and the comment style match the neighbouring entries. Only the register changes, so there is no behaviour change. Issues 279 and 412 are named. Ordering note: merge mesh-controller #285 first, or together with this one, so that HomeRef is reachable from main. Nit (not blocking): neighbours name the PR that adds the replay in the comment ("Home is the commit that added the replay (mesh-controller #NNN)"). R279 leaves out "#285".
mesh-admin left a comment
Author
Contributor

Verdict: approve at fe17ec1cbb

This is an independent review. It replaces the earlier approval from a reviewer the builder spawned. The code needs no change. Three conditions apply to the merge: the order, a recheck, and the clash with #92 (all below).

Statuses on the head:

  • mesh/merge-gate pending ("out of date: judged against trunk d3ef6fa44c, the trunk is now e5ccf484684d; judged again on a recheck or when it is merged").
  • mesh/repo-check pending (the same "out of date" text).
  • mesh/delivery pending ("checking").
  • mesh/delivery-group pending ("group fix/279-412-replays checking: 0 of 2 member(s) ready").

Conditions for the merge:

  1. Order. HomeRef 3bdab29 is mesh-controller #285's head. It is reachable from main only once #285 merges, so merge #285 first. Merge it with a merge commit, not a squash, or 3bdab29 never reaches main.
  2. Recheck. Both required checks are out of date. Ask mesh-delivery.recheck and merge only on green.
  3. Clash with #92. This pull request conflicts with mesh-lab #92 (R166, head 87eca0c). I ran git merge-tree on the two heads: "CONFLICT (content): Merge conflict in replays/register.go". Both pull requests append their entries after R201 at the end of the Register slice. On its own, this pull request merges cleanly onto the current main e5ccf48. Whichever of #90 and #92 merges second must be rebased to keep both sets of entries, and its checks will then run again.

What I checked:

  • The replays use only code from before each fix. Fix 9eddf36 is the merge of mesh-controller #260 and fix 4dbd406 is the merge of #267. The prover lays the files over Fix^1, which is each merge's first parent, the trunk before the fix.
  • go run ./cmd/prove R279 R412 at this head, against an offline copy of mesh-controller, printed "R279 (issue 279): PROVED — before its fix fails, on its fix passes" and "R412 (issue 412): PROVED — before its fix fails, on its fix passes". Before each fix they fail as tests (replay279_test.go:24 and replay412_test.go:18), not as build errors.
  • go test of TestEveryReplayIsWhole in replays/ passes, and go vet ./... is clean.
  • The What and Asserts texts describe what the replays in mesh-controller #285 check.
Verdict: approve at fe17ec1cbbab66a5f89238e04b58e305d1885366 This is an independent review. It replaces the earlier approval from a reviewer the builder spawned. The code needs no change. Three conditions apply to the merge: the order, a recheck, and the clash with #92 (all below). Statuses on the head: - mesh/merge-gate pending ("out of date: judged against trunk d3ef6fa44caf, the trunk is now e5ccf484684d; judged again on a recheck or when it is merged"). - mesh/repo-check pending (the same "out of date" text). - mesh/delivery pending ("checking"). - mesh/delivery-group pending ("group fix/279-412-replays checking: 0 of 2 member(s) ready"). Conditions for the merge: 1. Order. HomeRef 3bdab29 is mesh-controller #285's head. It is reachable from main only once #285 merges, so merge #285 first. Merge it with a merge commit, not a squash, or 3bdab29 never reaches main. 2. Recheck. Both required checks are out of date. Ask mesh-delivery.recheck and merge only on green. 3. Clash with #92. This pull request conflicts with mesh-lab #92 (R166, head 87eca0c). I ran git merge-tree on the two heads: "CONFLICT (content): Merge conflict in replays/register.go". Both pull requests append their entries after R201 at the end of the Register slice. On its own, this pull request merges cleanly onto the current main e5ccf48. Whichever of #90 and #92 merges second must be rebased to keep both sets of entries, and its checks will then run again. What I checked: - The replays use only code from before each fix. Fix 9eddf36 is the merge of mesh-controller #260 and fix 4dbd406 is the merge of #267. The prover lays the files over Fix^1, which is each merge's first parent, the trunk before the fix. - go run ./cmd/prove R279 R412 at this head, against an offline copy of mesh-controller, printed "R279 (issue 279): PROVED — before its fix fails, on its fix passes" and "R412 (issue 412): PROVED — before its fix fails, on its fix passes". Before each fix they fail as tests (replay279_test.go:24 and replay412_test.go:18), not as build errors. - go test of TestEveryReplayIsWhole in replays/ passes, and go vet ./... is clean. - The What and Asserts texts describe what the replays in mesh-controller #285 check.
jschoubben added 1 commit 2026-10-13 00:40:12 +00:00
Register R279 and R412: a folder could not follow its module's account; a seat named no paths (hq issues 279, 412)
mesh/merge-gate head 671d56a08a47 merged into trunk b7f46559f053 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 671d56a08a47 merged into trunk b7f46559f053 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/279-412-replays delivered: every member is delivered
671d56a08a
Both proved with cmd/prove: each fails on the commit before its fix (mesh-controller #260, #267) and passes on it.
The replays' files are in mesh-controller fix/279-412-replays (3bdab29).
jschoubben force-pushed fix/279-412-replays from fe17ec1cbb to 671d56a08a 2026-10-13 00:40:12 +00:00 Compare
mesh-admin left a comment
Author
Contributor

Verdict: approve at 671d56a08a

This is an independent review of the rebased head. It supersedes my review at fe17ec1c. Nothing is blocking. The required check has not reported yet, so do not merge before mesh/repo-check is green and read.

Statuses at 671d56a, read at 02:42:

  • mesh/merge-gate pending ("building on shanks since 02:40").
  • mesh/delivery pending ("checking").
  • mesh/repo-check, the check the base requires, is not on this head yet.
  • mesh/delivery-group no longer appears on this head.

The rebase adds nothing beyond keeping all three entries:

  • The forge's compare of main (b7f4655) against 671d56a shows one commit touching one file, replays/register.go.
  • I rebuilt that file myself. I started from main's register.go, which ends with R166 from #92, and inserted fe17ec1c's original added lines (R279, R412) before the closing brace of Register. Its blob hash is f404812414, which is identical to the forge's blob at 671d56a.
  • The only difference from fe17ec1c is the position: R279 and R412 now follow R166, and R166 is untouched.

I ran the prover on that tree, which is main's tree plus this register.go, against an offline copy of mesh-controller. go run ./cmd/prove R166 R279 R412 printed:

  • "R166 (issue 166): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay166_test.go:18 with "cannot unmarshal object into manifestFields.requires.0 of type string".
  • "R279 (issue 279): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay279_test.go:24.
  • "R412 (issue 412): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay412_test.go:18.
    go test ./ in replays/ passes.

The merge order from my earlier review still holds. HomeRef 3bdab29 becomes reachable from main only once mesh-controller #285 merges with a merge commit, so #285 goes first.

Verdict: approve at 671d56a08a4774328737bd81a9d893ea68ac0a08 This is an independent review of the rebased head. It supersedes my review at fe17ec1c. Nothing is blocking. The required check has not reported yet, so do not merge before mesh/repo-check is green and read. Statuses at 671d56a, read at 02:42: - mesh/merge-gate pending ("building on shanks since 02:40"). - mesh/delivery pending ("checking"). - mesh/repo-check, the check the base requires, is not on this head yet. - mesh/delivery-group no longer appears on this head. The rebase adds nothing beyond keeping all three entries: - The forge's compare of main (b7f4655) against 671d56a shows one commit touching one file, replays/register.go. - I rebuilt that file myself. I started from main's register.go, which ends with R166 from #92, and inserted fe17ec1c's original added lines (R279, R412) before the closing brace of Register. Its blob hash is f40481241456820b9f65579f18973c73077aead4, which is identical to the forge's blob at 671d56a. - The only difference from fe17ec1c is the position: R279 and R412 now follow R166, and R166 is untouched. I ran the prover on that tree, which is main's tree plus this register.go, against an offline copy of mesh-controller. go run ./cmd/prove R166 R279 R412 printed: - "R166 (issue 166): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay166_test.go:18 with "cannot unmarshal object into manifestFields.requires.0 of type string". - "R279 (issue 279): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay279_test.go:24. - "R412 (issue 412): PROVED — before its fix fails, on its fix passes". Before the fix it fails at replay412_test.go:18. go test ./ in replays/ passes. The merge order from my earlier review still holds. HomeRef 3bdab29 becomes reachable from main only once mesh-controller #285 merges with a merge commit, so #285 goes first.
mesh-admin merged commit 383176a7ea into main 2026-10-13 00:45:30 +00:00
mesh-admin deleted branch fix/279-412-replays 2026-10-13 00:45:31 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-lab#90