diff --git a/conformance/lib/status.py b/conformance/lib/status.py index b0e2c01..a91f748 100755 --- a/conformance/lib/status.py +++ b/conformance/lib/status.py @@ -108,7 +108,14 @@ FLUX_API = "kustomize.toolkit.fluxcd.io" # conformance/tests — those are the TESTS; they are the VERIFICATION axis, counted there. # ci/tests — gate unit-test fixtures embed example R-IDs as DATA. # registry.yaml — the requirement mirror itself, not an implementation of anything. -IMPL_EXCLUDE_PREFIXES = ("conformance/tests/", "ci/tests/") +# `conformance/runs/` is excluded for a subtler reason than the test dirs: the ledger and the +# preserved run logs CONTAIN the requirement IDs they are evidence FOR. Counting them as +# implementing evidence makes `last_change` move every time proof is recorded, so a row's +# git_sha always predates it and EVERY proof degrades to stale-proof the instant it is +# committed — recording the proof destroys it. The ledger is the proof record; it must not +# participate in the freshness computation about itself. (Found live 2026-09-01 on the first +# PROVEN row.) +IMPL_EXCLUDE_PREFIXES = ("conformance/tests/", "ci/tests/", "conformance/runs/") IMPL_EXCLUDE_PATHS = ("conformance/requirements/registry.yaml",)