shipped 2025 · Design and build
Orchestration reachability audit
A static analysis pass over an inherited orchestration project to find which jobs are actually reachable from a schedule, and which are dead weight.
- Python
- Matillion
- Graph traversal
The problem
An inherited orchestration project had grown to well over a thousand jobs. Some ran nightly. Some had not run in years. Nobody could say which was which, and the cost of guessing wrong is deleting something that turns out to matter.
Approach
The project export is, structurally, a directed graph: schedules are entry points, and jobs invoke other jobs. Reachability is the right question, and it has an exact answer rather than a judgement call.
The tool parses the export, builds the call graph, walks outward from every scheduled entry point, and reports the complement — everything the walk never reaches. Orphans get grouped by likely cause so the review is a triage rather than a flat list of names.
Why it was worth building
The output is evidence rather than opinion. “This job is not reachable from any schedule” is a claim someone can check, which makes the retirement conversation short. Running it as a periodic check also stops the problem from silently regrowing.
Outcome
Several hundred unreachable jobs identified for retirement, and a repeatable check that can run against any project export.