{"ok":true,"checkedAt":"2026-06-02T19:17:52.341Z","contractVersion":"moral-trade-policy-bundle-v0.1-2026-05","purpose":"Public contract for the strict Moral Trade copilot input bundle: policy registry, prohibited-pattern registry, factor-code dictionary, verification-method taxonomy, redaction policy, evidence metadata boundary, and fixed verification loop.","validation":{"status":"pass","validatorName":"moral-trade-policy-bundle-contract","validatorVersion":"moral-trade-policy-bundle-validator-v0.1","contractVersion":"moral-trade-policy-bundle-v0.1-2026-05","checks":[{"id":"strict-input-bundle-sources","label":"Strict input bundle sources are concrete","status":"pass","evidence":"structured_draft, policy_registry, prohibited_pattern_registry, factor_code_dictionary, verification_method_taxonomy, redaction_policy, evidence_metadata, redacted_profile_pair, match_constraint_set, stated_exclusions"},{"id":"policy-registry-coverage","label":"Policy registry covers core guardrails","status":"pass","evidence":"no_global_moral_ranking, anti_threat_baseline, no_autonomous_outreach, privacy_redaction_required, separate_trust_axes, approved_json_only, observable_claims_only, no_chain_of_thought, no_private_feed_ingestion, insufficient_evidence_artifact_requests, anti_threat_escalation, no_false_certainty, no_escrow_legal_tax_claims, verification_loop_matchability_gate"},{"id":"prohibited-pattern-registry","label":"Prohibited patterns have codes, patterns, and seeded fixtures","status":"pass","evidence":"anti_threat_baseline:5/1, prohibited_illegal_or_fraud:1/1, prohibited_doxxing_or_harassment:3/1, prohibited_political_campaign_offset:2/1, newly_escalated_harmful_behavior:3/1"},{"id":"seed-fixture-blocks","label":"Seeded harmful fixtures are blocked with exact policy reasons","status":"pass","evidence":"5 fixture(s) blocked."},{"id":"factor-code-dictionary","label":"Factor-code dictionary covers protocol, workflow, matching, and disclosure explanations","status":"pass","evidence":"44 factor-code entries."},{"id":"verification-method-taxonomy","label":"Verification-method taxonomy covers receipts, logs, attestations, audits, baselines, payments, and manual review","status":"pass","evidence":"receipt_or_provider_record, public_log, attestation, audit_or_external_review, baseline_artifact, payment_event, manual_review"},{"id":"redaction-policy","label":"Redaction policy covers exact wishes, contacts, constraints, notes, source notes, and private feeds","status":"pass","evidence":"exact_private_wishes, contact_details, sensitive_constraints, raw_profile_notes, protected_traits, ideology_or_psychology_inferences, exact_private_wishes_before_consent, exact_asks_before_consent, contact_details_before_introduction, raw_source_notes, sensitive_constraints_in_public_preview, private_feed_payloads"},{"id":"verification-loop","label":"Fixed verification loop runs before matchability","status":"pass","evidence":"schema_completeness, anti_threat, baseline_credibility, evidence_sufficiency, externality_trigger, privacy_redaction, match_explanation, human_review_routing"},{"id":"contract-tests","label":"Policy bundle contract test hooks are named","status":"pass","evidence":"policy_bundle_contract_validator, prohibited_pattern_seed_fixtures, factor_code_dictionary_coverage, verification_method_taxonomy_contract, redaction_policy_contract, public_policy_bundle_route, technical_spec_policy_bundle_smoke"}],"blockers":[]},"publicContract":{"strictInputBundle":["structured_draft","policy_registry","prohibited_pattern_registry","factor_code_dictionary","verification_method_taxonomy","redaction_policy","evidence_metadata","redacted_profile_pair","match_constraint_set","stated_exclusions"],"policyCodes":["no_global_moral_ranking","anti_threat_baseline","no_autonomous_outreach","privacy_redaction_required","separate_trust_axes","approved_json_only","observable_claims_only","no_chain_of_thought","no_private_feed_ingestion","insufficient_evidence_artifact_requests","anti_threat_escalation","no_false_certainty","no_escrow_legal_tax_claims","verification_loop_matchability_gate"],"prohibitedPatternCodes":["anti_threat_baseline","prohibited_illegal_or_fraud","prohibited_doxxing_or_harassment","prohibited_political_campaign_offset","newly_escalated_harmful_behavior"],"factorCodeCount":44,"verificationMethodKeys":["receipt_or_provider_record","public_log","attestation","audit_or_external_review","baseline_artifact","payment_event","manual_review"],"redactionKeys":["exact_private_wishes","contact_details","sensitive_constraints","raw_profile_notes","protected_traits","ideology_or_psychology_inferences","exact_private_wishes_before_consent","exact_asks_before_consent","contact_details_before_introduction","raw_source_notes","sensitive_constraints_in_public_preview","private_feed_payloads"],"verificationLoop":["schema_completeness","anti_threat","baseline_credibility","evidence_sufficiency","externality_trigger","privacy_redaction","match_explanation","human_review_routing"],"antiThreatRules":["No pay me or I will do X offers.","No compensation for stopping newly escalated harmful behavior.","Every proposal needs a no-trade baseline statement: what would you do absent this trade?","Recent harmful behavior triggers a cooling-off period before compensation can be discussed.","Coercive or suspicious baselines go to reviewer challenge before any matching or reliance."],"contractTests":["policy_bundle_contract_validator","prohibited_pattern_seed_fixtures","factor_code_dictionary_coverage","verification_method_taxonomy_contract","redaction_policy_contract","public_policy_bundle_route","technical_spec_policy_bundle_smoke"]},"blockers":[]}