Claim Audits¶
Claim-level reporting-stability audits.
- class updatesupport.claim.ClaimAudit(claim, primary, certificate=None, witness=None, model_assisted=None, decision=None, decision_repair_candidate=None, decision_repair_search_exact=None, screening=None, status='inconclusive', reasons=(), limitations=(), title='Claim Audit')[source]¶
Bases:
ReportArtifactMixinReview artifact that certifies, breaks, or repairs a reporting claim.
- Parameters:
claim (ClaimSpec)
primary (PublicDescentReport)
certificate (RepresentationStabilityCertificate | None)
witness (WitnessReport | None)
model_assisted (ModelAssistedStabilitySummary | None)
decision (DecisionResult | None)
decision_repair_candidate (PublicRepresentationCandidate | None)
decision_repair_search_exact (bool | None)
screening (ClaimScreeningResult | None)
status (str)
title (str)
- primary: PublicDescentReport¶
- certificate: RepresentationStabilityCertificate | None = None¶
- witness: WitnessReport | None = None¶
- model_assisted: ModelAssistedStabilitySummary | None = None¶
- decision: DecisionResult | None = None¶
- decision_repair_candidate: PublicRepresentationCandidate | None = None¶
- screening: ClaimScreeningResult | None = None¶
- property repair_candidate: PublicRepresentationCandidate | None¶
- property interval¶
Primary hidden-composition interval.
- property refinement_recommendations: tuple[ClaimRefinementRecommendation, ...]¶
Rank refinements by their role in stabilizing this claim.
- recommend_refinements(*, top=None)[source]¶
Return claim-centered public-refinement recommendations.
This is intentionally different from the lower-level
updatesupport.recommend_refinements(): it annotates each candidate with claim-specific repair signals such as whether it satisfies the ambiguity limit or is the selected decision-invariant repair.- Parameters:
top (int | None)
- Return type:
- repair_plan(*, action_costs=None, top=None, title='Claim Repair Plan')[source]¶
Return a cost-aware repair plan for this claim audit.
- class updatesupport.claim.ClaimNode(claim, children=(), name=None, role=None, metadata=<factory>)[source]¶
Bases:
objectOne node in a nested claim tree.
A node wraps an ordinary
ClaimSpecand optional child nodes. This keeps hierarchical audits as an orchestration/reporting concern: each node is still audited by the same single-claim machinery.- Parameters:
- class updatesupport.claim.ClaimNodeAudit(node, audit, children=(), path=(), depth=0)[source]¶
Bases:
objectAudit result for one claim-tree node and its descendants.
- Parameters:
node (ClaimNode)
audit (ClaimAudit)
children (Sequence[ClaimNodeAudit])
depth (int)
- audit: ClaimAudit¶
- children: Sequence[ClaimNodeAudit] = ()¶
- walk()[source]¶
- Return type:
tuple[ClaimNodeAudit, …]
- class updatesupport.claim.ClaimRepairOption(rank, columns, source, cost, before_ambiguity, after_ambiguity, reduction, reduction_percent, public_cells, satisfies_ambiguity_limit=None, certifies_claim=False, selected_repair=False, decision_repair=False, reason='')[source]¶
Bases:
objectOne candidate public-representation repair for a claim.
- Parameters:
- class updatesupport.claim.ClaimRepairPlan(audit, options, action_costs=<factory>, title='Claim Repair Plan')[source]¶
Bases:
ReportArtifactMixinCost-aware consolidation of claim repair and refinement evidence.
- Parameters:
audit (ClaimAudit)
options (tuple[ClaimRepairOption, ...])
title (str)
- audit: ClaimAudit¶
- options: tuple[ClaimRepairOption, ...]¶
- property recommended: ClaimRepairOption | None¶
- property certifying_options: tuple[ClaimRepairOption, ...]¶
- property non_certifying_options: tuple[ClaimRepairOption, ...]¶
- class updatesupport.claim.ClaimRefinementRecommendation(columns, source, before_ambiguity, after_ambiguity, reduction, reduction_percent, public_cells, meets_ambiguity_limit=None, selected_repair=False, decision_repair=False, reason='')[source]¶
Bases:
objectClaim-centered public-refinement recommendation.
- Parameters:
- class updatesupport.claim.ClaimScreeningResult(backend, attempted, used, certified, fallback_required, exact_solve_avoided, reason, observed_value=None, lower=None, upper=None, ambiguity=None, decision_invariant=None, ambiguity_limit_met=None, q_name=None, conservative=True, compiled_templates_built=0, support_solves=0, error=None)[source]¶
Bases:
objectOptional conservative pre-screen used before an exact claim audit.
- Parameters:
backend (str)
attempted (bool)
used (bool)
certified (bool)
fallback_required (bool)
exact_solve_avoided (bool)
reason (str)
observed_value (float | None)
lower (float | None)
upper (float | None)
ambiguity (float | None)
decision_invariant (bool | None)
ambiguity_limit_met (bool | None)
q_name (str | None)
conservative (bool)
compiled_templates_built (int)
support_solves (int)
error (str | None)
- class updatesupport.claim.ClaimSpec(estimate_name, public, hidden, target, weight=None, q=None, q_presets=('saturated',), candidate_refinements=(), ambiguity_limit=None, bucket_budget=None, decision=None, statistical_interval=None, statistical_uncertainty=None, min_cell_weight=1.0, min_cell_weights=None, hidden_sets=None, top=10, witness_top=20, search='exhaustive', max_added_columns=None, beam_width=12, max_evaluations=None, must_include=(), must_exclude=(), enforce_bucket_budget=False, include_base=True, exact_required=True, title=None, target_description=None, observed_label='Reported estimate', screening_backend=None, refinement_screening_backend=None, refinement_screening_exact_fallback=True)[source]¶
Bases:
objectDeclarative claim that a reported aggregate is stable enough to defend.
- Parameters:
estimate_name (str)
target (str | RowMetric | ProcedureTarget)
weight (str | None)
q (Any | None)
ambiguity_limit (float | None)
bucket_budget (int | None)
decision (DecisionRule | Mapping[str, Any] | None)
statistical_uncertainty (StatisticalUncertainty | Mapping[str, Any] | None)
min_cell_weight (float)
top (int)
witness_top (int)
search (str)
max_added_columns (int | None)
beam_width (int)
max_evaluations (int | None)
enforce_bucket_budget (bool)
include_base (bool)
exact_required (bool)
title (str | None)
target_description (str | None)
observed_label (str)
screening_backend (str | None)
refinement_screening_backend (str | None)
refinement_screening_exact_fallback (bool)
- target: str | RowMetric | ProcedureTarget¶
- design(data, **kwargs)[source]¶
Design the smallest defensible public report for this claim.
- Parameters:
- Return type:
- calibrate_tv(data, **kwargs)[source]¶
Calibrate a TV stress radius from historical period transitions.
- Parameters:
data (Any)
kwargs (Any)
- Return type:
- design_calibrated(historical_data, current_data, **kwargs)[source]¶
Design a public report under historically calibrated TV stress.
- Parameters:
historical_data (Any)
current_data (Any)
kwargs (Any)
- Return type:
- design_categorical_rollup(data, **kwargs)[source]¶
Design an exact one-column categorical rollup under saturated Q.
- Parameters:
data (Any)
kwargs (Any)
- Return type:
- class updatesupport.claim.ClaimTree(root, name='Nested Claim Audit', description=None)[source]¶
Bases:
objectNested collection of claims audited as one hierarchy.
- class updatesupport.claim.ClaimTreeAudit(tree, root, title='Nested Claim Audit')[source]¶
Bases:
ReportArtifactMixinNested claim report for hierarchical or multi-level review workflows.
- Parameters:
tree (ClaimTree)
root (ClaimNodeAudit)
title (str)
- root: ClaimNodeAudit¶
- property nodes: tuple[ClaimNodeAudit, ...]¶
- worst_nodes(*, top=5, statuses=('fail', 'inconclusive'))[source]¶
Return the highest-risk claim nodes by status and ambiguity.
- Parameters:
- Return type:
tuple[ClaimNodeAudit, …]
- class updatesupport.claim.DecisionResult(rule, observed_value, lower, upper, observed_decision, lower_decision, upper_decision, invariant, certified_decision, threshold_crossed, reason)[source]¶
Bases:
objectDecision-rule evaluation over a hidden-composition interval.
- Parameters:
- rule: DecisionRule¶
- class updatesupport.claim.DecisionRule(operator, threshold, label=None, pass_label='pass', fail_label='fail')[source]¶
Bases:
objectThreshold decision rule for a reported scalar estimate.
- class updatesupport.claim.ModelAssistedDrawResult(draw_index, observed_value, lower, upper, ambiguity, public_adequate, status, error=None)[source]¶
Bases:
objectOne model-assisted joint-composition draw evaluated for stability.
- Parameters:
- class updatesupport.claim.ModelAssistedStabilitySummary(joint_model, rows, ambiguity_limit=None, seed=None, uncertainty_report=None)[source]¶
Bases:
objectStability summary over fitted-joint distribution draws.
- Parameters:
joint_model (NonparametricJointDistribution)
rows (tuple[ModelAssistedDrawResult, ...])
ambiguity_limit (float | None)
seed (int | None)
uncertainty_report (HiddenCompositionUncertaintyReport | None)
- joint_model: NonparametricJointDistribution¶
- rows: tuple[ModelAssistedDrawResult, ...]¶
- uncertainty_report: HiddenCompositionUncertaintyReport | None = None¶
- class updatesupport.claim.PublicReportDesign(audit, repair_plan, certificate=None, frontier=None, attribution=None, title='Public Report Design')[source]¶
Bases:
ReportArtifactMixinOne-stop design artifact for the smallest defensible public report.
- Parameters:
audit (ClaimAudit)
repair_plan (ClaimRepairPlan)
certificate (RepresentationStabilityCertificate | None)
frontier (Any | None)
attribution (RefinementAttributionReport | None)
title (str)
- audit: ClaimAudit¶
- repair_plan: ClaimRepairPlan¶
- certificate: RepresentationStabilityCertificate | None = None¶
- attribution: RefinementAttributionReport | None = None¶
- property recommended_option: ClaimRepairOption | None¶
- property selected_candidate: PublicRepresentationCandidate | None¶
- updatesupport.claim.audit_claim(data, claim, *, joint_model=None, joint_draws=0, joint_seed=None, **overrides)[source]¶
Audit a declared reporting claim against tabular data.
- Parameters:
- Return type:
- updatesupport.claim.audit_claim_tree(data, tree, **kwargs)[source]¶
Audit a nested claim tree against tabular data.
- updatesupport.claim.claim(estimate_name, *, public, hidden, target, **kwargs)[source]¶
Create a claim spec using the simplified claim-first API.
- updatesupport.claim.claim_tree(root, *, children=(), name='Nested Claim Audit', description=None)[source]¶
Create a nested claim tree from a root claim and optional children.
- updatesupport.claim.design_public_report(claim_or_audit, data=None, *, action_costs=None, top=None, include_attribution=False, attribution_max_exact_columns=8, attribution_permutations=None, attribution_seed=None, title='Public Report Design', **audit_overrides)[source]¶
Design a defensible public representation for a declared claim.
This is the claim-first orchestration layer. It audits the claim, reuses the embedded certificate/frontier search, packages a cost-aware repair plan, and optionally adds Shapley-style refinement attribution.
- updatesupport.claim.plan_claim_repair(claim_or_audit, data=None, *, action_costs=None, top=None, title='Claim Repair Plan', **audit_overrides)[source]¶
Build a cost-aware repair plan from a claim audit or claim spec.
This is a consolidation layer over existing claim evidence. If a
ClaimAuditis supplied, no additional solve is run. If aClaimSpecor mapping is supplied,datais audited first and the repair plan is built from that audit.