Repository navigation
Equivalence harness gaps that block the L1->L4 ladder: abend injection, SEND/RECEIVE/RETURN/SYNCPOINT/DELAY faults, CEEDAYS, X6 WRITEQ #6271
Copy link
Copy link
Closed
Labels
claim:melekenhancementNew feature, sensor, or structural signatureNew feature, sensor, or structural signatureera:2Era CICS/MVS-ESA, COBOL II/85: RESP, SQL, DPL (~1988-96) (era_tags.py)Era CICS/MVS-ESA, COBOL II/85: RESP, SQL, DPL (~1988-96) (era_tags.py)legacy-modernizationCOBOL refractor, dead-code extraction, and JCL forgingCOBOL refractor, dead-code extraction, and JCL forgingpriority: highCore feature broken, but workarounds existCore feature broken, but workarounds existscope:coreBlocks a burned-estate program's next evidence rung, or the 4th-estate one-shot trialBlocks a burned-estate program's next evidence rung, or the 4th-estate one-shot trialtestingUnit, integration, and E2E pipeline verificationUnit, integration, and E2E pipeline verification
Description
Why
The L1->L4 ladder (#6072) keeps ending at the same equivalence-harness limits rather than at missing scenarios: about 8 of the 33 ladder worker runs on 2026-10-22/23 stopped on one of the gaps below, and each run rediscovered it. Until the harness can inject or model these, the branches behind them can only be stated infeasible (when truly unreachable) or stay open.
Gaps (one checkbox = one slice; each cites the runs that hit it)
- Abend injection: no way to make a called program / CICS command ABEND (incl. VSAM RLS abend) so
HANDLE ABEND/ abend paragraphs run (churn runs 6072-20261023T0128Z, 0354Z, 0448Z) (ZECS000: file abends on the control READ reach 9100-ABEND (Part of #6271) #6427) - Failing SEND MAP / RECEIVE MAP / RETURN / SYNCPOINT: no RESP fault for these commands (0448Z) (SEND CONTROL fault refused by name in X71; failing SEND/RECEIVE/RETURN/SYNCPOINT item closed (Part of #6271) #6696)
- DELAY fault (CBSA CRDTAGY1-5: the paragraphs behind a failed DELAY; 0128Z) (DELAY faults in the equivalence harness: EXPIRED and INVREQ planned per scenario; CRDTAGY1-5 reach the failure branch (Part of #6271) #6318)
- CEEDAYS model: CSUTLDPY date paragraphs in COACTUPC (90/95) need it (1553Z); stays within the CEEDAYS owner rulings (CRECUST stays refused) (carddemo-acctupdate: scenarios reach CEEDAYS via CSUTLDTC; COACTUPC 95/95 paragraphs (Part of #6271) #6699)
- Judging past an X6-refused WRITEQ (1701Z) (X6: no task is judged up to a WRITEQ any more; stale text removed, state pinned (Part of #6271) #6806)
- Paragraph-level infeasible outcomes in tests/equivalence/infeasible_outcomes.json (branch-level only today): CBPAUP0C
6000-EXITwas rediscovered in 5+ runs, CRDTAGY paragraphs stuck the same way (being added by the infeasible-outcomes tooling slice queued under Ladder climb L1->L4: 74 burned programs below L4 by estate and rung (coverage backlog after the translate stage) #6072) (ladder_gaps: stated paragraph infeasible entries no longer crash the report and mark their gap (Part of #6271) #6575)
Acceptance
Each slice: the harness states the fault/model (oracle_assumptions entry where IBM documents the behaviour, refused by name where it does not), a test, and the #6072 programs it unblocks re-measured with before/after coverage in the PR body. Burned estates only; evidence levels, not "proven".
Part of #6072.
Metadata
Metadata
Assignees
Labels
claim:melekenhancementNew feature, sensor, or structural signatureNew feature, sensor, or structural signatureera:2Era CICS/MVS-ESA, COBOL II/85: RESP, SQL, DPL (~1988-96) (era_tags.py)Era CICS/MVS-ESA, COBOL II/85: RESP, SQL, DPL (~1988-96) (era_tags.py)legacy-modernizationCOBOL refractor, dead-code extraction, and JCL forgingCOBOL refractor, dead-code extraction, and JCL forgingpriority: highCore feature broken, but workarounds existCore feature broken, but workarounds existscope:coreBlocks a burned-estate program's next evidence rung, or the 4th-estate one-shot trialBlocks a burned-estate program's next evidence rung, or the 4th-estate one-shot trialtestingUnit, integration, and E2E pipeline verificationUnit, integration, and E2E pipeline verification
Activity
skills: ladder-slice -- one #6072 ladder slice, planned with GitGalax…
squid-protocol commentedon Oct 23, 2026
Churn run
6271-20261023T1755Z(host melek) ended without a PR. plan-held duplicate of live run 6271-20261023T1748Z (same abend-injection item); not approved, live worker owns itdet coverage ledger: carddemo-cardupdate 43 -> 45 scenarios (the two …
Abend injection on a file control command (AFCR/AFCS/AFCT) so HANDLE …
squid-protocol commentedon Oct 23, 2026
#6286 merged: a partial slice of [c:b93f4d8b] "Abend injection: no way to make a called program / CICS command ABEND (incl. VSAM RLS abend) so
HANDLE ABEND/ abend paragraphs run (churn runs 6072-20261023T0128Z, 0354Z, 0448Z)"; left: Db2 (AD2Z) and linked-program/CALL abends, non-file commands (promoter-bot)squid-protocol commentedon Oct 23, 2026
Churn run
6271-20261023T1931Z(host melek) ended without a PR. limit hit; gate already relaunched #6271 as 6271-20261023T2046Zstrengthen-loop fault-command test knows the X71 commands: their cond…
RESP faults on SEND MAP / RECEIVE MAP / RETURN / SYNCPOINT in the equ…
52 remaining items
facade baseline: cbsa-inqacc open-attach-abends-ad2x fails like its #…
Empty-input edge cases: X54 blank length 0 states BNK1CRA 988 / BNK1T…
squid-protocol commentedon Oct 27, 2026
#6800 merged: a partial slice of [c:8969c9c8] "Judging past an X6-refused WRITEQ (1701Z)"; left: the X6 judging item is not this slice (its handoff says #6573 closed the gap). (promoter-bot)
ladder(cbsa): abend injection reaches the none arms (Part of #6271) (#…
Case notes: a WRITEQ past FROM is padded (X6), not refused; pin it tr…
squid-protocol commentedon Oct 27, 2026
#6802 merged: a partial slice of [c:8969c9c8] "Judging past an X6-refused WRITEQ (1701Z)"; left: the judging gap itself was already closed (#6573, #6702); this PR makes the case documentation true and pins it. Left: the lgsetup translator gap and stale prose (below). (promoter-bot)
X6: prose and judged_to words state the padded WRITEQ; only LENGTH > …
squid-protocol commentedon Oct 27, 2026
#6803 merged: a partial slice of [c:8969c9c8] "Judging past an X6-refused WRITEQ (1701Z)"; left: the judging gap itself was closed by #6573; the case notes are fixed by draft #6802; this PR fixes the prose and the judged_to wording #6802 left. Left: lgsetup translator gap (#5252). (promoter-bot)
X6: no task is judged up to a WRITEQ any more; comments and the ladde…
squid-protocol commentedon Oct 27, 2026
All six gap slices are merged (#6427, #6696, #6318, #6699, #6806, #6575); acceptance is met. Remaining sibling DetCics.PastFrom refusals have no burned program known to need them; they get filed if the ladder hits one.
RECEIVE MAP after SET TERMINAL UCTRANST(NOUCTRAN|TRANIDONLY) is model…
ZECS001 ladder: replicate peer and expired /deplicate DELETE re-tried…
squid-protocol commentedon Oct 29, 2026
Sibling gap from ladder run 6072-20261029T1501Z: the oracle needs a defined model for zero-length and out-of-bounds reference modification (X8). CBSA BNK1CAC (L3) is blocked on it: 4 outcomes (lines 611 true, 637 true/false, 717 true). The same refusal is recorded on the rate-three-places and overdraft-missing scenarios.
ZECS001 ladder: three data-only scenarios (expired late clock, file I…