SDK guide / 07
Assemble a release argument without manufacturing a confidence score.
Promotion, transfer validation, assurance, and surveillance remain separate gates. Each answers a different question and preserves the scope and defeaters that limit its conclusion.
Release evidence
A chain of qualified questions—not one score.
- 01Promote
Verify that a reproduced failure is coherent enough to become a durable regression asset.
- 02Execute
Run the promoted pack against the proposed system version and complete every declared gate.
- 03Validate transfer
Compare simulation with real anchors inside predeclared regions and tolerances.
- 04Challenge
Bring independent evidence designed to find what the known regressions may have missed.
- 05Assemble
Bind regressions, challenges, scope, policy, and open defeaters into one dossier.
- 06Monitor
Tie post-deployment signals back to the exact scoped assurance report.
Regression promotion
Qualify the asset before using it as a gate.
Discovery regressions require coherent provenance. Release-gate candidates additionally require a meaningful replicated intervention association, one-minimal counterexample, simulation validation, a real-world anchor, and the correct canonical case.
from iso_obs.promotion import (
PromotionIntent,
RegressionPromotionRequest,
review_regression_promotion,
)
request = RegressionPromotionRequest(
request_id="promote-blind-intersection",
request_version="1",
intent=PromotionIntent.RELEASE_GATE_CANDIDATE,
source_failure_content_digest=failure.content_digest(),
counterfactual_design_digest=design.content_digest(),
counterfactual_report_digest=counterfactual_report.content_digest(),
minimal_counterexample_report_digest=minimal.content_digest(),
regression_pack_digest=regression_pack.content_digest(),
condition_bindings=condition_bindings,
limitations=("Requires execution against the proposed version.",),
)
review = review_regression_promotion(
request,
source_failure=failure,
counterfactual_design=design,
counterfactual_report=counterfactual_report,
minimal_counterexample=minimal,
regression_pack=regression_pack,
)Release-gate-candidate readiness says that a pack is qualified for execution. The campaign must still complete and pass against the proposed system version.
External validity
State where simulation evidence transfers—and where it does not.
Use SimToRealValidityPlan for region-specific feature and failure-rate gap tolerances. Use TransportValidationPlan when the question is whether simulator discrepancy remains bounded within a declared anchor envelope.
Transfer evidence cannot be extrapolated beyond sampled regions, anchors, populations, or operating conditions. Unquantified sources remain blockers or restrictions.
Release assurance
Let the weakest blocking evidence govern.
Every required failure fingerprint must link to a qualified promotion and a release-eligible campaign. Independent passing challenge evidence is required for support within scope.
from iso_obs.assurance import (
ReleaseAssuranceDossier,
evaluate_release_assurance,
)
dossier = ReleaseAssuranceDossier(
dossier_id="policy-v18-warehouse-release",
dossier_version="1",
release_scope=release_scope,
policy=assurance_policy,
regression_evidence=known_failure_evidence_links,
challenge_evidence=independent_challenge_evidence,
defeaters=declared_defeaters,
limitations=("Human release authority remains accountable.",),
)
report = evaluate_release_assurance(
dossier,
promotion_reviews=promotion_reviews,
campaign_reports=completed_campaign_reports,
)supported_within_scope is technical decision support. It is not deployment authorization, a safety guarantee, or evidence outside the declared release scope.
Post-deployment
Escalate when new evidence challenges the scoped claim.
Sequential monitoring uses preregistered e-processes whose thresholds may be checked after every observation. Historical threshold crossings remain visible even if the current evidence value later falls.
from iso_obs.surveillance import (
SequentialMonitoringPlan,
evaluate_sequential_surveillance,
)
report = evaluate_sequential_surveillance(
monitoring_plan,
assurance_report,
ordered_observations,
)Relevant API
Classes and capabilities in the release chain.
| Class or function | Import from | Use it to |
|---|---|---|
RegressionPromotionRequest | iso_obs.promotion | Bind a failure, mechanism evidence, minimality result, and regression pack. |
RegressionPromotionReview | iso_obs.promotion | Report discovery readiness or release-gate-candidate readiness. |
SimToRealValidityPlan | iso_obs.sim_to_real | Declare regions, features, real anchors, and acceptable transfer gaps. |
SimToRealValidityReport | iso_obs.sim_to_real | Assess simulation/real gaps with familywise uncertainty control. |
TransportValidationPlan | iso_obs.transportability | Validate discrepancy within an explicit anchor envelope. |
ReleaseScope | iso_obs.assurance | Bind system artifacts, operating domain, evidence envelope, and risk policy. |
ReleaseAssuranceDossier | iso_obs.assurance | Assemble regressions, independent challenges, and open defeaters. |
ReleaseAssuranceReport | iso_obs.assurance | Return blocked, restricted, or supported-within-scope plus reason codes. |
SequentialMonitoringPlan | iso_obs.surveillance | Tie anytime-valid monitoring signals to one assurance report. |
SequentialSurveillanceReport | iso_obs.surveillance | Continue monitoring or escalate scoped review after threshold crossing. |