Propose capacity guards before table appends

Proprietary

Guard an approved ADD 1 and adjacent equal-width character MOVE into one fixed OCCURS table before changing the count. Derive capacity from the declaration and reject negative counts or counts at or above capacity through an approved existing terminal exit. Require exact source and COPY snapshots, disjoint ordinary storage and an explicit count-of-stored-rows contract. Require a bounded local integer witness for an invalid destination subscript. Unknown values and unsupported arithmetic do not establish a finding. Preserve disjoint integer facts across a prior equal-width character table write only when every possible subscript is proven in bounds. Prove the generated condition over all integers and prove that every accepted increment fits the counter and produces a valid table subscript. Preserve the original increment and write and all bytes outside the inserted guard. Add no period and discard no row silently. Keep findings when an unproven exit or unsupported insertion layout prevents a proposal. Application team review remains required.

io.moderne.mainframe.security.ProposeTableAppendCapacityGuard

Required

Exact approved source path.

Exact program ID. Retain quotes for literal IDs.

Lowercase SHA-256 of the complete approved UTF-8 source without a byte order mark.

JSON mapping every ordinary data COPY name to its approved lowercase SHA-256.

One-based line of ADD 1 immediately before the selected table MOVE in the same sentence.

Root-first dotted declaration of the count incremented by ADD and used as the destination subscript.

Root-first dotted PIC X declaration within one fixed OCCURS dimension.

COUNT_STORED_ROWS approves that the count is the number of occupied rows. A valid append increments it once and writes the next row. Full or invalid counts must take the approved overflow exit before changing the count.

Existing terminal paragraph approved for full or invalid counts before incrementing. The contract must preserve cleanup, messages and transaction behavior and report incomplete output. An optional IN or OF section qualifier is supported.

Provenance of the approved append policy and overflow behavior at the exact source and COPY snapshots.

mod run . --recipe=io.moderne.mainframe.security.ProposeTableAppendCapacityGuard \ -P sourcePath=security/cbl/VAPG001.cbl \ -P programName=VAPG001 \ -P sourceSha256=0000000000000000000000000000000000000000000000000000000000000000 \ -P copybookSnapshots='{}' \ -P appendLine=15 \ -P counter=WS-COUNT \ -P destination=OUT-TABLE.OUT-ROW \ -P appendPolicy=COUNT_STORED_ROWS \ -P approvedExit=OVERFLOW-EXIT \ -P contractSource='mainframe-fixtures fictional append contract'

Install it once from Recipe actions, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.