Skip to content

scanner/det: detect and refuse by name macro-level CICS and CICS Assembler programs #5121

Closed

Description

@squid-protocol

What: detect and refuse by name CICS macro-level programs (DFHPC / DFHFC / DFHTC / DFHSC ... macro calls in COBOL or Assembler, CSA/TCA addressing) and CICS Assembler programs, instead of letting them look like broken COBOL. The scanner reports them as their own refusal family with counts per estate; the det translator refuses them with the reason. Not translated (out of scope until owner decides).

Acceptance: refusal family "macro-level CICS" / "CICS Assembler" in the support matrix and blocker report; fixtures for each; existing corpora unchanged.

Context (owner-approved 2026-10-14): our CICS corpus is almost all eras 3-4 (CardDemo, CBSA, GenApp are modern demos) on top of well-modelled old COBOL semantics. Real estates are layered: 1980s programs LINK 1990s ones that call 2010s Db2 code in one region. Era model used here (approximate; the scanner should cite evidence, not dates):

Era ~When CICS COBOL Tells
0 ~1969-80 macro level (DFHPC/DFHFC, CSA/TCA) ANS 68 DFHxx macro calls, no EXEC CICS
1 ~1978-88 CICS/VS 1.x command level OS/VS COBOL (74) BLL cells + SERVICE RELOAD, HANDLE CONDITION/AID, DL/I, FCT/PCT/PPT/DCT macro tables
2 ~1988-96 CICS/MVS 2.x, CICS/ESA 3-4 VS COBOL II / COBOL 85 ADDRESS OF / SET ADDRESS, RESP/RESP2, EXEC SQL, CSD (RDO), DPL
3 ~1996-2005 CICS TS 1-2 COBOL for MVS/OS390, LE MQ, EXCI, 3270 bridge, web
4 2005+ CICS TS 3+ Enterprise COBOL channels/containers, SOAP/JSON, async, named counters

Order: after the current CI work and CICS blocker work (owner). Siblings: the five "era" issues filed together.

🤖 Generated with Claude Code

Activity

  1. squid-protocol commented on Oct 14, 2026

    @squid-protocol
    OwnerAuthor

    Siblings (era work, filed together 2026-10-14): #5117 era tags, #5118 estate-crucible era profiles, #5119 BLL cells / SERVICE RELOAD, #5120 resource macro tables, #5121 macro-level / Assembler refusals. Queued after the CI and CICS blocker work (owner).

    🤖 Generated with Claude Code

  2. squid-protocol commented on Oct 14, 2026

    @squid-protocol
    OwnerAuthor

    Siblings: #5158 (gaps left open by PR #5157).

  3. squid-protocol commented on Oct 14, 2026

    @squid-protocol
    OwnerAuthor

    Acceptance met by #5157: two named refusal families (macro-level CICS, CICS Assembler) in the support matrix, refusal map and cics_census blocker report; fixtures per macro family x host; burned-estate fixtures unchanged apart from zecs (2 real CICS Assembler programs). Remaining gaps are tracked in #5158.

  4. added
    scope:frontierMapped, not yet built: eras/commands/regions the burned estates don't use (Gap Atlas)
    era:0Era macro-level CICS, ANS 68 (~1969-80) (era_tags.py)
    on Oct 16, 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

    enhancementNew feature, sensor, or structural signatureera:0Era macro-level CICS, ANS 68 (~1969-80) (era_tags.py)legacy-modernizationCOBOL refractor, dead-code extraction, and JCL forgingpriority: mediumscope:frontierMapped, not yet built: eras/commands/regions the burned estates don't use (Gap Atlas)

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions