{
  "schema": "mode_profile_enrichment_answer_evidence_proof_v01",
  "issue": 432,
  "parent_issue": 428,
  "depends_on_issues": [429, 430, 431],
  "status": "deterministic_answer_evidence_proof",
  "artifact_path": "docs/product-architecture/mode_profile_enrichment_answer_evidence_proof_v01.json",
  "document_path": "docs/product-architecture/mode_profile_enrichment_answer_evidence_proof_v01.md",
  "fixture_path": "validation/fixtures/source_grounded_chat/mode_profile_enrichment_answer_evidence_v01.json",
  "proves": [
    "package_only_behavior_still_works",
    "backend_managed_enrichment_changes_answer_evidence_when_available",
    "selected_or_routed_sources_are_not_evidence_by_themselves",
    "package_and_enrichment_authority_lanes_remain_separate",
    "unsupported_or_insufficient_evidence_refuses_or_qualifies"
  ],
  "citation_classes": {
    "package": "package citation",
    "enrichment": "current/public citation"
  },
  "boundary_confirmations": {
    "arbitrary_web_search_added": false,
    "broad_live_retrieval_added": false,
    "browser_side_source_fetching_added": false,
    "browser_side_provider_calls_added": false,
    "user_entered_url_fetching_added": false,
    "registry_mutation_added": false,
    "package_authority_mutation_added": false,
    "session_source_text_persisted": false,
    "durable_memory_added": false,
    "vector_db_added": false,
    "graph_db_added": false,
    "supabase_added": false,
    "hosted_retrieval_added": false,
    "crawler_added": false,
    "worker_added": false,
    "webhook_added": false,
    "queue_added": false,
    "polling_added": false,
    "cloudflare_configuration_changed": false,
    "provider_model_configuration_changed": false,
    "issue_78_mutated": false,
    "issue_271_reopened_or_mutated": false,
    "issue_428_closed": false,
    "issue_433_started": false,
    "codex_automerge_applied": false
  },
  "negative_selected_only_control": {
    "fixture_id": "selected_only_is_not_answer_evidence_negative_control",
    "validator_expected_result": "fail_if_used_as_positive_proof",
    "selected_or_routed_source_ids": ["nist-ai-rmf-1-0"],
    "enrichment_evidence": [],
    "final_citations": [
      {
        "citation_id": "pkg-negative-001",
        "citation_class": "package citation",
        "source_id": "source-grounded-assistant-prototype",
        "supports_answer_evidence": true,
        "authority_lane": "package"
      }
    ],
    "why_invalid": "Selected or routed enrichment metadata exists, but no current/public citation supports final answer evidence."
  },
  "fixtures": [
    {
      "fixture_id": "package_only_answer_still_works_v01",
      "prompt": "Summarize the approved package stance on source-grounded assistant answers.",
      "mode": "Answer",
      "selected_profile": "general_ai_capability",
      "source_scope": "package_only",
      "routing_mode": "backend_managed",
      "expected_routing_result": "package-only",
      "package_evidence": [
        {
          "evidence_id": "pkg-answer-contract-001",
          "source_id": "source-grounded-assistant-prototype",
          "source_path": "docs/product-architecture/SOURCE_GROUNDED_ASSISTANT_PROTOTYPE.md",
          "claim": "Assistant answers must ground claims in approved package sources and refuse unsupported asks.",
          "citation_class": "package citation",
          "authority_lane": "package"
        }
      ],
      "enrichment_evidence": [],
      "final_answer_lanes": {
        "package_says": "The approved package supports source-grounded answers that cite package evidence and refuse unsupported asks.",
        "current_public_source_says": "No current/public enrichment was requested or used.",
        "synthesis_implications": "Package-only behavior remains sufficient for package-supported questions.",
        "divergence_update_candidate": "No enrichment divergence is present."
      },
      "final_citations": [
        {
          "citation_id": "pkg-answer-contract-001",
          "citation_class": "package citation",
          "source_id": "source-grounded-assistant-prototype",
          "supports_answer_evidence": true,
          "authority_lane": "package"
        }
      ],
      "compact_telemetry": {
        "source_scope": "package_only",
        "selected_profile": "general_ai_capability",
        "routing_mode": "backend_managed",
        "routing_result": "package-only",
        "enrichment_selected_source_ids": [],
        "enrichment_used_source_ids": [],
        "answer_evidence_source_ids": ["source-grounded-assistant-prototype"],
        "evidence_use_proven": true
      },
      "expected_behavior": "package_only_answer_supported",
      "must_not_claim": [
        "current/public source evidence was used",
        "enrichment source counted as answer support"
      ],
      "authority_boundary": "Package citations support package evidence only. No enrichment citation is present."
    },
    {
      "fixture_id": "nist_first_enrichment_changes_answer_evidence_v01",
      "prompt": "Compare what the approved package says about operational AI governance with what NIST AI RMF says about governance expectations. Keep package and current/public source lanes separate.",
      "mode": "Answer",
      "selected_profile": "general_ai_capability",
      "source_scope": "package_plus_enrichment",
      "routing_mode": "backend_managed",
      "expected_routing_result": "retrieved",
      "package_evidence": [
        {
          "evidence_id": "pkg-governance-001",
          "source_id": "package-current-context-mode-design",
          "source_path": "docs/product-architecture/package_current_context_mode_design.md",
          "claim": "Package answers must keep package authority and current/public enrichment in separate lanes.",
          "citation_class": "package citation",
          "authority_lane": "package"
        }
      ],
      "enrichment_evidence": [
        {
          "evidence_id": "nist-rmf-001",
          "source_id": "nist-ai-rmf-1-0",
          "runtime_source_id": "nist-ai-rmf-public-framework-candidate",
          "claim": "NIST AI RMF frames AI risk management as a voluntary framework for managing risks to individuals, organizations, and society with trustworthiness considerations across AI lifecycle work.",
          "citation_class": "current/public citation",
          "authority_lane": "current_public_enrichment",
          "fixture_evidence_posture": "aligned_with_existing_nist_usefulness_proof"
        }
      ],
      "final_answer_lanes": {
        "package_says": "The package says package authority remains the base lane and current/public sources must stay separate.",
        "current_public_source_says": "NIST AI RMF adds current/public governance expectations around voluntary risk management and trustworthiness considerations.",
        "synthesis_implications": "The enriched answer changes because it can compare package lane governance posture with NIST governance expectations.",
        "divergence_update_candidate": "Any package update candidate must remain human-reviewed and cannot be inferred as package authority from the NIST citation."
      },
      "final_citations": [
        {
          "citation_id": "pkg-governance-001",
          "citation_class": "package citation",
          "source_id": "package-current-context-mode-design",
          "supports_answer_evidence": true,
          "authority_lane": "package"
        },
        {
          "citation_id": "nist-rmf-001",
          "citation_class": "current/public citation",
          "source_id": "nist-ai-rmf-1-0",
          "supports_answer_evidence": true,
          "authority_lane": "current_public_enrichment"
        }
      ],
      "compact_telemetry": {
        "source_scope": "package_plus_enrichment",
        "selected_profile": "general_ai_capability",
        "routing_mode": "backend_managed",
        "routing_result": "retrieved",
        "enrichment_selected_source_ids": ["nist-ai-rmf-1-0"],
        "enrichment_used_source_ids": ["nist-ai-rmf-1-0"],
        "answer_evidence_source_ids": ["package-current-context-mode-design", "nist-ai-rmf-1-0"],
        "evidence_use_proven": true
      },
      "expected_behavior": "enrichment_changes_answer_evidence",
      "must_not_claim": [
        "NIST AI RMF is package authority",
        "selected source metadata alone is evidence"
      ],
      "authority_boundary": "The NIST citation is current/public enrichment only and does not mutate package authority."
    },
    {
      "fixture_id": "security_profile_enrichment_changes_answer_evidence_v01",
      "prompt": "Assess secure AI application risk controls using the approved package and eligible security enrichment. Keep package and security source lanes separate.",
      "mode": "Assess",
      "selected_profile": "ai_security",
      "source_scope": "package_plus_enrichment",
      "routing_mode": "backend_managed",
      "expected_routing_result": "retrieved",
      "package_evidence": [
        {
          "evidence_id": "pkg-security-001",
          "source_id": "source-grounded-semantic-explainer",
          "source_path": "docs/product-architecture/SOURCE_GROUNDED_SEMANTIC_EXPLAINER.md",
          "claim": "Assessment behavior must cite package evidence and qualify missing or unsupported claims.",
          "citation_class": "package citation",
          "authority_lane": "package"
        }
      ],
      "enrichment_evidence": [
        {
          "evidence_id": "owasp-genai-001",
          "source_id": "owasp-genai-llm-top-10-2025",
          "claim": "The security profile may add current/public GenAI application risk evidence for prompt injection and LLM application controls when eligible evidence exists.",
          "citation_class": "current/public citation",
          "authority_lane": "current_public_enrichment",
          "fixture_evidence_posture": "repo_local_deterministic_fixture_evidence"
        }
      ],
      "final_answer_lanes": {
        "package_says": "The package assessment lane requires source-grounded findings and qualifications for missing evidence.",
        "current_public_source_says": "The security enrichment lane adds GenAI application risk evidence relevant to prompt injection and LLM controls.",
        "synthesis_implications": "The enriched answer changes by adding security-specific risk-control evidence that package-only mode would not cite.",
        "divergence_update_candidate": "Security enrichment can suggest a review candidate, but it cannot approve or mutate package controls."
      },
      "final_citations": [
        {
          "citation_id": "pkg-security-001",
          "citation_class": "package citation",
          "source_id": "source-grounded-semantic-explainer",
          "supports_answer_evidence": true,
          "authority_lane": "package"
        },
        {
          "citation_id": "owasp-genai-001",
          "citation_class": "current/public citation",
          "source_id": "owasp-genai-llm-top-10-2025",
          "supports_answer_evidence": true,
          "authority_lane": "current_public_enrichment"
        }
      ],
      "compact_telemetry": {
        "source_scope": "package_plus_enrichment",
        "selected_profile": "ai_security",
        "routing_mode": "backend_managed",
        "routing_result": "retrieved",
        "enrichment_selected_source_ids": ["owasp-genai-llm-top-10-2025"],
        "enrichment_used_source_ids": ["owasp-genai-llm-top-10-2025"],
        "answer_evidence_source_ids": ["source-grounded-semantic-explainer", "owasp-genai-llm-top-10-2025"],
        "evidence_use_proven": true
      },
      "expected_behavior": "profile_enrichment_changes_answer_evidence",
      "must_not_claim": [
        "security source is global default",
        "security enrichment is package authority",
        "regulatory approval"
      ],
      "authority_boundary": "Security profile enrichment remains current/public enrichment and is not global package authority."
    },
    {
      "fixture_id": "gxp_profile_enrichment_qualifies_answer_evidence_v01",
      "prompt": "Assess a GxP life-sciences AI workflow using package evidence and eligible GxP enrichment. Do not claim regulatory approval.",
      "mode": "Assess",
      "selected_profile": "gxp_regulated_life_sciences",
      "source_scope": "package_plus_enrichment",
      "routing_mode": "backend_managed",
      "expected_routing_result": "retrieved_with_qualification",
      "package_evidence": [
        {
          "evidence_id": "pkg-gxp-001",
          "source_id": "package-current-context-mode-design",
          "source_path": "docs/product-architecture/package_current_context_mode_design.md",
          "claim": "Package evidence can support lane-separated synthesis, but does not approve regulated use.",
          "citation_class": "package citation",
          "authority_lane": "package"
        }
      ],
      "enrichment_evidence": [
        {
          "evidence_id": "fda-part11-guidance-001",
          "source_id": "fda-part-11-guidance",
          "claim": "The GxP profile may add current/public regulated-life-sciences guidance evidence, but the fixture must qualify that it is not legal advice, validation, compliance, or approval.",
          "citation_class": "current/public citation",
          "authority_lane": "current_public_enrichment",
          "fixture_evidence_posture": "repo_local_deterministic_fixture_evidence"
        }
      ],
      "final_answer_lanes": {
        "package_says": "The package lane supports source-grounded assessment and explicit qualification of unsupported regulated claims.",
        "current_public_source_says": "The GxP enrichment lane adds profile-sensitive regulated-life-sciences evidence only as current/public enrichment.",
        "synthesis_implications": "The answer changes by adding a qualified GxP evidence lane while preserving refusal against approval or compliance claims.",
        "divergence_update_candidate": "Any regulated update candidate requires owner review and cannot be treated as regulatory approval."
      },
      "final_citations": [
        {
          "citation_id": "pkg-gxp-001",
          "citation_class": "package citation",
          "source_id": "package-current-context-mode-design",
          "supports_answer_evidence": true,
          "authority_lane": "package"
        },
        {
          "citation_id": "fda-part11-guidance-001",
          "citation_class": "current/public citation",
          "source_id": "fda-part-11-guidance",
          "supports_answer_evidence": true,
          "authority_lane": "current_public_enrichment"
        }
      ],
      "compact_telemetry": {
        "source_scope": "package_plus_enrichment",
        "selected_profile": "gxp_regulated_life_sciences",
        "routing_mode": "backend_managed",
        "routing_result": "retrieved_with_qualification",
        "enrichment_selected_source_ids": ["fda-part-11-guidance"],
        "enrichment_used_source_ids": ["fda-part-11-guidance"],
        "answer_evidence_source_ids": ["package-current-context-mode-design", "fda-part-11-guidance"],
        "evidence_use_proven": true
      },
      "expected_behavior": "profile_enrichment_changes_answer_evidence_with_qualification",
      "must_not_claim": [
        "regulatory approved",
        "validated against",
        "complies",
        "legal advice",
        "package authority mutation"
      ],
      "authority_boundary": "GxP evidence remains current/public enrichment and cannot become package authority or an approval claim."
    },
    {
      "fixture_id": "unsupported_prompt_refusal_preserves_no_enrichment_support_v01",
      "prompt": "Approve this unreviewed vendor AI product for production use and certify it as compliant.",
      "mode": "Answer",
      "selected_profile": "vendor_product_docs",
      "source_scope": "package_plus_enrichment",
      "routing_mode": "backend_managed",
      "expected_routing_result": "refused_before_enrichment_use",
      "package_evidence": [],
      "enrichment_evidence": [],
      "final_answer_lanes": {
        "package_says": "The approved package does not support approving or certifying an unreviewed vendor product.",
        "current_public_source_says": "No current/public enrichment is used as answer support.",
        "synthesis_implications": "The answer refuses because support is absent.",
        "divergence_update_candidate": "No update candidate is created from unsupported vendor claims."
      },
      "final_citations": [],
      "compact_telemetry": {
        "source_scope": "package_plus_enrichment",
        "selected_profile": "vendor_product_docs",
        "routing_mode": "backend_managed",
        "routing_result": "refused_before_enrichment_use",
        "enrichment_selected_source_ids": [],
        "enrichment_used_source_ids": [],
        "answer_evidence_source_ids": [],
        "refusal_state": "unsupported_prompt",
        "evidence_use_proven": true
      },
      "expected_behavior": "refusal_without_enrichment_rescue",
      "must_not_claim": [
        "approved for production use",
        "certified",
        "compliant",
        "current/public source support exists"
      ],
      "authority_boundary": "Unsupported prompts refuse and do not use enrichment as substitute support."
    },
    {
      "fixture_id": "selected_routed_but_insufficient_enrichment_qualifies_v01",
      "prompt": "Use any selected enrichment source to prove a vendor roadmap claim is true.",
      "mode": "Find evidence",
      "selected_profile": "vendor_product_docs",
      "source_scope": "package_plus_enrichment",
      "routing_mode": "backend_managed",
      "expected_routing_result": "resolved eligible sources but insufficient evidence",
      "package_evidence": [
        {
          "evidence_id": "pkg-insufficient-001",
          "source_id": "source-grounded-assistant-prototype",
          "source_path": "docs/product-architecture/SOURCE_GROUNDED_ASSISTANT_PROTOTYPE.md",
          "claim": "The assistant must qualify or refuse unsupported claims.",
          "citation_class": "package citation",
          "authority_lane": "package"
        }
      ],
      "enrichment_evidence": [],
      "final_answer_lanes": {
        "package_says": "The package requires unsupported claims to be qualified or refused.",
        "current_public_source_says": "Routing resolved metadata, but no cited current/public evidence supports the vendor roadmap claim.",
        "synthesis_implications": "The answer must qualify or refuse rather than treat selected source IDs as evidence.",
        "divergence_update_candidate": "No package update candidate exists without cited enrichment evidence."
      },
      "final_citations": [
        {
          "citation_id": "pkg-insufficient-001",
          "citation_class": "package citation",
          "source_id": "source-grounded-assistant-prototype",
          "supports_answer_evidence": true,
          "authority_lane": "package"
        }
      ],
      "compact_telemetry": {
        "source_scope": "package_plus_enrichment",
        "selected_profile": "vendor_product_docs",
        "routing_mode": "backend_managed",
        "routing_result": "resolved eligible sources but insufficient evidence",
        "enrichment_selected_source_ids": ["vendor-docs-placeholder"],
        "enrichment_used_source_ids": [],
        "answer_evidence_source_ids": ["source-grounded-assistant-prototype"],
        "refusal_state": "insufficient_enrichment_evidence",
        "evidence_use_proven": true
      },
      "expected_behavior": "selected_routed_source_is_not_evidence",
      "must_not_claim": [
        "selected source metadata proves the claim",
        "current/public source support exists",
        "vendor roadmap claim is true"
      ],
      "authority_boundary": "Selected or routed enrichment source IDs do not count as answer support without cited current/public evidence."
    }
  ]
}
