Header Coverage
The DispatchAtlas license-header coverage sweep — how every file class is classified for SPDX headers across the full repository tree.
Full-repository sweep of 2026-06-10, produced by
uv run python tools/license_header.py check against every tree — tracked
files, private research trees, the evidence tree, and generated build
outputs. The gate re-derives this classification from on-disk bytes on every
pre-commit and CI run; this page records the ratified baseline.
Result
| Classification | Files | Meaning |
|---|---|---|
| has-inline | 293 | Commentable file carrying its canonical single-line header at the correct position |
| blanket-covered | 107,891 | Data, asset, marker, and generated files covered by REUSE.toml and the project LICENSE (including the machine-emitted records under the experiments workspace's local layers) |
| MISSING | 0 | — |
| unregistered | 0 | — |
| Total | 108,184 |
reuse lint independently reports the tracked tree compliant with REUSE 3.3
(359/359 files carrying both license and copyright information).
Closed during the sweep
The sweep surfaced and closed seven gaps: six private pages carried
a non-standard multi-line attribution block instead of the single-line standard
(canonical header injected, non-standard block removed); one stylesheet
carried its identifier inside a malformed multi-line block (normalized to the
canonical first-line form). The seven portal .mdx pages and the site-index route
module were ratified under their correct comment forms (JSX comment after
frontmatter; line-comment form) rather than misclassified.
Recurrence prevention
A missing or unregistered header anywhere fails check with exit 1. The
gate runs as a pre-commit hook (covering all local trees) and as a CI step
beside reuse lint, so a fresh header-less file cannot land silently.