Repository navigation
equivalence: cases for the CBSA programs made whole (Part of #4270) - #4810
Merged
Merged
Conversation
…ompared, SQL after a SYNCPOINT ROLLBACK kept (#4270) Harness fixes the CBSA BMS front-end cases need (Part of #4270): - A case's or scenario's "termid" / "uctranst" / "origin": the task's terminal (EIBTRMID, $GGCICS_FACILITY and terminals.cfg / CicsTask.withTermid), its UCTRANST and its origin data, stated on both sides as the cics-crucible runner states them. Unstated, None: RETURN IMMEDIATE, INQUIRE TERMINAL UCTRANST and INQUIRE ASSOCIATION are refused by both runtimes, as before. - SEND CONTROL: the stub's SEND-CONTROL line is now an event on the COBOL side (CicsTask already recorded one), its options and CURSOR compared. Before, a CLEAR key's SEND CONTROL ERASE FREEKB differed by a missing event. - SYNCPOINT ROLLBACK rolls the task's Db2 connection back there and then; the SQL after it is a new unit of work committed with the task, as the COBOL side's Db2 does (CBSA INQACCCU's cursor failing inside CREACC's task). Before, the whole Db2 transaction was marked rollback-only and the caller's later INSERTs were lost on the Java side. oracle_assumptions.md Q3 says so; X27 names the cases. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Fifteen new CBSA cases, each proved in a local det sweep (Db2 local): - BMS front ends, each with its LINKed back ends run in the task: cbsa-bnkmenu, cbsa-bnk1cac (CREACC, INQCUST, INQACCCU, ABNDPROC), cbsa-bnk1cra (DBCRFUN; INQUIRE ASSOCIATION from a stated origin), cbsa-bnk1dac (INQACC, DELACC), cbsa-bnk1dcs (INQCUST, UPDCUST; INQUIRE / SET TERMINAL UCTRANST from a stated terminal). - LINKed services: cbsa-creacc, cbsa-acctctrl. - From the paused equiv/4270-cbsa-cases branch (its channel prerequisite #4647 has merged), re-proved on main: cbsa-getcompy, cbsa-getscode, cbsa-inqcust, cbsa-crdtagy1..5. - det_sweep_coverage.json re-measured by a full local det sweep (as expected; the harness fingerprints moved). - Register: C12, X24, L3 (prior art), X26, X27, X29 and Q3 name the new proofs. Not cased (refused by name): BNK1TFN, BNK1UAC, BNK1CCS (#4695: RETURN LENGTH past the DTO; BNK1UAC also #4806), BNK1CCA (#4807: BMS OCCURS map). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-cases # Conflicts: # tests/equivalence/det_sweep_coverage.json
Contributor
…-cases # Conflicts: # tests/equivalence/det_sweep_coverage.json
…uivalence_cics: terminal facts + URIMAPs / case clock kept together Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… from the 24-case sweep under the merged harness Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TBJdDBRtJis5hzE244NQKV
Owner
Author
|
CI shepherd: this PR conflicts with main, so no checks ran. Merge |
…cases; split --base + update from the sweep Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TBJdDBRtJis5hzE244NQKV
squid-protocol
marked this pull request as ready for review
October 9, 2026 23:07
squid-protocol
added a commit
that referenced
this pull request
Oct 9, 2026
…e; ledger re-applied from its sweeps Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TBJdDBRtJis5hzE244NQKV
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #4270. These are equivalence cases for the CBSA programs that now translate whole but had no case. Every case below is PROVED in a full local det sweep (Db2 local,
proof_sweep.py --det-only; the result was "sweep: as expected", 92 proved, only the 3 baseline cases not proven). The coverage ledger was re-measured from that sweep. The rendered evidence report is not committed (#4703).The "before" level is L1: translated whole in the census of main 5242878, with no case. The committed report still shows L0 for the BNK1 / CREACC / ACCTCTRL programs because its survey is frozen from an earlier commit. The "after" levels come from
evidence_report.py --baseline --sweep <local sweep>.* ACCTCTRL's census row showed 3 holes in the committed report's frozen survey. It is whole on main.
The eight cases on the last three rows come from the paused branch
equiv/4270-cbsa-cases. Its prerequisite #4647 has merged, and they are re-proved here on main. As a side effect of the sweep's ledger update, INQACCCU also moves L1 → L2: its existing Db2 case now has a current ledger entry.Refused by name (no case, a bug filed or updated)
the task RETURNed a [B, not a ...), although the det ports are equal on every scenario. BNK1UAC is also blocked by the new det: a LINK writes the callee's DTO back over the caller's COMMAREA -- a numeric field holding spaces the callee never wrote comes back as digits (CBSA BNK1UAC -> INQACC) #4806: a LINK writes the callee's DTO back over the caller's COMMAREA, so INQACC-not-found turns COMM-CUSTNO spaces into0000000016. BNK1CCS's create path also needs CRECUST, which does not translate (missing CEEIGZCT).ACCOUNTD OCCURS 10, and equivalence: CALL USING items and COMMAREA trailing FILLER compared whole; BMS OCCURS refused (Fixes #4778) #4780 refuses OCCURS maps until the screen compare goes by occurrence.Harness fixes (own commit 2baebcc,
tests/tools/equivalence_cics.py)"termid","uctranst"and"origin". They go to EIBTRMID,$GGCICS_FACILITY/ terminals.cfg,$GGCICS_UCTRANSTand$GGCICS_ORIGINon the stub, and towithTermid/withUctranst/withOriginon CicsTask, as the cics-crucible runner already does. When unstated, nothing changes (RETURN IMMEDIATE, INQUIRE TERMINAL UCTRANST and INQUIRE ASSOCIATION stay refused).Unit tests are in
test_equivalence_cics.py. A regression run of genapp-lgtestp1/3, carddemo-menu, genapp-lgicvs01 and cbsa-dbcrfun proved, and the full sweep above found no new failure. No det/ translator change.Every rate or amount a case types into NUMVAL → COMP-1 / COMP-2 is a binary fraction (C6: IBM's HFP and the oracle's IEEE agree only on those). The register gives the new proofs as evidence for C12, X24, L3, X26, X27, X29 and Q3 (entry files plus the rendered page).
Gates
pr_gates.py --fast5/5 PASS,--ratchets7/7 PASS (JDK 17). The targeted tests pass (EVIDENCE_REPORT_ADVISORY=1, as in CI).evidence.py status --circ 0: the harness change leaves records stale only for the scheduled refresh.🤖 Generated with Claude Code