Skip to content

CICS coverage: implicit INTO / FROM data flows as lineage edges #3492

Closed

Description

@squid-protocol

Problem

Field lineage (#3452) records explicit MOVE / COMPUTE / STRING statements. Data that arrives through a command's INTO, or leaves through its FROM, only shows up as an endpoint tag. That covers READ INTO, RETURN INTO, EXEC CICS READ / RECEIVE / RETRIEVE / READQ INTO, SQL FETCH / SELECT INTO, and WRITE / REWRITE FROM. There is no item-to-item edge, so lineage can't continue from a FILE record into the program's working area.

Proposal

Emit data_move rows (verb READ-INTO, FETCH-INTO, WRITE-FROM ...) from these statements: the FD record or host variable is the source and the INTO area the target, and FROM runs the other way. Add them to the key's data-move reader and scored field.

Acceptance (ground truth, as for every channel since #3210)

  • An independent draft reader in tests/tools/cobol_answer_key.py, which must not import the engine.
  • A new or extended answer-key section, drafted for every pinned corpus that has the construct.
  • A blind census, with every disagreement ruled against the source.
  • A scored field in tests/tools/ground_truth_ledger.py.
  • The channel follows gitgalaxy/core/how_to_add_a_fact_channel.md.

Part of #3489.

🤖 Generated with Claude Code

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

    era:2Era CICS/MVS-ESA, COBOL II/85: RESP, SQL, DPL (~1988-96) (era_tags.py)scope:sweepCompletes a class the burned estates already touch (siblings); blocks no program

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions