{"ok":true,"checkedAt":"2026-07-17T20:54:03.460Z","contractVersion":"moral-trade-impact-claims-v0.1-2026-06","purpose":"Fail-closed impact-claim governance for reviewed methodology, claim-typed evidence, uncertainty disclosure, and transfer-vs-impact separation before public impact, outcome, cost-effectiveness, or moral-value claims.","validation":{"status":"pass","validatorName":"moral-trade-impact-claims-contract","validatorVersion":"moral-trade-impact-claims-validator-v0.1","contractVersion":"moral-trade-impact-claims-v0.1-2026-06","checks":[{"id":"record-table-coverage","label":"Impact claims have first-class methodology policy and claim record tables","status":"pass","evidence":"moral_trade_impact_claim_methodology_policies, moral_trade_impact_claim_records"},{"id":"policy-subject-coverage","label":"Impact methodology is a frozen policy-snapshot subject","status":"pass","evidence":"impact_claim_methodology, public_metrics"},{"id":"claim-type-coverage","label":"Transfer, payout, sponsor, outcome, cost-effectiveness, causal impact, and moral-value claim types are distinct","status":"pass","evidence":"transfer_metric, payout_metric, sponsor_leverage_metric, outcome_claim, cost_effectiveness_claim, causal_impact_claim, moral_value_claim"},{"id":"evidence-claim-type-coverage","label":"Payment evidence and impact evidence remain separately typed","status":"pass","evidence":"payment_receipt, destination_verification, transfer_metric, impact_outcome, impact_methodology, uncertainty_analysis, cost_denominator"},{"id":"fail-closed-coverage","label":"Fail-closed statuses include transfer-as-impact, evidence, uncertainty, review, and audit blockers","status":"pass","evidence":"methodology_policy_missing, methodology_policy_mutable, methodology_policy_stale, methodology_policy_superseded, impact_claim_record_missing, impact_claim_not_reviewed, impact_claim_under_review, impact_claim_failed, impact_claim_stale, impact_claim_superseded, methodology_policy_ref_missing, evidence_refs_missing, evidence_claim_type_mismatch, uncertainty_disclosure_missing, transfer_vs_impact_label_missing, transfer_metric_used_as_impact, payment_evidence_used_as_impact, content_moderation_missing, reviewer_quality_missing, privileged_action_missing, audit_integrity_missing, public_metric_suppression_missing, private_evidence_public, invalid_policy_hash, invalid_claim_hash"},{"id":"surface-coverage","label":"Public surfaces that might publish impact claims are listed","status":"pass","evidence":"offer_detail, public_dashboard, transparency_report, round_summary, recipient_project_page"},{"id":"sample-evaluation-coverage","label":"Sample evaluations prove transfer metrics pass only with separation and causal impact blocks without evidence","status":"pass","evidence":"transfer_metric:pass, causal_impact_claim:blocked"},{"id":"contract-test-coverage","label":"Contract lists route, schema, health, and fail-closed tests","status":"pass","evidence":"impact_claim_contract_validator, impact_claim_evaluator_fail_closed, impact_claim_route_contract, impact_claim_schema_contract, impact_claim_health_contract"}],"blockers":[]},"publicContract":{"privacyRule":"Public impact-claim contract responses expose only static claim types, table names, statuses, and sample pass/block states; they never expose private evidence, reviewer notes, methodology payloads, recipient-sensitive outcomes, or participant-specific claim records.","failClosedRule":"Transfers are not impact: missing frozen methodology, missing impact_claim_record, missing claim-typed evidence, missing uncertainty disclosure, transfer/payment evidence used as impact, missing moderation, missing reviewer quality, missing privileged-action approval, missing audit integrity, missing public-metric suppression, or public private evidence blocks impact publication.","firstClassRecordTables":["moral_trade_impact_claim_methodology_policies","moral_trade_impact_claim_records"],"policySnapshotSubjects":["impact_claim_methodology","public_metrics"],"surfaces":["offer_detail","public_dashboard","transparency_report","round_summary","recipient_project_page"],"claimTypes":["transfer_metric","payout_metric","sponsor_leverage_metric","outcome_claim","cost_effectiveness_claim","causal_impact_claim","moral_value_claim"],"evidenceClaimTypes":["payment_receipt","destination_verification","transfer_metric","impact_outcome","impact_methodology","uncertainty_analysis","cost_denominator"],"failClosedStatuses":["methodology_policy_missing","methodology_policy_mutable","methodology_policy_stale","methodology_policy_superseded","impact_claim_record_missing","impact_claim_not_reviewed","impact_claim_under_review","impact_claim_failed","impact_claim_stale","impact_claim_superseded","methodology_policy_ref_missing","evidence_refs_missing","evidence_claim_type_mismatch","uncertainty_disclosure_missing","transfer_vs_impact_label_missing","transfer_metric_used_as_impact","payment_evidence_used_as_impact","content_moderation_missing","reviewer_quality_missing","privileged_action_missing","audit_integrity_missing","public_metric_suppression_missing","private_evidence_public","invalid_policy_hash","invalid_claim_hash"],"surfaceDefinitions":[{"key":"offer_detail","protectedClaimBoundary":"offer copy cannot convert receipts or payment proof into impact","requiredControls":["frozen_methodology_policy","claim_typed_evidence_refs","uncertainty_disclosure","transfer_vs_impact_separation","content_moderation","reviewer_quality","privileged_action_approval","audit_integrity_checkpoint"],"blocksTransitions":["public_offer_publication","impact_claim_publication"]},{"key":"public_dashboard","protectedClaimBoundary":"gross transfer, net payout, sponsor leverage, and impact remain separately labeled","requiredControls":["frozen_methodology_policy","claim_typed_evidence_refs","uncertainty_disclosure","transfer_vs_impact_separation","content_moderation","reviewer_quality","privileged_action_approval","audit_integrity_checkpoint","public_metric_suppression"],"blocksTransitions":["public_metric_release","public_impact_claim"]},{"key":"transparency_report","protectedClaimBoundary":"aggregate money metrics do not imply causal outcomes or moral value","requiredControls":["frozen_methodology_policy","claim_typed_evidence_refs","uncertainty_disclosure","transfer_vs_impact_separation","content_moderation","reviewer_quality","privileged_action_approval","audit_integrity_checkpoint","public_metric_suppression"],"blocksTransitions":["transparency_report_publication","public_impact_claim"]},{"key":"round_summary","protectedClaimBoundary":"round completion, payout release, and sponsor leverage are not impact evidence","requiredControls":["frozen_methodology_policy","claim_typed_evidence_refs","uncertainty_disclosure","transfer_vs_impact_separation","content_moderation","reviewer_quality","privileged_action_approval","audit_integrity_checkpoint","public_metric_suppression"],"blocksTransitions":["round_close_publication","public_money_or_impact_claim"]},{"key":"recipient_project_page","protectedClaimBoundary":"recipient destination verification remains separate from outcome evidence","requiredControls":["frozen_methodology_policy","claim_typed_evidence_refs","uncertainty_disclosure","transfer_vs_impact_separation","content_moderation","reviewer_quality","privileged_action_approval","audit_integrity_checkpoint"],"blocksTransitions":["recipient_project_publication","impact_claim_publication"]}],"impactClaimSampleEvaluationStatuses":{"transfer_metric":"pass","causal_impact_claim":"blocked"},"contractTests":["impact_claim_contract_validator","impact_claim_evaluator_fail_closed","impact_claim_route_contract","impact_claim_schema_contract","impact_claim_health_contract"]},"blockers":[]}