Skip to content

uow_handlers: RESP codes tested by number are checks too (#3453 follow-up) - #3469

Merged
squid-protocol merged 1 commit into
mainfrom
fix/resp-numeric-checks
Sep 24, 2026
Merged

squid-protocol merged 1 commit into
mainfrom
fix/resp-numeric-checks

Conversation

@squid-protocol

Copy link
Copy Markdown
Owner

Follow-up to #3453, surfaced by the section census (#3467).

CardDemo's COSGN00C tests its READ's RESP by number: EVALUATE WS-RESP-CD WHEN 0 ... WHEN 13, which is NORMAL and NOTFND. The engine and the key both read that as "never tested".

Change

A RESP check now also counts:

  • v [NOT] = n and v [NOT] EQUAL [TO] n;
  • the WHEN n arms of EVALUATE v itself. The scan tracks nesting depth, because a nested EVALUATE's arms test something else; CREACC's EVALUATE on a month field, for example, is not read as RESP codes.

Codes are named through the EIBRESP table (0 NORMAL, 13 NOTFND, 22 LENGERR, ...). A number not in the table is kept as the number.

The key reader gets the same reading, written independently with its own code table.

Effect

  • Exactly one fact moves in either corpus: COSGN00C line 211 READ → NORMAL,NOTFND. That is the reading the file's blind census reviewer reported. The signed key entry is updated in place, with a verification note.
  • Ledger: clean.
  • Golden masters: only that one field changes.
  • Tests: full suite passes locally (11,196 passed).

🤖 Generated with Claude Code

https://claude.ai/code/session_017ZsVaAkb86P5r5JXDC2Y9g

…w-up)

The section census surfaced it: CardDemo COSGN00C tests its READ's RESP with
`EVALUATE WS-RESP-CD WHEN 0 ... WHEN 13` -- NORMAL and NOTFND by number -- and
both the engine and the key read that as "never tested".

A RESP_CHECK now also counts `v [NOT] = n` / `v [NOT] EQUAL [TO] n` and the
`WHEN n` arms of `EVALUATE v` itself (depth-tracked: a nested EVALUATE's arms
test something else, so CREACC's month EVALUATE is not read as RESP codes).
Codes are named through the EIBRESP table (0 NORMAL, 13 NOTFND, 22 LENGERR,
...); an unlisted number is kept as the number. The numeric forms name the
field themselves, so they read the whole RESP window.

The key reader gains the same reading with its own code and its own code
table. Exactly one fact moves in either corpus: COSGN00C L211 READ -> NORMAL,
NOTFND, the reading its blind census reviewer reported; the signed entry is
updated in place with a verification note. Golden masters: that one field.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017ZsVaAkb86P5r5JXDC2Y9g
@github-actions

Copy link
Copy Markdown
Contributor

🐦‍⬛ Muninn Security Scan

✅ No security issues found.

🐦‍⬛ Powered by Muninn · Skald Lab

@squid-protocol
squid-protocol merged commit 9f6c415 into main Sep 24, 2026
31 checks passed
@squid-protocol
squid-protocol deleted the fix/resp-numeric-checks branch September 24, 2026 10:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant