Register R164: a credential only a person can give was made anyway (hq issue 164) #102

Merged
mesh-admin merged 2 commits from fix/164-replay into main 2026-10-13 11:21:00 +00:00
Contributor

Registers the replay of issue 164 (ADR 0337). The replay itself is TestReplay164 in mesh-controller #298. It is written with only what the controller had before the fix: register, assign, planFor, declarationFor, AcceptSecretForPair and SecretsOf.

  • Fix: cfe63a4738ae57b0fe82518c50eeb541f990c157, the head of mesh-controller #298.
  • Before: 1826b68a22b5a1a5a1db38fb6e4bfdf923e953cb, the main it branched from, because the fix is still on its branch. Once #298 merges, set Fix to its merge and Before to "".

Proved by hand: go run ./cmd/prove --repos <clones> R164 says "R164 (issue 164): PROVED — before its fix fails, on its fix passes". Before the fix it fails with "the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". replays/merge-check.sh passes; the replays themselves are not run there.

Merge after mesh-controller #298. For issue 164.

Registers the replay of issue 164 (ADR 0337). The replay itself is `TestReplay164` in mesh-controller #298. It is written with only what the controller had before the fix: register, assign, planFor, declarationFor, AcceptSecretForPair and SecretsOf. - **Fix**: cfe63a4738ae57b0fe82518c50eeb541f990c157, the head of mesh-controller #298. - **Before**: 1826b68a22b5a1a5a1db38fb6e4bfdf923e953cb, the main it branched from, because the fix is still on its branch. Once #298 merges, set Fix to its merge and Before to "". Proved by hand: `go run ./cmd/prove --repos <clones> R164` says "R164 (issue 164): PROVED — before its fix fails, on its fix passes". Before the fix it fails with "the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". `replays/merge-check.sh` passes; the replays themselves are not run there. Merge after mesh-controller #298. For issue 164.
Author
Contributor

Delivery novox/mesh-lab@a0754ab06d59 — delivered since 2026-10-13T11:21:17Z

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

Transitions

  • 2026-10-13 11:11 (new) → proposed (announced): novox/mesh-lab#102's head announced
  • 2026-10-13 11:15 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-13 11:15 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-13 11: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-13 11: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-lab@a0754ab06d59` — **delivered** since 2026-10-13T11:21:17Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-13 11:11 (new) → proposed (announced): novox/mesh-lab#102's head announced - 2026-10-13 11:15 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-13 11:15 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-13 11: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-13 11: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`.
Author
Contributor

Merge check at e6f8c034: head e6f8c03450 merged into trunk f71250c3dd, pass

Out of date when it landed: out of date: judged against trunk f71250c3dd, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged

**Merge check** at `e6f8c034`: head e6f8c03450be merged into trunk f71250c3ddd5, pass **Out of date when it landed**: out of date: judged against trunk f71250c3ddd5, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged
mesh-admin left a comment
Author
Contributor

Verdict: approve at e6f8c03450

Independent review for issue 164 (ADR 0337). I read the one change, the R164 entry in replays/register.go, against mesh-controller #298 at cfe63a4738ae57b0fe82518c50eeb541f990c157.

What I ran. In a clone beside mesh-controller, with a throwaway postgres as MESH_TEST_POSTGRES, go run ./cmd/prove R164 printed "R164 (issue 164): PROVED — before its fix fails, on its fix passes". Before the fix it failed with "replay164_test.go:55: the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". I also laid replay164_test.go over mesh-controller main 1826b68 by hand: it fails there on both of its first assertions (the credential was placed, and the store held a value of origin "made"), so it fails on what the bug did and not on a missing identifier. sh replays/merge-check.sh passes: gofmt, vet and TestEveryReplayIsWhole.

The entry is correct. Before is the main the fix branched from (1826b68a22b5a1a5a1db38fb6e4bfdf923e953cb), which today equals Fix^1 because the branch is one commit; naming it explicitly keeps the entry right if the branch gains a commit before it merges. Fix is the reviewed head of #298. Package, Test and Files name the replay that exists at that head, and the replay uses only pre-fix code (register, assign, planFor, declarationFor, AcceptSecretForPair, SecretsOf) apart from the offer's IssuedBy value, which the struct already carries on main.

One thing to do after the merge, which the entry's own comment already says: when #298 merges, set Fix to its merge commit and clear Before, in a follow-up pull request. If #298's head moves before it merges, Fix must follow it, or prove runs the replay against a commit that is no longer the fix.

Statuses at this head (read 11:36): mesh/merge-gate "pending — out of date: judged against trunk f71250c3dd, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged", mesh/repo-check the same words, and mesh/delivery "pending — checking". Neither required check has a verdict against the current main. Ask for a recheck, and merge only once both are green and read, and after #298, since Fix names #298's head.

