z/OS calibration oracle: run the probe corpus and HFP captures on real Enterprise COBOL (blocked: access + legal Q16)

Open
#6,492 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
20/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
backend, testing

Research direction

Start with docs/language_status/zos_probes.json, tests/tools/zos_probes.py, and the HFP capture kit at tests/tools/hfp_capture_kit.py; the issue says the corpus and capture tools are already on main. Work is blocked until an owner resolves mainframe access and counsel answers legal question Q16. Once unblocked, run the probes and HFPCAP/HFPCAPA on Enterprise COBOL, ingest SYSOUT, record zos-run provenance, and update calibration status; done when each register entry has a result or the owner descopes the work.

Written by the indexing model from the issue text.

Description

enhancement legacy-modernization priority: high scope:core status: blocked testing

Split from #4702 (Part 2), owner decision 2026-10-24: #4702 closes on Part 1 and this issue holds the z/OS calibration work, which stays blocked on access and legal.

Policy (from #4702): IBM is the reference; GnuCOBOL (cobc 3.1.2 -std=ibm) is the instrument. A real z/OS (Enterprise COBOL) is a calibration oracle: run the probe and fuzz corpus there occasionally to replace "IBM side ASSUMED" with measured results. It is not in CI.

Already on main

  • Probe corpus: docs/language_status/zos_probes.json with tests/tools/zos_probes.py (oracle mode measures oracle_expected on the pinned cobc image) and tests/tools/test_zos_probes.py (every DIFFERS register entry is probed or sorted out). #6244 added C7, C9, C10, C16, C17, D1.
  • HFP capture kit for COMP-1/COMP-2 (#4271): tests/tools/hfp_capture_kit.py, programs HFPCAP / HFPCAPA, captures table tests/cobol_mainframe/zos_captures/hfp.json (ibm-publication records only so far). Captured-output oracle design: #4050.

Owner decisions needed (blockers)

  • Access: IBM Wazi as a Service (z/OS dev/test on IBM Cloud), ZD&T (licensed dev/test emulation), IBM Z Xplore (free; its terms likely don't cover commercial validation), or a customer's or partner's mainframe. z/OS on Hercules is not an option (licence ties z/OS to IBM hardware).
  • Legal (counsel, Q16): do the licence terms allow using outputs to validate a commercial translator, and may the results be published?

Work once unblocked

  • Run the batch probe corpus on Enterprise COBOL under the estate compile options; record results with a zos-run provenance (never fabricate or loosen one; ibm-publication records are not z/OS evidence).
  • Run HFPCAP / HFPCAPA and hfp_capture_kit.py ingest the SYSOUT; then finish #4271 [c:ff93cc35] per its handoff (settle ASSUMED HFP rules, re-check EPSMPMT **, update register C6).
  • Add a "z/OS-calibrated" marker per register entry and in the evidence report; any oracle-vs-z/OS disagreement becomes a register finding.
  • CICS calibration probes (need a real CICS region; not in zos_probes.json yet): X39 XCTL of a LINK-caller-owned COMMAREA — copy vs same storage (IBM XCTL page is silent; stays REFUSED until measured). From #5060.

Done when: the probe corpus has recorded z/OS results and each register entry shows its calibration status, or the owner descopes it.

Related: #4702 (policy, Part 1 done), #4271, #4050, epic #4055.

🤖 Generated with Claude Code

Dominant language
Python
Stars
57
Forks
11
Avg merge
1h 35m
Merged PRs (30d)
975

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from squid-protocol/gitgalaxy

All issues in squid-protocol/gitgalaxy

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.