You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Refraction DAG architect: multi-mode OPEN assigns the first mode to every file, so no program ever has an output (all JCL DDs DISP=SHR) #3204
(zopeneditor SAM1.cbl:357). The result is inputs = {CUSTFILE, CUSTOUT, CUSTRPT, TRANFILE} and outputs = {}. The mode keyword OUTPUT is itself treated as a file token and ignored.
Effect
Both corpora (zopeneditor, CBSA) report zero outputs for every program. So:
generate_zero_trust_jcl gives every DD DISP=SHR, never (NEW,CATLG,DELETE). The "zero-trust" JCL for SAM1 opens its two output files shared.
The DAG's topological sort has no producer edges, so the execution order is arbitrary.
analyze_cobol_intent's SELECT regex is separate and fine here. The bug is only the OPEN-mode split.
Fix: tokenise the operand list and switch mode at each INPUT|OUTPUT|I-O|EXTEND keyword. Add the SAM1 shape as a test in tests/cobol_mainframe/test_cobol_dag_architect.py. The engine-side alternative (named OPEN-mode extraction) is filed separately.
Activity
fix(refraction): forge parser fixes -- multi-mode OPEN, per-statement…