Repository navigation
Commit 7d85328
[green] bind completion era to candidate source ancestry
Turn the completion-path ancestry RED green without weakening anything.
The gap: create_hil_completion_fragment selected the ADR-0038
derivation era only through the qualification checkout's HEAD
(_load_qualification_policy -> _qualification_derivation_for_checkout)
and never consulted the CANDIDATE's bound source commit; on a root
without git identity the era fell back silently to the historical
version-routed arithmetic inside _derived_qualification_thresholds,
surfacing as the misleading 'OI-1 policy thresholds were not derived
from baseline esp32-4mb' error the repaired fixture uncovered.
Fix (firmware/scripts/release_bundle.py):
- create_hil_completion_fragment derives the era once from
release.provenance.pyble.commit via
_qualification_derivation_for_source against the qualification root
(strict descendant of 5620f2f => V4; boundary/ancestor => historical;
unprovable => fail closed), and threads it through both
_load_v5_completion_observation calls.
- _load_v5_completion_observation requires the candidate-bound
derivation and passes it into _load_qualification_policy; the lineage
branch keeps its own clean-checkout re-derivation.
- _load_qualification_policy accepts an optional pre-proven derivation
and forwards it to _validate_qualification_policy; every other call
site is unchanged (HEAD-ancestry routing as before).
- _qualification_derivation_for_source now names ancestry when failing
closed: a merge-base failure (missing object, non-checkout, unrelated
history) raises 'ancestry ... unprovable' instead of the bare
cannot-inspect message; the diverged-sibling refusal keeps its
fail-closed behaviour with the same ancestry wording. No acceptance
is widened anywhere.
Witnessed green: test_release_v060_promotion_lifecycle (7 OK, including
the new ancestry pin), test_release_v060_contract (12 OK),
test_release_v060_lifecycle (13 OK),
test_release_historical_source_contract (15 OK), test_oi1_profile_bench
(78 OK), test_oi1_rp2_profile_bench (15 OK), test_release_finalization
(21 OK), test_v060_qualification_workflow (19 OK),
test_release_v060_private_gates (18 OK).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CAVghCmvKjF4BZFBUjAMwc
Signed-off-by: Viwat Vchirawongkwin <viwat.v@chula.ac.th>1 parent d1aca40 commit 7d85328
1 file changed
Lines changed: 58 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20991 | 20991 | | |
20992 | 20992 | | |
20993 | 20993 | | |
20994 | | - | |
20995 | | - | |
20996 | | - | |
20997 | | - | |
20998 | | - | |
20999 | | - | |
21000 | | - | |
| 20994 | + | |
| 20995 | + | |
| 20996 | + | |
| 20997 | + | |
| 20998 | + | |
| 20999 | + | |
| 21000 | + | |
| 21001 | + | |
| 21002 | + | |
| 21003 | + | |
| 21004 | + | |
| 21005 | + | |
| 21006 | + | |
| 21007 | + | |
21001 | 21008 | | |
21002 | 21009 | | |
21003 | 21010 | | |
| |||
21006 | 21013 | | |
21007 | 21014 | | |
21008 | 21015 | | |
21009 | | - | |
21010 | | - | |
| 21016 | + | |
| 21017 | + | |
| 21018 | + | |
21011 | 21019 | | |
21012 | 21020 | | |
21013 | 21021 | | |
| |||
21326 | 21334 | | |
21327 | 21335 | | |
21328 | 21336 | | |
| 21337 | + | |
| 21338 | + | |
21329 | 21339 | | |
| 21340 | + | |
| 21341 | + | |
| 21342 | + | |
| 21343 | + | |
| 21344 | + | |
| 21345 | + | |
| 21346 | + | |
21330 | 21347 | | |
21331 | 21348 | | |
21332 | 21349 | | |
| |||
21346 | 21363 | | |
21347 | 21364 | | |
21348 | 21365 | | |
| 21366 | + | |
21349 | 21367 | | |
21350 | 21368 | | |
21351 | 21369 | | |
| |||
26237 | 26255 | | |
26238 | 26256 | | |
26239 | 26257 | | |
| 26258 | + | |
26240 | 26259 | | |
| 26260 | + | |
| 26261 | + | |
| 26262 | + | |
| 26263 | + | |
| 26264 | + | |
| 26265 | + | |
| 26266 | + | |
| 26267 | + | |
| 26268 | + | |
26241 | 26269 | | |
26242 | 26270 | | |
26243 | 26271 | | |
| |||
26255 | 26283 | | |
26256 | 26284 | | |
26257 | 26285 | | |
26258 | | - | |
26259 | | - | |
26260 | | - | |
| 26286 | + | |
| 26287 | + | |
| 26288 | + | |
| 26289 | + | |
26261 | 26290 | | |
26262 | 26291 | | |
26263 | 26292 | | |
| |||
26592 | 26621 | | |
26593 | 26622 | | |
26594 | 26623 | | |
| 26624 | + | |
| 26625 | + | |
| 26626 | + | |
| 26627 | + | |
| 26628 | + | |
| 26629 | + | |
| 26630 | + | |
| 26631 | + | |
| 26632 | + | |
| 26633 | + | |
| 26634 | + | |
| 26635 | + | |
| 26636 | + | |
| 26637 | + | |
| 26638 | + | |
26595 | 26639 | | |
26596 | 26640 | | |
26597 | 26641 | | |
| |||
26657 | 26701 | | |
26658 | 26702 | | |
26659 | 26703 | | |
| 26704 | + | |
26660 | 26705 | | |
26661 | 26706 | | |
26662 | 26707 | | |
| |||
26806 | 26851 | | |
26807 | 26852 | | |
26808 | 26853 | | |
| 26854 | + | |
26809 | 26855 | | |
26810 | 26856 | | |
26811 | 26857 | | |
| |||
0 commit comments