The dependency-free CLI in tools/adaptive_policy_evidence_cli.py turns the
N3 shadow-evidence contract into an operational workflow.
It does not execute recommendations.
Prepare a JSON request that contains:
captured_at timestamp;Then run:
python tools/adaptive_policy_evidence_cli.py plan \
--request path/to/request.json \
--output evidence/adaptive/plans/plan-001.json
The output file must not already exist. The CLI refuses to overwrite evidence.
After the real process completes unchanged, prepare an observation JSON:
{
"actual_choice_id": "baseline-choice",
"observed_at": "2026-09-22T12:05:00Z",
"outcome": "succeeded",
"verified_utility": 0.7,
"escaped_defect": false,
"high_risk_escape": false,
"actual_cost": {
"project_spend_usd": 0,
"compute_units": 1,
"review_units": 1,
"human_attention_units": null
},
"evidence_refs": ["verification:..."],
"limitations": ["shadow choice was not executed"]
}
Then run:
python tools/adaptive_policy_evidence_cli.py outcome \
--plan evidence/adaptive/plans/plan-001.json \
--observation path/to/observation.json \
--output evidence/adaptive/outcomes/outcome-001.json
The outcome binds to the exact plan digest.
Prepare a cohort request:
{
"plans": [
"evidence/adaptive/plans/plan-001.json"
],
"outcomes": [
"evidence/adaptive/outcomes/outcome-001.json"
],
"limitations": [
"observational shadow cohort; no randomized policy assignment"
]
}
Then run:
python tools/adaptive_policy_evidence_cli.py cohort \
--request path/to/cohort.json \
--output evidence/adaptive/cohorts/cohort-001.json
Recommended repository layout:
evidence/adaptive/
plans/
outcomes/
cohorts/
Do not commit secrets, private prompts, credentials, personal data, or provider-private material into the evidence corpus.
A real N3 corpus should retain:
Do not filter the corpus down to cases where the adaptive policy looked good.
N3 can establish:
N3 shadow mode generally cannot establish the causal performance of an unexecuted alternative. That requires a later controlled experiment.
The plan request must include captured_at, and the later observation must
include observed_at.
The joiner rejects an observation timestamp earlier than the frozen plan’s capture time.
For real N3 evidence, persist the plan before the outcome is known. The explicit timestamps support audit/replay, while repository/CI artifact history provides the stronger external evidence that the plan actually existed before the outcome.