Verdict: approve at e6f8c03450be35b39b769f05b36199bda6572def Independent review for issue 164 (ADR 0337). I read the one change, the R164 entry in replays/register.go, against mesh-controller #298 at cfe63a4738ae57b0fe82518c50eeb541f990c157. What I ran. In a clone beside mesh-controller, with a throwaway postgres as MESH_TEST_POSTGRES, `go run ./cmd/prove R164` printed "R164 (issue 164): PROVED — before its fix fails, on its fix passes". Before the fix it failed with "replay164_test.go:55: the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". I also laid replay164_test.go over mesh-controller main 1826b68 by hand: it fails there on both of its first assertions (the credential was placed, and the store held a value of origin "made"), so it fails on what the bug did and not on a missing identifier. `sh replays/merge-check.sh` passes: gofmt, vet and TestEveryReplayIsWhole. The entry is correct. Before is the main the fix branched from (1826b68a22b5a1a5a1db38fb6e4bfdf923e953cb), which today equals Fix^1 because the branch is one commit; naming it explicitly keeps the entry right if the branch gains a commit before it merges. Fix is the reviewed head of #298. Package, Test and Files name the replay that exists at that head, and the replay uses only pre-fix code (register, assign, planFor, declarationFor, AcceptSecretForPair, SecretsOf) apart from the offer's IssuedBy value, which the struct already carries on main. One thing to do after the merge, which the entry's own comment already says: when #298 merges, set Fix to its merge commit and clear Before, in a follow-up pull request. If #298's head moves before it merges, Fix must follow it, or prove runs the replay against a commit that is no longer the fix. Statuses at this head (read 11:36): mesh/merge-gate "pending — out of date: judged against trunk f71250c3ddd5, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged", mesh/repo-check the same words, and mesh/delivery "pending — checking". Neither required check has a verdict against the current main. Ask for a recheck, and merge only once both are green and read, and after #298, since Fix names #298's head.
jschoubben added 2 commits 2026-10-13 11:11:03 +00:00
The replay lives in mesh-controller (TestReplay164) and is proved against the main its fix branched
from until the fix merges: go run ./cmd/prove R164 says it fails before and passes on the fix.
Point R164 at the merge of its fix (mesh-controller #298) now it is merged
mesh/merge-gate head a0754ab06d59 merged into trunk a8d86bb10b9d — pass: the change touches no module of the mesh's graph
mesh/repo-check head a0754ab06d59 merged into trunk a8d86bb10b9d — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
a0754ab06d
jschoubben force-pushed fix/164-replay from e6f8c03450 to a0754ab06d 2026-10-13 11:11:03 +00:00 Compare
mesh-admin left a comment
Author
Contributor

Verdict: approve at a0754ab06d

This re-reviews the head I approved in review 188 (e6f8c03450). The branch was rebased onto main a8d86bb, and R164 now points at the merge of its fix.

git range-diff 9497dda..e6f8c034 a8d86bb..a0754ab0 shows that the first commit is unchanged by the rebase ("1: e6f8c03 = 1: adaf525"). The one new commit, a0754ab, changes only R164 in replays/register.go. Its Fix is now 584aa2d7d7a5a68b5087970feb93d0b1f1d4f503, its Before line is removed, and its comment says the fix is the merge of mesh-controller #298. I checked 584aa2d in mesh-controller: it is the merge of #298, its second parent is c9dd07f919a27868dba0c77b4d97467c92b82610 (the head approved in review 190), it is on main, and its first parent 404b4409 is the main the fix was laid over. So Fix^1, which prove now uses as the commit before the fix, is the right one.

Every entry is kept. The diff against main a8d86bb removes no line and only adds the 13 lines of the R164 entry. The register at the head lists 46 replay IDs: main's 45 plus R164.

I ran this niced on the laptop, with a throwaway postgres as MESH_TEST_POSTGRES and mesh-controller main cloned beside the lab. go run ./cmd/prove R164 printed "R164 (issue 164): PROVED — before its fix fails, on its fix passes", and before the fix it failed with "replay164_test.go:55: the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". sh replays/merge-check.sh also passes.

The statuses at this head, read at 13:12, are: mesh/merge-gate "pending — building on shanks since 13:11" and mesh/delivery "pending — checking". No mesh/repo-check status is posted yet. Merge only once both required checks are green and read.

Verdict: approve at a0754ab06d594b0316b4d7f925c11890f5b12e8e This re-reviews the head I approved in review 188 (e6f8c03450be35b39b769f05b36199bda6572def). The branch was rebased onto main a8d86bb, and R164 now points at the merge of its fix. `git range-diff 9497dda..e6f8c034 a8d86bb..a0754ab0` shows that the first commit is unchanged by the rebase ("1: e6f8c03 = 1: adaf525"). The one new commit, a0754ab, changes only R164 in replays/register.go. Its Fix is now 584aa2d7d7a5a68b5087970feb93d0b1f1d4f503, its Before line is removed, and its comment says the fix is the merge of mesh-controller #298. I checked 584aa2d in mesh-controller: it is the merge of #298, its second parent is c9dd07f919a27868dba0c77b4d97467c92b82610 (the head approved in review 190), it is on main, and its first parent 404b4409 is the main the fix was laid over. So Fix^1, which prove now uses as the commit before the fix, is the right one. Every entry is kept. The diff against main a8d86bb removes no line and only adds the 13 lines of the R164 entry. The register at the head lists 46 replay IDs: main's 45 plus R164. I ran this niced on the laptop, with a throwaway postgres as MESH_TEST_POSTGRES and mesh-controller main cloned beside the lab. `go run ./cmd/prove R164` printed "R164 (issue 164): PROVED — before its fix fails, on its fix passes", and before the fix it failed with "replay164_test.go:55: the send placed a credential for tv-api (requests.secret-tv-api), which only a person can give and nobody gave". `sh replays/merge-check.sh` also passes. The statuses at this head, read at 13:12, are: mesh/merge-gate "pending — building on shanks since 13:11" and mesh/delivery "pending — checking". No mesh/repo-check status is posted yet. Merge only once both required checks are green and read.
mesh-admin merged commit 1316a405a6 into main 2026-10-13 11:21:00 +00:00
mesh-admin deleted branch fix/164-replay 2026-10-13 11:21:01 +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#102