Skip to content

Answer keys: 5 drafting-reader errors found by the referee panel (signed VALUE, PIC as a name, truncated hex, VALUE from the PROCEDURE DIVISION, continued literals) #4393

Closed

Description

@squid-protocol

Problem

The #4377 referee panel (PR #4384) cross-checked the mainframe answer keys (tests/cobol_mainframe/answer_key/*.json) against the engine, tree-sitter-cobol-enterprise and Che4z. In 5 patterns the key is wrong and the engine is right. That puts noise into every engine-vs-key score (ground-truth ledger, #4318's extent and edge rows, the referee scorecard).

Pattern Items Example What the key should hold
Signed numeric VALUE read as null 83 VALUE +18 / +0 / -1 (GenApp lgacdb01 L83, CBSA ABNDPROC L40, CardDemo CBPAUP0C L82) the signed literal (the key-side twin of engine fix #4277)
10 PIC X(20) VALUE ... named PIC 10 CardDemo COPAUS1C L58-67 FILLER (an unnamed entry is an implicit FILLER, #4246)
Hex literal truncated to its prefix 3 VALUE X'0D25' → X (zECS ZECS001 L45, ZECS003 L49) X'0D25' (key-side twin of #4354)
Last DATA DIVISION item takes a VALUE from the PROCEDURE DIVISION 10 COMM-OVERDR value 'TO' (CBSA BNK1CAC L157 and 9 more) no VALUE (key-side twin of #4329)
Continued literal keeps the raw continuation line 11 CardDemo CBSTM03A HTML-L08 (STYL\n ...) the joined literal (see the engine-side issue filed alongside)

Acceptance criteria

  • The key drafting reader (tests/tools/cobol_answer_key.py) fixes each pattern at its root, not by hand-editing keys.
  • Keys are re-drafted, and the fields are re-verified per the key's own verification discipline.
  • ground_truth_ledger.py update ratchets out the entries these patterns caused; no engine change is needed.
  • A rerun of the referee panel shows these patterns gone from the engine-vs-key disagreements.

Related: #4377, #4318, #4277, #4354, #4329, #4246.

🤖 Generated with Claude Code

Activity

  1. added
    bugUnintended behavior or logic failure in the engine
    testingUnit, integration, and E2E pipeline verification
    legacy-modernizationCOBOL refractor, dead-code extraction, and JCL forging
    on Oct 5, 2026
  2. added a commit that references this issue on Oct 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugUnintended behavior or logic failure in the enginelegacy-modernizationCOBOL refractor, dead-code extraction, and JCL forgingpriority: mediumscope:infraCI, tooling, churn/factory, docs infrastructuretestingUnit, integration, and E2E pipeline verification

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions