Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Downstream independent verification — FCRP-SYSTEM-008The exact Recovery Integrity source head remains intentionally immutable for this proof: ContractGraph-QA draft PR #64 independently reproduced the Exact CGQA verification head: Workflow: Receipt: Evidence artifact: Load-bearing negative controls also passed:
This is downstream verification of the process-crash recovery boundary only. It does not prove arbitrary physical power-loss durability and grants no execution, mutation, deployment, or production recovery authority. The source commit is not modified by this evidence note so the receipt continues to bind the same immutable subject rather than creating a self-referential proof cycle. |
What changed
Recovery Integrity v0.1 now has three increasingly concrete evidence layers:
openai/codex#26990;Key files:
signals/018-recovery-integrity-projection-authority-continuation.mdsignals/README.mdrouting updateprotocols/recovery-integrity-v0.1/README.mdprotocols/recovery-integrity-v0.1/PROCESS_CRASH_EVIDENCE.mdprotocols/recovery-integrity-v0.1/schema/recovery-integrity-record.schema.jsonprotocols/recovery-integrity-v0.1/validate.pyprotocols/recovery-integrity-v0.1/generation_crash_simulator.pyprotocols/recovery-integrity-v0.1/test_generation_crash_simulator.pyprotocols/recovery-integrity-v0.1/fault_injection_harness.pyprotocols/recovery-integrity-v0.1/test_fault_injection_harness.pyprotocols/recovery-integrity-v0.1/fixtures/codex-26990-sanitized.jsonprotocols/recovery-integrity-v0.1/fixtures/unsafe-fork-must-fail.jsonprotocols/recovery-integrity-v0.1/fixtures/generation-matrix.expected.txtprotocols/recovery-integrity-v0.1/fixtures/process-crash-matrix.expected.txt.github/workflows/recovery-integrity-v0.1.ymlCore boundary
ALLOW_REBUILDnever impliesALLOW_FORK.Public fixture
The sanitized
openai/codex#26990fixture remains intentionally bounded:The public evidence is enough to support a projection-rebuild classification, but not enough to prove the exact safe continuation edge.
Generation-N simulator
Load-bearing negative controls reject:
projection generation > authority generation + ALLOW_REBUILD;ALLOW_FORKwhen continuation proof, side effects, or current authority remain unresolved.Real SQLite + atomic projection crash harness
The new harness uses a real SQLite authority store with WAL /
synchronous=FULLplus an atomically replaced JSON projection:A child process advances generation 1 → 2 and terminates with
os._exit(91)at selected durability boundaries. A fresh verifier then reads the actual post-crash files and SQLite state.Observed matrix:
Every observed state becomes a
RecoveryIntegrityRecord, passes the same semantic validator, and keepsexecution_continuation=HOLD.This mechanically establishes several useful boundaries:
STALE;CI acceptance contract
The Recovery Integrity workflow now gates:
Evidence boundary
The new harness is process-crash evidence, not proof of arbitrary physical power-loss durability.
This PR therefore does not claim that Codex implements generation markers, that SQLite is universally authoritative, that every projection is derivable, or that full power-loss safety is proven.
Next hardening frontier
After this layer is green on exact head, the next meaningful step is stronger storage/power-loss fault injection (VM/filesystem/product-native) and then routing emitted
RecoveryIntegrityRecordevidence through ProofPath → CML → ContractGraph-QA for independent cross-repository verification.