Skip to content

Engine: CSD resource definitions beyond TRANSACTION/PROGRAM (FILE, MAPSET, TDQUEUE, DB2ENTRY...) #3356

Closed

Description

@squid-protocol

Gap

The CSD reader (#3211-followup, mainframe_boundary.py) captures only DEFINE TRANSACTION and DEFINE PROGRAM. The remaining resource definitions connect the online system to real datasets and subsystems:

  • DEFINE FILE ... DSNAME(...): CICS file name → dataset. This connects online I/O to batch lineage.
  • DEFINE MAPSET
  • DEFINE TDQUEUE ... TYPE(EXTRA) DDNAME/DSNAME
  • DEFINE DB2ENTRY/DB2TRAN: transaction → DB2 plan
  • DEFINE LIBRARY and DEFINE URIMAP/WEBSERVICE where present

Scope

  • Extend the CSD DEFINE parser to carry each additional resource type with its key attributes. Decide per the recipe between a generic csd_resource_data (type, name, group, attributes) and extending transaction_data.
  • Together with the CICS file I/O issue, this closes the path transaction → program → file → dataset.

Acceptance

Follow gitgalaxy/core/how_to_add_a_fact_channel.md / the add-fact-channel skill end to end: bounded extractor → *_data table/column (+ restore, cascade) → galaxy_ir.EngineFile accessor → refraction_differential compared datum → drafted answer-key field → audit JSON + LLM brief. Also update the galaxy_ir.py SCOPE comment. Include a real galaxyscope scan on CardDemo/CBSA shapes showing the rows. How the refactoring tool reads these facts is tracked in #3348.

Child of roadmap #3249; part of epic #3122.

Activity

  1. squid-protocol commented on Sep 23, 2026

    @squid-protocol
    OwnerAuthor

    Pairs with #3351 (CICS file I/O) for the path transaction → file → dataset, and with #3353 (TD queues) for extrapartition TDQUEUE → dataset.

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

    legacy-modernizationCOBOL refractor, dead-code extraction, and JCL forgingpriority: highCore feature broken, but workarounds exist

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions