# RP18 — Part A: an unreadable status refuses (fail closed)
# mutation in internal/web/setup_gate.go:
#   - 'has && (perr != nil || !done) {'
#   + 'has && (perr == nil && !done) { // RED-PROOF RP18'
# go test -run ^TestSetupGateButton_RefusedWhileTheAppSaysNotDone$ ./internal/web
# verdict: RED (assertion)
=== RUN   TestSetupGateButton_RefusedWhileTheAppSaysNotDone
    signup_block_test.go:46: an unreadable status: 200 — want 409 (fail closed)
--- FAIL: TestSetupGateButton_RefusedWhileTheAppSaysNotDone (0.07s)
