Independent Rerun Workflow¶
Independent reruns make ClaimBound cards stronger without turning the project into a certification authority.
When To Use This¶
Use this workflow when another operator wants to rerun an existing card and publish an updated reproduction record or an honest non-pass.
Typical fields:
result_status: the gate outcome under the frozen protocol (PASSED_UNDER_PROTOCOL,NEGATIVE_RESULT_UNDER_PROTOCOL,BLOCKED_SOURCEorINSUFFICIENT_COVERAGE);reproduction_level:REPRODUCED_OUTCOMEorREPRODUCED_OUTCOME_WITH_SOURCE_BYTE_DRIFTwhen another run confirms the outcome.
The rerun must stay inside the original claim boundary unless a new protocol is opened.
Request Path¶
- Open a GitHub issue using the reproduction request template.
- Link the original evidence card and protocol.
- State expected rerun scope, source access risks and forbidden claims.
The issue is only a request. It is not reproduction evidence.
If you are new to the project, start with the external operator starter pack. It explains how to set up the repository, create a local run root and avoid publishing raw payloads or overbroad claims.
For copy-paste commands and expected outputs, see examples/rerun/README.md.
One-command reruns (any OS)¶
Frozen public-data reruns do not require bash, jq, curl or shasum on the primary path. See platform support.
uv run claimbound rerun nasa-d103 --operator "<your-handle>"
uv run claimbound rerun noaa-d131 --operator "<your-handle>"
uv run claimbound drift eea-source-audit
Or run VERIFY shortcuts:
uv run claimbound verify nasa-rerun --operator "<your-handle>"
uv run claimbound verify noaa-rerun --operator "<your-handle>"
uv run claimbound verify eea-drift
Tier packs: external verification.
PR Path¶
- Create a local run root outside this repository.
- Read the original protocol before collecting fresh outcomes.
- Record source access date, source URL, command and environment notes.
- Keep raw payloads, transcripts and restricted source materials outside the repository.
- Record raw hashes or a blocked-hashing reason.
- Write a sanitized rerun summary under
artifacts/. - Create a reproduction evidence card under
docs/evidence_cards/. - Render SVG from the validated JSON card when applicable.
- Update the registry only after validation.
- Open a PR using the
I Reproduced This Cardtemplate.
Status Selection¶
Set result_status to the honest gate outcome from the rerun:
PASSED_UNDER_PROTOCOLwhen the frozen gate passed;NEGATIVE_RESULT_UNDER_PROTOCOLwhen the gate did not pass;BLOCKED_SOURCEorINSUFFICIENT_COVERAGEwhen the source boundary blocks a fair result.
Set reproduction_level separately:
REPRODUCED_OUTCOMEwhen the original gate outcome is reproduced and source bytes remain stable;REPRODUCED_OUTCOME_WITH_SOURCE_BYTE_DRIFTwhen the gate-level outcome matches but fresh source bytes differ from the original raw payload bytes;not independently reproducedwhen no rerun has confirmed the outcome yet.
Do not put REPRODUCED_OUTCOME_WITH_SOURCE_BYTE_DRIFT in result_status.
Verification¶
Before opening the PR:
uv run claimbound validate-all
uv run --extra dev python -m pytest -q
Do not edit thresholds, gates or claim boundaries to force a reproduced result.
Source Drift And Boundary Questions¶
If a source changed but you are not ready to produce a rerun card, open a
Source drift report issue instead. If a card seems to imply more than the
evidence supports, open a Card boundary question issue. Neither issue type is
evidence by itself; both are triage paths for deciding whether a new rerun,
repair or documentation change is needed.