A1 is not a path filter. It is an ordered decision contract: tests are handled first, low-confidence path roles are removed, then language support, file access, and frontend lowering must each succeed before a file may enter the analysis engines.
This is the exact order in report/analyze.py::analyze_paths(). Every terminal node becomes either an inventory reason or the single analyzed path.
The tree distinguishes exclusion policy from technical failure. A generated file and a broken parser are both skipped, but for different, inspectable reasons.
Test findings stay off by default; linkage facts remain.
Low-confidence source roles stop before parsing.
The suffix does not map to a recognized code language.
The language is known, but has no lowering.
The file could not be read.
The frontend raised; the exception type is kept.
The frontend returned no trustworthy ModuleIR.
The ModuleIR enters signals, graphs, tools, and ranking.
The live scan uses SKIP_CONFIDENCE = 0.35 as a binary gate.
Values at or below the cutoff do not enter the main analysis; they are not merely assigned
a smaller finding score.
| Path role | Confidence | Live-scan result | Examples |
|---|---|---|---|
| Product or unmatched code | 1.00 | ANALYZE | src · app · lib · services |
| Test source | 0.45 | LINKAGE | Full analysis only with --include-tests |
| Operational script | 0.45 | ANALYZE | scripts · script |
| Data migration | 0.60 | ANALYZE | RunPython · RunSQL · op.execute |
| Generated schema migration | 0.30 | SKIP | Django / Alembic output |
| Docs and docs examples | 0.30-0.35 | SKIP | docs · documentation |
| Generated or build output | 0.25-0.30 | SKIP | generated · dist · build |
| Vendor or dependency | 0.20-0.25 | SKIP | vendor · node_modules · .venv |
| Fixture or sample | 0.10 | SKIP | fixtures · samples · cases · baselines |
A skipped test is still lowered for imports and referenced symbols. That evidence prevents tested functions from looking dead and feeds the static test graph.
Generated schema output is skipped. RunPython, RunSQL, op.execute, and equivalent data-moving logic are promoted to confidence 0.60 and analyzed.
analyzed or an explicit skip reason. During whole-directory Web and CLI
discovery, some unsupported, generated, or vendored paths can be filtered before the
orchestrator; the inventory therefore describes considered files, not every physical file in
the repository.