validation: tip tooling no longer reads renamed source paths

Fixes the regressions from the entry/compiler renames (2b3c2a7, d318911)
that Astra reproduced at d318911:
- run_refined_dfg.verify_source: a manifest file missing from the checkout
  is a 'Source mismatch' (was FileNotFoundError); the current-checkout
  (Jet scenario) capture hashes the manifest's harness files plus the
  checkout's own 'git ls-files src', not historical src paths.
- time_window_dfg: candidate file list names kernels/blocked.cu.
- test_projected_pairs: the a135252-only harness's runtime_source is the
  historical receipt value (historical_runtime_source) in the receipt
  fixture and the two mocked run_case.main tests; runtime_source itself
  stays tested against the a135252 package (historical_package).
Harness files, pins, manifests and thresholds are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Opus 5.5 committed 2026-10-26 22:19:09 +00:00
1 parent d318911221
commit 36ad523662
3 files changed
+15 -4

No files matched your search

+4 -2
View File
@@ -298,7 +298,8 @@ def verify_source(source, collision="SRT", observation_mode="last_base_step", je
sys.path.insert(0, str(HERE))
from source_provenance import checkout_provenance
paths = set(expected["sha256"])
# Harness files from the manifest; production files as this checkout lists them.
paths = {name for name in expected["sha256"] if not name.startswith("src/")}
if observe_cv:
paths.add("tests/validation/run_jet_circle_cv.py")
paths.update(subprocess.check_output(
@@ -310,7 +311,8 @@ def verify_source(source, collision="SRT", observation_mode="last_base_step", je
for name in sorted(paths)},
)
for name, digest in expected["sha256"].items():
if hashlib.sha256((source / name).read_bytes()).hexdigest() != digest:
path = source / name
if not path.is_file() or hashlib.sha256(path.read_bytes()).hexdigest() != digest:
raise RuntimeError("Source mismatch: " + name)
return expected