Parents: #460, #496. Blocking complete modern evidence publication for #913.
Current behavior
tools/exact-parent-regression.ts defaults to attribution schema v3. Its v3 branch always calls validateSharedMeasurementOverlay, requiring each binary revision to be a one-commit child of its logical engine revision with a non-empty symmetric changed-path set. A binary built directly from the named logical parent/candidate therefore fails before collection. The existing validateDirectBinaryRevisions helper is reachable only for older schemas.
The frozen v3 contract explicitly describes identical measurement overlays, and the artifact validator requires a non-empty overlay inventory. That contract must not silently change. The ordinary direct-parent command shown in docs/benchmarks.md also omits the now-required binary provenance options.
Required change
Introduce a versioned first-class direct-binary provenance mode alongside the existing overlay mode. Direct mode must attest exact equality of logical and binary revisions, an empty overlay inventory, identical workload source, exact first-parent relation, clean source/dependencies and binary/source hashes. Overlay mode must retain the current strict symmetric-path/blob checks. Reject mixed modes, ambiguous or stale revisions, undeclared changes, missing metadata, and attempts to label an overlay as direct.
Keep v1/v2/v3 artifacts and validators byte-compatible. Do not create dummy overlay commits, downgrade a new experiment merely to bypass provenance, weaken checksum/occupancy/thermal/dispersion guards, or invent performance results. Add negative fixtures and update the owned collector/growth contracts and documented direct-parent invocation. Then collect #913's actual parent/candidate evidence using the matching mode.
Parents: #460, #496. Blocking complete modern evidence publication for #913.
Current behavior
tools/exact-parent-regression.tsdefaults to attribution schema v3. Its v3 branch always callsvalidateSharedMeasurementOverlay, requiring each binary revision to be a one-commit child of its logical engine revision with a non-empty symmetric changed-path set. A binary built directly from the named logical parent/candidate therefore fails before collection. The existingvalidateDirectBinaryRevisionshelper is reachable only for older schemas.The frozen v3 contract explicitly describes identical measurement overlays, and the artifact validator requires a non-empty overlay inventory. That contract must not silently change. The ordinary direct-parent command shown in docs/benchmarks.md also omits the now-required binary provenance options.
Required change
Introduce a versioned first-class direct-binary provenance mode alongside the existing overlay mode. Direct mode must attest exact equality of logical and binary revisions, an empty overlay inventory, identical workload source, exact first-parent relation, clean source/dependencies and binary/source hashes. Overlay mode must retain the current strict symmetric-path/blob checks. Reject mixed modes, ambiguous or stale revisions, undeclared changes, missing metadata, and attempts to label an overlay as direct.
Keep v1/v2/v3 artifacts and validators byte-compatible. Do not create dummy overlay commits, downgrade a new experiment merely to bypass provenance, weaken checksum/occupancy/thermal/dispersion guards, or invent performance results. Add negative fixtures and update the owned collector/growth contracts and documented direct-parent invocation. Then collect #913's actual parent/candidate evidence using the matching mode.