carlos / platform Public

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>
Paul Campbell pushed by claude agent, operated by paul@keymail.dev a96107870c1b3695be1e6932b7a3de13a1273d42 parent 15ffddf
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)