Find what the scheduler does not enforce

Proprietary

Reconcile the scheduler against the build and against the JCL library, and mark what it has missed. A link-edit deck that includes an object binds whatever the object library held when the binder ran, so the job that compiles the object has to have run before the job that links the module — a row per order the build requires, with the job that writes the object, the job that reads it, the schedules that submit each, and whether a condition puts them in that order, directly or through another job. The second table is the library from the job's side: every JCL member with the schedules that submit it, and the members nobody orders, which are the jobs somebody remembers to run. A third finding is the reference no deck accounts for: a name an assembler member uses and defines nowhere that no INCLUDE card names is one the binder's autocall resolves, so what the module holds is whatever SYSLIB held on the day it ran. All three are findings as well. AnalyzeScheduleGaps answers the same question and changes nothing.

io.moderne.mainframe.controlm.FindScheduleGaps
mod run . --recipe=io.moderne.mainframe.controlm.FindScheduleGaps

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