Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
56df35f
docs(p022): take the checkpoint-5 surface inventory, generated not typed
claude Sep 6, 2026
cc53dda
feat(bridge): prove the message matrix and the evidence slices (#259 …
claude Sep 6, 2026
d2872ee
test(bridge): close every mutation survivor with a control, not a dec…
claude Sep 6, 2026
299d768
test(evidence): record the cp5.1 mutation campaign — 40/40 caught
claude Sep 6, 2026
5553dae
fix(evidence): restore the BR-V7 controls `message` blinded, and reco…
claude Sep 6, 2026
d80359e
test(evidence): re-run the cp4 campaign against the re-anchored defin…
claude Sep 6, 2026
39b035e
test(evidence): re-run the cp5.1 campaign on the checkpoint's final head
claude Sep 6, 2026
e4393f7
feat(core): carry the resolver's message and drop the refusal cut (#2…
claude Sep 6, 2026
2a7ff6d
fix(evidence): name the catchers the runners actually report
claude Sep 6, 2026
d726b06
test(evidence): record the cp5.2 mutation campaign — 10/10 caught
claude Sep 6, 2026
327b633
test(evidence): re-run the shadow cp2 campaign against its re-anchore…
claude Sep 6, 2026
5afd97c
feat(bridge): freeze the rendered surfaces and replay them byte-for-b…
claude Sep 6, 2026
ceb8521
test(bridge): close the cp5.3 survivors with controls, not declarations
claude Sep 6, 2026
2631548
test(evidence): record the cp5.3 mutation campaign — 29/29 caught
claude Sep 6, 2026
4c2e6ee
docs(p022): bring the status surfaces level with what cp5 proves (#25…
claude Sep 6, 2026
cdff105
fix(p022): make the oracle probe executable, and unblock the queue line
claude Sep 6, 2026
074cca9
test(evidence): re-run the cp5.1 campaign with the control-integrity …
claude Sep 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions docs/evidence/p022-cp4-mutations.json
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,12 @@
{
"id": "M06",
"rule": "BR-V7",
"description": "BR-V7 dedup key drops event",
"description": "BR-V7 dedup key drops event (unobservable end to end since cp5.1 put `message` in the key)",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "(\\n\\s+)f\\.event\\.clone\\(\\),(\\n\\s+f\\.handler\\.clone\\(\\),)",
"replacement": "\\1String::new(),\\2",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
]
},
{
Expand Down Expand Up @@ -125,8 +125,8 @@
"rule": "BR-M1",
"description": "BR-M1 OWN052 note never minted",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "for _reason in &lowering\\.mos_notes \\{",
"replacement": "for _reason in lowering.mos_notes.iter().skip(usize::MAX) {",
"pattern": "for reason in &lowering\\.mos_notes \\{",
"replacement": "for reason in lowering.mos_notes.iter().skip(usize::MAX) {",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
]
Expand Down Expand Up @@ -193,8 +193,8 @@
"rule": "BR-V6",
"description": "BR-V6 an empty ignore_reason suppresses",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "\\.filter\\(\\|v\\| truthy\\(Some\\(v\\)\\)\\)",
"replacement": ".filter(|v| !v.is_null())",
"pattern": "\\.get\\(\"ignore_reason\"\\)\\n(\\s+)\\.filter\\(\\|v\\| truthy\\(Some\\(v\\)\\)\\)",
"replacement": ".get(\"ignore_reason\")\n\\1.filter(|v| !v.is_null())",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
]
Expand Down Expand Up @@ -278,7 +278,7 @@
"rule": "BR-V7",
"description": "BR-V7 dedup key drops handler",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "(\\n\\s+)f\\.handler\\.clone\\(\\),(\\n\\s+f\\.kind\\.clone\\(\\),)",
"pattern": "(\\n\\s+)f\\.handler\\.clone\\(\\),(\\n\\s+f\\.message\\.clone\\(\\),)",
"replacement": "\\1String::new(),\\2",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
Expand All @@ -298,23 +298,23 @@
{
"id": "M27",
"rule": "BR-V7",
"description": "BR-V7 dedup key drops kind",
"description": "BR-V7 dedup key drops kind (unobservable end to end since cp5.1 put `message` in the key)",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "(\\n\\s+)f\\.kind\\.clone\\(\\),(\\n\\s+f\\.advisory,)",
"replacement": "\\1String::new(),\\2",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
]
},
{
"id": "M28",
"rule": "BR-V7",
"description": "BR-V7 dedup key drops severity",
"description": "BR-V7 dedup key drops severity (unobservable end to end since cp5.1 put `message` in the key)",
"target": "rust/crates/own-bridge/src/verdict.rs",
"pattern": "(\\n\\s+)f\\.severity\\.clone\\(\\),(\\n\\s+f\\.ignore_reason\\.clone\\(\\),)",
"replacement": "\\1None,\\2",
"expected_catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
]
},
{
Expand Down
100 changes: 56 additions & 44 deletions docs/evidence/p022-cp4-mutations.result.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,26 @@
"comment": "Recorded mutation-campaign run (scripts/mutate_campaign.py --run). Raw facts only: outcomes, catchers, provenance. Counts are derived by scripts/render_checkpoint_status.py; regenerate this file by re-running the campaign, never by hand.",
"campaign": "p022-cp4",
"definition": "docs/evidence/p022-cp4-mutations.json",
"definition_sha256": "6f858c6bf6a24cc05cdbcfe2c9a43741576a31d1c5d580d6977222a173340424",
"source_commit": "a529193e3acaeab435c435aff8606707cee1dad2",
"definition_sha256": "15b10f36c0d2b46b5e3d4815babc57bfbebefecde0f6c5579e7e9d666bd1edb9",
"source_commit": "5553dae32ddf5d22592e11e84c8ed10e8c2fbc3e",
"dirty": false,
"recorded_at": "2026-09-05T19:58:31Z",
"recorded_at": "2026-09-06T15:08:56Z",
"packages": [
"own-analysis",
"own-bridge",
"own-cfg",
"own-diagnostics",
"own-ir",
"own-lowered",
"own-shadow",
"own-syntax"
],
"command": "cargo test -p <package> --no-fail-fast, for every workspace member",
"control": {
"id": "M00",
"outcome": "survived",
"catchers": [],
"elapsed_seconds": 31.0
"elapsed_seconds": 1.6
},
"mutations": [
{
Expand All @@ -31,47 +32,47 @@
"own-bridge/src/lib.rs::verdict::tests::only_error_severity_core_verdicts_are_mapped",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.2
"elapsed_seconds": 3.6
},
{
"id": "M02",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.8
"elapsed_seconds": 3.9
},
{
"id": "M03",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.5
"elapsed_seconds": 3.9
},
{
"id": "M04",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.5
"elapsed_seconds": 3.8
},
{
"id": "M05",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.2
"elapsed_seconds": 3.8
},
{
"id": "M06",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
],
"elapsed_seconds": 3.3
"elapsed_seconds": 3.8
},
{
"id": "M07",
Expand All @@ -80,39 +81,41 @@
"own-analysis/tests/fact_parity.rs::di_fact_parity",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.7
"elapsed_seconds": 3.9
},
{
"id": "M08",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.7
"elapsed_seconds": 3.8
},
{
"id": "M09",
"outcome": "caught",
"catchers": [
"own-bridge/src/lib.rs::verdict::tests::malformed_effect_entries_are_skipped_not_coerced"
],
"elapsed_seconds": 3.6
"elapsed_seconds": 3.9
},
{
"id": "M10",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.6
"elapsed_seconds": 3.9
},
{
"id": "M11",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.8
"elapsed_seconds": 4.6
},
{
"id": "M12",
Expand All @@ -121,9 +124,10 @@
"own-analysis/tests/subject.rs::leak_carries_the_acquire_origin",
"own-analysis/tests/subject.rs::origin_is_inherited_across_a_move",
"own-analysis/tests/subject.rs::param_leak_carries_the_param_origin",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 4.0
"elapsed_seconds": 4.8
},
{
"id": "M13",
Expand All @@ -132,145 +136,153 @@
"own-analysis/tests/subject.rs::region_escape_carries_the_source_identity",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.6
"elapsed_seconds": 3.9
},
{
"id": "M14",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.5
"elapsed_seconds": 3.9
},
{
"id": "M15",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.6
"elapsed_seconds": 3.8
},
{
"id": "M16",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.6
"elapsed_seconds": 3.8
},
{
"id": "M17",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.7
},
{
"id": "M18",
"outcome": "caught",
"catchers": [
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.8
},
{
"id": "M19",
"outcome": "caught",
"catchers": [
"own-bridge/src/lib.rs::verdict::tests::only_error_severity_core_verdicts_are_mapped"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.6
},
{
"id": "M20",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.3
"elapsed_seconds": 3.6
},
{
"id": "M21",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.3
"elapsed_seconds": 3.8
},
{
"id": "M22",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.6
},
{
"id": "M23",
"outcome": "caught",
"catchers": [
"own-bridge/src/lib.rs::verdict::tests::a_flow_local_code_without_a_wording_keeps_the_core_message",
"own-bridge/src/lib.rs::verdict::tests::every_di_lifetime_phrase_is_pinned_including_the_unreachable_two",
"own-bridge/src/lib.rs::verdict::tests::only_error_severity_core_verdicts_are_mapped",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::the_capture_route_names_a_non_static_source_it_can_never_be_handed",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.5
"elapsed_seconds": 3.7
},
{
"id": "M24",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.8
},
{
"id": "M25",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.9
},
{
"id": "M26",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.8
},
{
"id": "M27",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.5
},
{
"id": "M28",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/src/lib.rs::verdict::tests::dedup_keeps_findings_that_differ_only_in_an_unobservable_key_member"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.6
},
{
"id": "M29",
"outcome": "caught",
"catchers": [
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
],
"elapsed_seconds": 3.4
"elapsed_seconds": 3.7
},
{
"id": "M30",
"outcome": "caught",
"catchers": [
"own-bridge/src/lib.rs::verdict::tests::di_coercions_match_the_reference",
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden"
"own-bridge/tests/verdicts.rs::replays_every_case_to_its_golden",
"own-shadow/tests/engine.rs::this_engine_reproduces_its_committed_capture"
],
"elapsed_seconds": 3.5
"elapsed_seconds": 3.9
}
]
}
Loading
Loading