release: the Task 8c held-verify test follows main's T7 rule: VerifyHeldLive writes nothing and reads under the claim (moves Task 7), so the test asserts it passes there rather than refusing (CI on 03212a8b)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+7
−6
internal/release/heldverify_test.go+7 −6
diff --git a/internal/release/heldverify_test.go b/internal/release/heldverify_test.go| index c6bc1304e..c2d3258ec 100644 |
| --- a/internal/release/heldverify_test.go |
| +++ b/internal/release/heldverify_test.go |
| @@ -202,10 +202,11 @@ func TestVerifyHeldLiveRechecksAnExistingLink(t *testing.T) { |
| } |
| } |
| -// Region HA Task 8c: the claim path's reading. VerifyHeldLive refuses while |
| -// CARLOS_HOST_CLAIM is on, as MaterializeHeld does; VerifyHeldLiveUnder is |
| -// the same reading under the claim, and still refuses an unproven link, a |
| -// link on another version, and a reading without the lock. |
| +// Region HA Task 8c: the claim path's reading. VerifyHeldLiveUnder reads |
| +// under CARLOS_HOST_CLAIM, and still refuses an unproven link, a link on |
| +// another version, and a reading without the lock. VerifyHeldLive writes |
| +// nothing, so it reads under the claim too (moves Task 7, Paul's T7 ruling |
| +// of 2026-10-12). |
| func TestVerifyHeldLiveUnderReadsUnderTheClaim(t *testing.T) { |
| e := newHeldProofEnv(t) |
| e.require(t, "console") |
| @@ -217,8 +218,8 @@ func TestVerifyHeldLiveUnderReadsUnderTheClaim(t *testing.T) { |
| verify := func(lock func(func() error) error) error { |
| return VerifyHeldLiveUnder(e.ctx, e.store, e.opt, heldRoute(), "v1", NewProofGate(e.policy, e.bake), lock) |
| } |
| - if err := VerifyHeldLive(e.ctx, e.store, e.opt, heldRoute(), "v1", NewProofGate(e.policy, e.bake), passLock); !errors.Is(err, ErrHeldClaimWired) { |
| - t.Fatalf("VerifyHeldLive under the claim: %v, want ErrHeldClaimWired", err) |
| + if err := VerifyHeldLive(e.ctx, e.store, e.opt, heldRoute(), "v1", NewProofGate(e.policy, e.bake), passLock); err != nil { |
| + t.Fatalf("VerifyHeldLive under the claim: %v", err) |
| } |
| if err := verify(passLock); err != nil { |
| t.Fatalf("published and proven, under the claim: %v", err) |