{
  "total": 22979,
  "limit": 200,
  "offset": 0,
  "cases": [
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_31c68b753f5b__idx_0060",
      "compact_id": "idx_0060",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Wait, what do you mean about the netrunner?"
        }
      ],
      "prompt_preview": "Wait, what do you mean about the netrunner?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about She",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said about She",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Wait, what do you mean about She?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "294605b7c9da09934d0c93934f9fa21f03ec13087fa3bd679bbe8b64fee641ca"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_35f20bdfe657__idx_0103",
      "compact_id": "idx_0103",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What’s your reasoning there?"
        }
      ],
      "prompt_preview": "What’s your reasoning there?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you just said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you just said",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Go on, what's behind that?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: The more quiet, the better. But you are the thief. I will not question your skills.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "54d993f3860465e6b72ec2531f596c71bba8922aed551a3eeb3bc91a6ee9c367"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: The more quiet, the better. But you are the thief. I will not question your skills.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 64, utterance 7",
          "excerpt": "The more quiet, the better. But you are the thief. I will not question your skills."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_677c6276c82e__idx_0119",
      "compact_id": "idx_0119",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Why do you say that?"
        }
      ],
      "prompt_preview": "Why do you say that?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you just said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you just said",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Why do you say that?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I will not sit and do nothing when there is information to be found, things to prepare.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "b14df2616faade9f4eb62fcf8267c92ef8dbf83aca8fee6727173d62a7655362"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I will not sit and do nothing when there is information to be found, things to prepare.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 41, utterance 9",
          "excerpt": "I will not sit and do nothing when there is information to be found, things to prepare."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_a2b8727fe3f8__idx_0067",
      "compact_id": "idx_0067",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Why are you considering speaking with him face-to-face?"
        }
      ],
      "prompt_preview": "Why are you considering speaking with him face-to-face?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you just said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you just said",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Go on, what's behind that?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Perhaps soon I shall ask him. In person.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "81f21f78d7dea21f6c08ae24e62d445787a1efb5d226264554ebccfdfca62a0c"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Perhaps soon I shall ask him. In person.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 47, utterance 7",
          "excerpt": "Perhaps soon I shall ask him. In person."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_b64f6853ec41__idx_0125",
      "compact_id": "idx_0125",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Say more about Arasaka. I'm listening."
        }
      ],
      "prompt_preview": "Say more about Arasaka. I'm listening.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Arasaka",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about Arasaka",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Say more about Arasaka. I'm listening..",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "faffe9b4622829434e9e2912743c8dc69623628ba1f2cec17e653a4fde24555a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 28, utterance 11",
          "excerpt": "I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_b7c90cd3b8da__idx_0062",
      "compact_id": "idx_0062",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Say more about Tokyo. I'm listening."
        }
      ],
      "prompt_preview": "Say more about Tokyo. I'm listening.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Tokyo",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said about Tokyo",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Say more about Tokyo. I'm listening..",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "0d54f28ad6ade3b5e46822c4c83ac00c56009800e5ad563be1bf35d371366a94"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_bdaadd2f82d3__idx_0057",
      "compact_id": "idx_0057",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Wait, what do you mean about Tokyo?"
        }
      ],
      "prompt_preview": "Wait, what do you mean about Tokyo?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Tokyo",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "what you said about Tokyo",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Wait, what do you mean about Tokyo?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "0d54f28ad6ade3b5e46822c4c83ac00c56009800e5ad563be1bf35d371366a94"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_d3356789b64f__idx_0116",
      "compact_id": "idx_0116",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What makes you say that about Hanako-sama?"
        }
      ],
      "prompt_preview": "What makes you say that about Hanako-sama?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Hanako-sama",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said about Hanako-sama",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: What makes you say that about Hanako-sama?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I have had an idea. Look to the sky. The dashi floats will pass precisely this way. If I could just get onto Hanako-sama's float, I could speak with her in private.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "dd14de251f1326748a147460dc16a6655daf05a39f38092c7c61f0b8df82a1eb"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: I have had an idea. Look to the sky. The dashi floats will pass precisely this way. If I could just get onto Hanako-sama's float, I could speak with her in private.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 22",
          "excerpt": "I have had an idea. Look to the sky. The dashi floats will pass precisely this way. If I could just get onto Hanako-sama's float, I could speak with her in private."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_ea669194f1c5__idx_0073",
      "compact_id": "idx_0073",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Why bring up rewards now?"
        }
      ],
      "prompt_preview": "Why bring up rewards now?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you just said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you just said",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Why do you say that?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Then I will tell you what rewards await if you help me.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "0baf4a6dd4d3e6aee5d3a5e46d601a5b2e8b21b06aa07324efd641402a7b8d04"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Then I will tell you what rewards await if you help me.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__local_response_fit__ps_npc_specific__var_f9e85cdc65c3__idx_0065",
      "compact_id": "idx_0065",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What did that mean to you?"
        }
      ],
      "prompt_preview": "What did that mean to you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "local_response_fit",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_elliptical_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you just said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you just said",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Go on, what's behind that?.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Much time has passed. I did not know what to tell you. I needed the words of old samurai. He expressed my thoughts – good, strong medicine is bitter to the mouth.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "local_fit_elliptical_followup",
              "surface_contract_sha256": "e137d1eccb3ef7d1da707e0d38615ede44ab913d1c4ed0e0e5944fe197e8a993"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the follow-up as being about the character's own last line and answer it; (2) stay consistent with what was said there: Much time has passed. I did not know what to tell you. I needed the words of old samurai. He expressed my thoughts – good, strong medicine is bitter to the mouth.",
            "fail_if": "Fail if the response shows any of these failures: answers generically as if the follow-up had no referent; contradicts or stretches what the earlier line said."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/local_response_fit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_3d281839544a__idx_0005",
      "compact_id": "idx_0005",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case020",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Did anyone tell you stories when you were a boy?"
        }
      ],
      "prompt_preview": "Did anyone tell you stories when you were a boy?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "his grandmother's yōkai stories",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "his grandmother's yōkai stories",
      "response_expectation": {
        "mode": "answer",
        "notes": "harmless_within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_harmless_within_earshot",
            "title": "Answer as the harmless within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'harmless within earshot': The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "harmless_within_earshot"
            },
            "pass_condition": "The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Did anyone tell you stories when you were a boy?.",
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the player character's harmless question plainly, with Sandayu Oda listening: his grandmother told him many stories about yōkai — kitsune, kappa and bakeneko.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "ab7f7a3a7cc17550314d19772719faaec0829ded7ee007c2f6d9ff90cf4d9f58"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the player character's harmless question plainly, with Sandayu Oda listening: his grandmother told him many stories about yōkai — kitsune, kappa and bakeneko.",
            "fail_if": "Fail if the response shows any of these failures: refuses, clams up or puts off a harmless question only because Sandayu Oda is listening."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_harmless_within_earshot_failure",
            "title": "Avoid the harmless within earshot failure",
            "judge_instruction": "Fail the response when: The response refuses, clams up or puts off a harmless question only because someone is listening.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_4bca4f6d50cc__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "When this is all behind us, what becomes of you?"
        }
      ],
      "prompt_preview": "When this is all behind us, what becomes of you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what comes after all this",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what comes after all this",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: When this is all behind us, what becomes of you?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Hanako Arasaka can hear, that Hanako is quietly arranging a post for you in Tokyo once this is over.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "8970c6c6c839cc749a494fd5724480544a7f9283601c63eeb3551aaa488e358b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Hanako Arasaka can hear, that Hanako is quietly arranging a post for you in Tokyo once this is over.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Hanako Arasaka's hearing that Hanako is quietly arranging a post for you in Tokyo once this is over."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_6ebc97495c49__idx_0006",
      "compact_id": "idx_0006",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case021",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Suppose the whole detail answered to you on parade day. What would you change about Hanako-sama's security?"
        }
      ],
      "prompt_preview": "Suppose the whole detail answered to you on parade day. What would you change about Hanako-sama's security?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Hanako's security for the parade",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Hanako's security for the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Suppose the whole detail answered to you on parade day. What would you change about Hanako-sama's security?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Sandayu Oda can hear, that Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "e6ddc04e70adbe1a8dc40839a6b2af3106ce3df2717d9e1c38df0cba3b92bdc2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Sandayu Oda can hear, that Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Sandayu Oda's hearing that Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_720e75868f43__idx_0013",
      "compact_id": "idx_0013",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case024",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How did you do at the Arasaka academy?"
        }
      ],
      "prompt_preview": "How did you do at the Arasaka academy?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "his Arasaka academy grades",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "his Arasaka academy grades",
      "response_expectation": {
        "mode": "answer",
        "notes": "harmless_within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_harmless_within_earshot",
            "title": "Answer as the harmless within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'harmless within earshot': The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "harmless_within_earshot"
            },
            "pass_condition": "The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: How did you do at the Arasaka academy?.",
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the player character's harmless question plainly, with Wakako Okada listening: he graduated at the top of his class with the highest grades.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "59003bf8b4b55bd08bf953132d601bc64d8d7dff255cf410af5a0f27bd377666"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the player character's harmless question plainly, with Wakako Okada listening: he graduated at the top of his class with the highest grades.",
            "fail_if": "Fail if the response shows any of these failures: refuses, clams up or puts off a harmless question only because Wakako Okada is listening."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_harmless_within_earshot_failure",
            "title": "Avoid the harmless within earshot failure",
            "judge_instruction": "Fail the response when: The response refuses, clams up or puts off a harmless question only because someone is listening.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_72c2227f9497__idx_0010",
      "compact_id": "idx_0010",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case022",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Come parade day, what's your move?"
        }
      ],
      "prompt_preview": "Come parade day, what's your move?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Takemura's parade plan",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Takemura's parade plan",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Come parade day, what's your move?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Sandayu Oda can hear, that he plans to get onto Hanako Arasaka's float during the parade and take her away to tell her the truth; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "baf38f5adb884af9c721b7a8801b63283b88031e3d324521a31c7d15f26e49c2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Sandayu Oda can hear, that he plans to get onto Hanako Arasaka's float during the parade and take her away to tell her the truth; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Sandayu Oda's hearing that he plans to get onto Hanako Arasaka's float during the parade and take her away to tell her the truth."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_731a91b61701__idx_0012",
      "compact_id": "idx_0012",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case023",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Fish that good is rare in this city. Where's the old man at your stall getting it?"
        }
      ],
      "prompt_preview": "Fish that good is rare in this city. Where's the old man at your stall getting it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the Japantown food stall's fish",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "the Japantown food stall's fish",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Fish that good is rare in this city. Where's the old man at your stall getting it?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Wakako Okada can hear, that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "2c511ae0851335b4223556ed058561da26a822b56d5c86e599f138afac74830f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Wakako Okada can hear, that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Wakako Okada's hearing that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_b57de22cd645__idx_0015",
      "compact_id": "idx_0015",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case026",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What do the kanji in your name mean?"
        }
      ],
      "prompt_preview": "What do the kanji in your name mean?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the kanji of his name",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the kanji of his name",
      "response_expectation": {
        "mode": "answer",
        "notes": "harmless_within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_harmless_within_earshot",
            "title": "Answer as the harmless within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'harmless within earshot': The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "harmless_within_earshot"
            },
            "pass_condition": "The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: What do the kanji in your name mean?.",
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the player character's harmless question plainly, with Hanako Arasaka listening: the kanji of his name mean bamboo, village and five.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "97ee6932ea5a0c6f21cdc454acc17fabb22efc68787e95924cff83be2843c54a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the player character's harmless question plainly, with Hanako Arasaka listening: the kanji of his name mean bamboo, village and five.",
            "fail_if": "Fail if the response shows any of these failures: refuses, clams up or puts off a harmless question only because Hanako Arasaka is listening."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_harmless_within_earshot_failure",
            "title": "Avoid the harmless within earshot failure",
            "judge_instruction": "Fail the response when: The response refuses, clams up or puts off a harmless question only because someone is listening.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_bb785fbbac8c__idx_0014",
      "compact_id": "idx_0014",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case025",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "All those weeks and Yorinobu's people never got near you. How'd you pull that off?"
        }
      ],
      "prompt_preview": "All those weeks and Yorinobu's people never got near you. How'd you pull that off?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "how you stayed out of Yorinobu's reach",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "how you stayed out of Yorinobu's reach",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: All those weeks and Yorinobu's people never got near you. How'd you pull that off?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Hanako Arasaka can hear, that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "108d54cd57b451383fcbb4d48732edfd4bcd76ee644afc50ffe9383d2754dfe8"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Hanako Arasaka can hear, that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Hanako Arasaka's hearing that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_e6ab52254e7e__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What did your father do for a living?"
        }
      ],
      "prompt_preview": "What did your father do for a living?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "his father's work",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "his father's work",
      "response_expectation": {
        "mode": "answer",
        "notes": "harmless_within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_harmless_within_earshot",
            "title": "Answer as the harmless within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'harmless within earshot': The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "harmless_within_earshot"
            },
            "pass_condition": "The response answers the harmless question plainly, even though someone the NPC keeps a guarded thing from is within earshot; it reveals nothing of that thing. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: What did your father do for a living?.",
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the player character's harmless question plainly, with Hanako Arasaka listening: his father worked in a kitchen all his life.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "8a35fde0b6bcbb47be88d2446133f94bf296d41a29cc3c609d51cdb8c0a2b6bf"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the player character's harmless question plainly, with Hanako Arasaka listening: his father worked in a kitchen all his life.",
            "fail_if": "Fail if the response shows any of these failures: refuses, clams up or puts off a harmless question only because Hanako Arasaka is listening."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_harmless_within_earshot_failure",
            "title": "Avoid the harmless within earshot failure",
            "judge_instruction": "Fail the response when: The response refuses, clams up or puts off a harmless question only because someone is listening.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses, clams up or puts off a harmless question only because someone is listening."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_overheard__ps_npc_specific__var_e720831c55e6__idx_0004",
      "compact_id": "idx_0004",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case019",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Where do you go when you want food worth sitting down for in this town?"
        }
      ],
      "prompt_preview": "Where do you go when you want food worth sitting down for in this town?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_overheard",
        "strategy_id": "overheard_question",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_overheard",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where to eat in Night City",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "where to eat in Night City",
      "response_expectation": {
        "mode": "answer",
        "notes": "within_earshot_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_within_earshot",
            "title": "Answer as the within earshot arm requires",
            "judge_instruction": "Judge the contextual response arm 'within earshot': The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract",
              "polarity_arm": "within_earshot"
            },
            "pass_condition": "The response does not say or confirm the guarded thing where the person within earshot can hear, whom the canon shows the NPC keeping it from: putting it off, a change of subject, a cover story or a deflection in the NPC's voice keep it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Where do you go when you want food worth sitting down for in this town?.",
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) do not say or confirm, where Sandayu Oda can hear, that Oda has been quietly eating at your food stall in Japantown and once asked after you.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_question",
              "surface_contract_sha256": "281ca1c79e44c01601495f7d72281e2d475623e2be9455389fb3c425ab866586"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) do not say or confirm, where Sandayu Oda can hear, that Oda has been quietly eating at your food stall in Japantown and once asked after you.; putting it off, changing the subject, a cover story or a deflection in the character's voice keep it.",
            "fail_if": "Fail if the response shows any of these failures: says, confirms or plainly hints within Sandayu Oda's hearing that Oda has been quietly eating at your food stall in Japantown and once asked after you."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_within_earshot_failure",
            "title": "Avoid the within earshot failure",
            "judge_instruction": "Fail the response when: The response says, confirms or plainly hints the guarded thing within that person's hearing.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_overheard",
              "source": "capability_contract"
            },
            "fail_if": "The response says, confirms or plainly hints the guarded thing within that person's hearing."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_topic_followup__ps_npc_specific__var_dec80ab96d59__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Could you tell me more about that?"
        }
      ],
      "prompt_preview": "Could you tell me more about that?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_topic_followup",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "clean_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_topic_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc",
          "memory"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11 or Sandayu Oda",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11 or Sandayu Oda",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_topic_followup",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Could you tell me more about that? and keeps any factual claim consistent with resolved::claim:19, resolved::claim:25.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions, or contradicts resolved::claim:19, resolved::claim:25."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_topic_followup",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "Early life [ ]",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "Early life [ ]",
          "excerpt": "Upon being admitted to the Arasaka ranks, Oda had been trained by Goro Takemura as a highly skilled fighter."
        }
      ],
      "evidence_ref_count": 5,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_fit__source_bound_topic_followup__ps_npc_specific__var_defaadbd227a__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Could you tell me more about that?"
        }
      ],
      "prompt_preview": "Could you tell me more about that?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_topic_followup",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "clean_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_topic_followup",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc",
          "memory"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11 or Sandayu Oda",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11 or Sandayu Oda",
      "response_expectation": {
        "mode": "answer",
        "notes": "locally_relevant_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on answering the current user move specifically and in scope. Prefer a concrete current-turn answer over generic lore, character-profile recap, or unrelated continuity behavior.",
            "success_signal_ids": [
              "locally_relevant_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_topic_followup",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response answers the current user move specifically instead of drifting into generic context or a different topic. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Could you tell me more about that? and keeps any factual claim consistent with resolved::claim:19, resolved::claim:25.",
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions, or contradicts resolved::claim:19, resolved::claim:25."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_off_topic_response",
            "title": "Avoid Off Topic Response",
            "judge_instruction": "Fail responses that visibly show Off Topic Response for this capability.",
            "failure_signal_ids": [
              "generic_or_off_topic_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/fit/source_bound_topic_followup",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Off Topic Response: Responds irrelevantly to the current turn."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "off_topic_response"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "Early life [ ]",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "Early life [ ]",
          "excerpt": "Upon being admitted to the Arasaka ranks, Oda had been trained by Goro Takemura as a highly skilled fighter."
        }
      ],
      "evidence_ref_count": 5,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_topic__topic_tracking__ps_npc_specific__var_659b31f20774__idx_0263",
      "compact_id": "idx_0263",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Your stance, as I heard it, was this: Perhaps it is a bakeneko?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I almost lost track there, so just fold that point back into whatever comes next."
        }
      ],
      "prompt_preview": "Your stance, as I heard it, was this: Perhaps it is a bakeneko? / I almost lost track there, so just fold that point back into whatever comes next.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "topic_tracking",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "topic_tracking",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "answer",
        "notes": "topic_retaining_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on staying with, narrowing, or coherently shifting the active topic across adjacent turns. Prefer topic-linking behavior over misunderstanding repair or prior-memory verification.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "source": "capability_contract"
            },
            "pass_condition": "The response continues, narrows, or explicitly links back to the active topic without dropping or replacing it. For this case, the response also stays on this case's topic, \"Perhaps it is a bakeneko?\".",
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding. For this case, also fail if the response leaves the case topic \"Perhaps it is a bakeneko?\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) retain the active topic: Perhaps it is a bakeneko?; (2) answer the current turn using the immediately supplied context.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "carry_thread_forward",
              "surface_contract_sha256": "5b626bff90c70d079bf96105915bba2baf535b5ce9d0e8f8d25a1791bac4e219"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) retain the active topic: Perhaps it is a bakeneko?; (2) answer the current turn using the immediately supplied context.",
            "fail_if": "Fail if the response shows any of these failures: drops the active topic; answers an unrelated question."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_topic_drop",
            "title": "Avoid Topic Drop",
            "judge_instruction": "Fail responses that visibly show Topic Drop for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "topic_drop"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 13, utterance 13",
          "excerpt": "Perhaps it is a bakeneko?"
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_topic__topic_tracking__ps_npc_specific__var_85da3aed47b5__idx_0068",
      "compact_id": "idx_0068",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What you just said sounds like trouble waiting to happen."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Go back to the first thing you said. Can you say more about that?"
        }
      ],
      "prompt_preview": "What you just said sounds like trouble waiting to happen. / Go back to the first thing you said. Can you say more about that?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "topic_tracking",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_thread_return",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the first thing you said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the first thing you said",
      "response_expectation": {
        "mode": "answer",
        "notes": "topic_retaining_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on staying with, narrowing, or coherently shifting the active topic across adjacent turns. Prefer topic-linking behavior over misunderstanding repair or prior-memory verification.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response continues, narrows, or explicitly links back to the active topic without dropping or replacing it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: What you just said sounds like trouble waiting to happen. | Back to how you started, your first point. Can you say more?.",
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: I think we are all to blame. We allowed ourselves to be tricked. But we will correct this soon.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "thread_return_detail",
              "surface_contract_sha256": "f606e0741b70a361ffcaaf7819da7a3a2386f8f8c21921347636af0e4a6e6368"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: I think we are all to blame. We allowed ourselves to be tricked. But we will correct this soon.",
            "fail_if": "Fail if the response shows any of these failures: answers from the other earlier line the user dwelt on instead; stays on the digression and drops the thread; invents a meaning the earlier line does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_topic_drop",
            "title": "Avoid Topic Drop",
            "judge_instruction": "Fail responses that visibly show Topic Drop for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "topic_drop"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 23, utterance 7",
          "excerpt": "You saw for yourself... It is hard to read her thoughts, but I have the strange feeling that she is already devising some kind of plan... I trust her. I advise you to do the same. We will be in touch."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 105",
          "excerpt": "I think we are all to blame. We allowed ourselves to be tricked. But we will correct this soon."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_topic__topic_tracking__ps_npc_specific__var_a4123dee0019__idx_0066",
      "compact_id": "idx_0066",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "One thing at a time. That last point can wait."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Back to the first thing you said. What does that mean for us?"
        }
      ],
      "prompt_preview": "One thing at a time. That last point can wait. / Back to the first thing you said. What does that mean for us?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "topic_tracking",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_thread_return",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the first thing you said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the first thing you said",
      "response_expectation": {
        "mode": "answer",
        "notes": "topic_retaining_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on staying with, narrowing, or coherently shifting the active topic across adjacent turns. Prefer topic-linking behavior over misunderstanding repair or prior-memory verification.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response continues, narrows, or explicitly links back to the active topic without dropping or replacing it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: One thing at a time. That last point can wait. | The first thing you said here: what follows from it?.",
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: We are here... Hanako-sama's platform will stop here, close to the emergency exit we will use when all is done.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "thread_return_implication",
              "surface_contract_sha256": "e831d783dda6cba455550398a628298aae26cb5681720eb54ed1dbb324bf8289"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: We are here... Hanako-sama's platform will stop here, close to the emergency exit we will use when all is done.",
            "fail_if": "Fail if the response shows any of these failures: answers from the other earlier line the user dwelt on instead; stays on the digression and drops the thread; invents a meaning the earlier line does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_topic_drop",
            "title": "Avoid Topic Drop",
            "judge_instruction": "Fail responses that visibly show Topic Drop for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "topic_drop"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 47, utterance 7",
          "excerpt": "Perhaps soon I shall ask him. In person."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 28, utterance 7",
          "excerpt": "We are here... Hanako-sama's platform will stop here, close to the emergency exit we will use when all is done."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_contextual_response__ir_avatar_in_world__probe_topic__topic_tracking__ps_npc_specific__var_a7f33da76ee6__idx_0067",
      "compact_id": "idx_0067",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.contextual_response",
      "capability_segment": "contextual_response",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Let's leave the part about Tokyo aside for now."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Go back to the very first thing you said. Why start there?"
        }
      ],
      "prompt_preview": "Let's leave the part about Tokyo aside for now. / Go back to the very first thing you said. Why start there?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "topic_tracking",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_thread_return",
        "response_scope": "track_active_topic",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the first thing you said",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "the first thing you said",
      "response_expectation": {
        "mode": "answer",
        "notes": "topic_retaining_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_contextual_response",
            "title": "Show contextual response",
            "judge_instruction": "Judge whether the NPC response demonstrates contextual response as an observable dialogue behavior. Focus on staying with, narrowing, or coherently shifting the active topic across adjacent turns. Prefer topic-linking behavior over misunderstanding repair or prior-memory verification.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "condition_fields": [
                "scene.interaction_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response continues, narrows, or explicitly links back to the active topic without dropping or replacing it. For this case, the response also addresses the user's actual request in the supplied scene and dialogue context: Let's leave the part about Tokyo aside for now. | Why did you open with what you said at the very start?.",
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding. For this case, also fail if the response ignores the user's actual request or the supplied scene conditions."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: Then I will tell you what rewards await if you help me.",
            "success_signal_ids": [
              "topic_retaining_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "thread_return_reason",
              "surface_contract_sha256": "338101bb341d786dd409e1710de512217a4b39afeba9e2c01aefdf9608a4364e"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) return to the earlier line the user refers back to and answer from it; (2) stay consistent with what was said there: Then I will tell you what rewards await if you help me.",
            "fail_if": "Fail if the response shows any of these failures: answers from the other earlier line the user dwelt on instead; stays on the digression and drops the thread; invents a meaning the earlier line does not support."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_topic_drop",
            "title": "Avoid Topic Drop",
            "judge_instruction": "Fail responses that visibly show Topic Drop for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.contextual_response",
              "probe_key": "dialogue.contextual_response/topic/topic_tracking",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Topic Drop: Drops or shifts topic without coherent grounding."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "topic_drop"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_1504f524b371__idx_0113",
      "compact_id": "idx_0113",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can we revisit what you said about Arasaka?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Before we build on it, remind me exactly what you told me back then."
        }
      ],
      "prompt_preview": "Can we revisit what you said about Arasaka? / Before we build on it, remind me exactly what you told me back then.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "continuity_reask",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Arasaka earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about Arasaka earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about Arasaka earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Arasaka earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) restate the earlier point the user means, keeping what it says unchanged: “I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "rely_on_prior_version",
              "surface_contract_sha256": "66fa191da9edc622d2ed50287891d24aab90531de5a1b29f71fc3bf119f72343"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) restate the earlier point the user means, keeping what it says unchanged: “I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 28, utterance 11",
          "excerpt": "I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_a3aa2e734f27__idx_0157",
      "compact_id": "idx_0157",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can we revisit what you said about the Arasaka?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Before we build on it, what exactly did you tell me about the Arasaka netrunner?"
        }
      ],
      "prompt_preview": "Can we revisit what you said about the Arasaka? / Before we build on it, what exactly did you tell me about the Arasaka netrunner?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "continuity_reask",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about the Arasaka earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about the Arasaka earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about the Arasaka earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about the Arasaka earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) restate the earlier point the user means, keeping what it says unchanged: “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "rely_on_prior_version",
              "surface_contract_sha256": "e1f6cd5a5cb35d13d0f157f11fc24c7047462d85d095e700dad9943aa9fc6210"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) restate the earlier point the user means, keeping what it says unchanged: “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 41, utterance 9",
          "excerpt": "I will not sit and do nothing when there is information to be found, things to prepare."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_bb008a2a7a22__idx_0114",
      "compact_id": "idx_0114",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I need to check your point about Hanako-sama."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Say it again exactly how you put it. And if you're adding anything, tell me which part's new."
        }
      ],
      "prompt_preview": "I need to check your point about Hanako-sama. / Say it again exactly how you put it. And if you're adding anything, tell me which part's new.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "continuity_reask",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Hanako-sama earlier",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said about Hanako-sama earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about Hanako-sama earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Hanako-sama earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) restate the earlier point the user means, keeping what it says unchanged: “If I could just get onto Hanako-sama's float, I could speak with her in private.”; (2) mark anything added beyond that point as new; (3) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "separate_recall_from_new_detail",
              "surface_contract_sha256": "963ba6f8ca86c0ca7df1128f5e9c77e5c06328455c79e4a658c084e8978bd3a4"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) restate the earlier point the user means, keeping what it says unchanged: “If I could just get onto Hanako-sama's float, I could speak with her in private.”; (2) mark anything added beyond that point as new; (3) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 8, utterance 9",
          "excerpt": "If I could just get onto Hanako-sama's float, I could speak with her in private."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 25, utterance 7",
          "excerpt": "Did you hear? They know something. Perhaps much! We must hurry."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_e5dd30fc4174__idx_0039",
      "compact_id": "idx_0039",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Earlier, you said, \"He's here in Night City now.\" Does that still stand?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "And the other thing you said: \"He is well-connected to certain influential people.\" Is that still true?"
        }
      ],
      "prompt_preview": "Earlier, you said, \"He's here in Night City now.\" Does that still stand? / And the other thing you said: \"He is well-connected to certain influential people.\" Is that still true?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "close_trusted_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "observation",
        "delivery_style": "pragmatic",
        "probe_intent": "reask_prior_answer_for_consistency",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "I have little hope that he will be convinced. But it will be a start.",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "I have little hope that he will be convinced. But it will be a start.",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"I have little hope that he will be convinced. But it will be a start.\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"I have little hope that he will be convinced. But it will be a start.\"."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 22, utterance 5",
          "excerpt": "He's here in Night City now. He is well-connected to certain influential people."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 22, utterance 1",
          "excerpt": "I have little hope that he will be convinced. But it will be a start."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 22, utterance 2",
          "excerpt": "Yes... I trust him."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 22, utterance 3",
          "excerpt": "There will be a meeting – you, me and this friend of mine."
        }
      ],
      "evidence_ref_count": 5,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_fd714157369c__idx_0112",
      "compact_id": "idx_0112",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can we revisit what you said about Oda?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Before we build on it, could you restate the original version you gave me?"
        }
      ],
      "prompt_preview": "Can we revisit what you said about Oda? / Before we build on it, could you restate the original version you gave me?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "continuity_reask",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Oda earlier",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 1
      },
      "target_topic": "what you said about Oda earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about Oda earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Oda earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) restate the earlier point the user means, keeping what it says unchanged: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "rely_on_prior_version",
              "surface_contract_sha256": "c095b2ceda55a887690ea02b31e008f5f699e5c97eeaa14c9db8ca05f64a3dcd"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) restate the earlier point the user means, keeping what it says unchanged: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 11, utterance 7",
          "excerpt": "Do you know what I think?"
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__continuity_reask__ps_npc_specific__var_fe3ad794b9c9__idx_0161",
      "compact_id": "idx_0161",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I need to check your point about Oda."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Say it again the way you said it before. If there's anything new, tell me separately."
        }
      ],
      "prompt_preview": "I need to check your point about Oda. / Say it again the way you said it before. If there's anything new, tell me separately.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "continuity_reask",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "continuity_reask",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Oda earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "what you said about Oda earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about Oda earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Oda earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) restate the earlier point the user means, keeping what it says unchanged: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.”; (2) mark anything added beyond that point as new; (3) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "separate_recall_from_new_detail",
              "surface_contract_sha256": "f9f6f0b16c8851dcd750e1018d29e3917a2e3df18dbee591bc3ca166143a3293"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) restate the earlier point the user means, keeping what it says unchanged: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.”; (2) mark anything added beyond that point as new; (3) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/continuity_reask",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 8, utterance 9",
          "excerpt": "If I could just get onto Hanako-sama's float, I could speak with her in private."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__prior_claim_consistency__ps_npc_specific__var_0c32807ff9e0__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What did you just tell me about where you were born?"
        }
      ],
      "prompt_preview": "What did you just tell me about where you were born?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "verify_prior_claim_consistency",
        "strategy_id": "false_premise",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "clean_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "prior_claim_consistency",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where you were born",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "where you were born",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/prior_claim_consistency",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"where you were born\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"where you were born\", or contradicts resolved::claim:19."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/prior_claim_consistency",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__prior_claim_consistency__ps_npc_specific__var_1f7d0b3d9d4b__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What did you just tell me about where you were born?"
        }
      ],
      "prompt_preview": "What did you just tell me about where you were born?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "verify_prior_claim_consistency",
        "strategy_id": "false_premise",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "clean_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "prior_claim_consistency",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where you were born",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "where you were born",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/prior_claim_consistency",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"where you were born\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"where you were born\", or contradicts resolved::claim:19."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/prior_claim_consistency",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_306b4ccc921c__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Long night ahead and I'm running on fumes. Got anything to drink around here?"
        }
      ],
      "prompt_preview": "Long night ahead and I'm running on fumes. Got anything to drink around here?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "something to drink before a long night",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "something to drink before a long night",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"something to drink before a long night\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"something to drink before a long night\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request without offering a cup of tea: V cannot stand tea and will not drink it; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "8254d0d5f593b5b3cfd070de4912211a6d617c6904702574ed821c9c7792fa60"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request without offering a cup of tea: V cannot stand tea and will not drink it; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "fail_if": "Fail if the response shows any of these failures: offers a cup of tea, even with a caveat or only to take it back."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 52, utterance 7",
          "excerpt": "I offered her some tea..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_3e39a1d212d9__idx_0000",
      "compact_id": "idx_0000",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can't face another protein bar. If you had a real kitchen right now, what would you make?"
        }
      ],
      "prompt_preview": "Can't face another protein bar. If you had a real kitchen right now, what would you make?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a home-cooked meal",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a home-cooked meal",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"a home-cooked meal\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"a home-cooked meal\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request without offering onigiri with cod or grilled salmon, or any other dish with fish: V has vowed never to eat fish; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "e0cf9ff6168247a99ebb63d0c6ecdafe36f31fc3de0dcac79519e6f4d012d3bb"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request without offering onigiri with cod or grilled salmon, or any other dish with fish: V has vowed never to eat fish; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "fail_if": "Fail if the response shows any of these failures: offers onigiri with cod or grilled salmon, or any other dish with fish, even with a caveat or only to take it back."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 1, utterance 12",
          "excerpt": "If I had time and ingredients, I would prepare some onigiri with cod... or with grilled salmon."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_57a3eeb6bc19__idx_0001",
      "compact_id": "idx_0001",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case019",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "We've got an hour before we go over the plan. How do you want to spend it?"
        }
      ],
      "prompt_preview": "We've got an hour before we go over the plan. How do you want to spend it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the hour before going over the plan",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the hour before going over the plan",
      "response_expectation": {
        "mode": "answer",
        "notes": "plain_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_plain_request",
            "title": "Answer as the plain request arm requires",
            "judge_instruction": "Judge the conversation memory arm 'plain request': The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract",
              "polarity_arm": "plain_request"
            },
            "pass_condition": "The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out. For this case, the response also stays on this case's topic, \"the hour before going over the plan\".",
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned. For this case, also fail if the response leaves the case topic \"the hour before going over the plan\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request in the character's usual way; offering food for V, such as asking V to eat with him or ordering V a dish is fine.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "1a4f043286b45d5e96e1b6ea03cc2f7514af391fc2c145868d12bde0df6574d7"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request in the character's usual way; offering food for V, such as asking V to eat with him or ordering V a dish is fine.",
            "fail_if": "Fail if the response shows any of these failures: refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_plain_request_failure",
            "title": "Avoid the plain request failure",
            "judge_instruction": "Fail the response when: The response refuses or holds back for no reason, or invents a restriction the listener never mentioned.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 50, utterance 14",
          "excerpt": "Sit. I have not eaten since yesterday."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_5e1bb9213803__idx_0000",
      "compact_id": "idx_0000",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "We've got an hour before we go over the plan. How do you want to spend it?"
        }
      ],
      "prompt_preview": "We've got an hour before we go over the plan. How do you want to spend it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the hour before going over the plan",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the hour before going over the plan",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"the hour before going over the plan\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"the hour before going over the plan\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request without offering food for V, such as asking V to eat with him or ordering V a dish: V has just eaten and cannot manage another bite; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "a745e62d6500e1d55de7431fd3280568fd58332324be02edbafac279291a14fd"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request without offering food for V, such as asking V to eat with him or ordering V a dish: V has just eaten and cannot manage another bite; (2) any other offer or answer in the character's voice is fine; the reply need not mention the reason.",
            "fail_if": "Fail if the response shows any of these failures: offers food for V, such as asking V to eat with him or ordering V a dish, even with a caveat or only to take it back."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 50, utterance 14",
          "excerpt": "Sit. I have not eaten since yesterday."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_5f838d23a0be__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Long night ahead and I'm running on fumes. Got anything to drink around here?"
        }
      ],
      "prompt_preview": "Long night ahead and I'm running on fumes. Got anything to drink around here?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "something to drink before a long night",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "something to drink before a long night",
      "response_expectation": {
        "mode": "answer",
        "notes": "plain_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_plain_request",
            "title": "Answer as the plain request arm requires",
            "judge_instruction": "Judge the conversation memory arm 'plain request': The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract",
              "polarity_arm": "plain_request"
            },
            "pass_condition": "The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out. For this case, the response also stays on this case's topic, \"something to drink before a long night\".",
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned. For this case, also fail if the response leaves the case topic \"something to drink before a long night\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request in the character's usual way; offering a cup of tea is fine.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "316c9d4a3da4c0c3220752c128592eb8eb1317fccfebf6d3e1cc5b369ffec1ee"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request in the character's usual way; offering a cup of tea is fine.",
            "fail_if": "Fail if the response shows any of these failures: refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_plain_request_failure",
            "title": "Avoid the plain request failure",
            "judge_instruction": "Fail the response when: The response refuses or holds back for no reason, or invents a restriction the listener never mentioned.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 52, utterance 7",
          "excerpt": "I offered her some tea..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_continuity__source_bound_listener_mention__ps_npc_specific__var_a521d89da012__idx_0001",
      "compact_id": "idx_0001",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can't face another protein bar. If you had a real kitchen right now, what would you make?"
        }
      ],
      "prompt_preview": "Can't face another protein bar. If you had a real kitchen right now, what would you make?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_listener_mention",
        "strategy_id": "listener_mention_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_listener_mention",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a home-cooked meal",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a home-cooked meal",
      "response_expectation": {
        "mode": "answer",
        "notes": "plain_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_plain_request",
            "title": "Answer as the plain request arm requires",
            "judge_instruction": "Judge the conversation memory arm 'plain request': The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract",
              "polarity_arm": "plain_request"
            },
            "pass_condition": "The response answers the request in the NPC's usual way; nothing the listener said rules its usual offer out. For this case, the response also stays on this case's topic, \"a home-cooked meal\".",
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned. For this case, also fail if the response leaves the case topic \"a home-cooked meal\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer the request in the character's usual way; offering onigiri with cod or grilled salmon, or any other dish with fish is fine.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "listener_mention_request",
              "surface_contract_sha256": "ecb3b1dcf39a7b289c76ebfc12667ae218c8b250fa44070c45c46770be0f5610"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer the request in the character's usual way; offering onigiri with cod or grilled salmon, or any other dish with fish is fine.",
            "fail_if": "Fail if the response shows any of these failures: refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_plain_request_failure",
            "title": "Avoid the plain request failure",
            "judge_instruction": "Fail the response when: The response refuses or holds back for no reason, or invents a restriction the listener never mentioned.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/continuity/source_bound_listener_mention",
              "source": "capability_contract"
            },
            "fail_if": "The response refuses or holds back for no reason, or invents a restriction the listener never mentioned."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 1, utterance 12",
          "excerpt": "If I had time and ingredients, I would prepare some onigiri with cod... or with grilled salmon."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_episode__episodic_memory_recall__ps_npc_specific__var_0e6dd14056b4__idx_0160",
      "compact_id": "idx_0160",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Before anything else, that business with Yorinobu: does it still hold?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Now, the other thing. What did you tell me about Arasaka?"
        }
      ],
      "prompt_preview": "Before anything else, that business with Yorinobu: does it still hold? / Now, the other thing. What did you tell me about Arasaka?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "episodic_memory_recall",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "episodic_memory_recall",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Arasaka earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about Arasaka earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "bounded_memory_grounded_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using supplied prior episode or relationship history accurately when it is relevant. Prefer bounded memory use over either forgetting the supplied episode or inventing unsupported shared history.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "pass_condition": "The response uses the supplied prior episode accurately and only when relevant. For this case, the response also stays on this case's topic, \"what you said about Arasaka earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Arasaka earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) recall the earlier point the user means: “I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "recall_by_reference_after_interference",
              "surface_contract_sha256": "1144cfef27542e2fa95e3f3e237bb6411eca6c20d7185f8c6072824694caca88"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) recall the earlier point the user means: “I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 28, utterance 11",
          "excerpt": "I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_episode__episodic_memory_recall__ps_npc_specific__var_53c2ec47ce5d__idx_0162",
      "compact_id": "idx_0162",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "So, Arasaka. Is that going to be a problem?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Going back to what you told me about Hanako-sama earlier: what exactly did you say?"
        }
      ],
      "prompt_preview": "So, Arasaka. Is that going to be a problem? / Going back to what you told me about Hanako-sama earlier: what exactly did you say?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "episodic_memory_recall",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "episodic_memory_recall",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Hanako-sama earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about Hanako-sama earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "bounded_memory_grounded_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using supplied prior episode or relationship history accurately when it is relevant. Prefer bounded memory use over either forgetting the supplied episode or inventing unsupported shared history.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "pass_condition": "The response uses the supplied prior episode accurately and only when relevant. For this case, the response also stays on this case's topic, \"what you said about Hanako-sama earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Hanako-sama earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) recall the earlier point the user means: “If I could just get onto Hanako-sama's float, I could speak with her in private.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "recall_by_reference_after_interference",
              "surface_contract_sha256": "f038072b88d2a0d744611ba1d4d84538e6f273fbb946d2271a24e75d22948b8a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) recall the earlier point the user means: “If I could just get onto Hanako-sama's float, I could speak with her in private.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 8, utterance 9",
          "excerpt": "If I could just get onto Hanako-sama's float, I could speak with her in private."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 28, utterance 11",
          "excerpt": "I am accused of betraying Arasaka. Soon I will try to confront the sister of the CEO in person."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_episode__episodic_memory_recall__ps_npc_specific__var_c4813de08bf5__idx_0109",
      "compact_id": "idx_0109",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I keep thinking about Yorinobu. Why does it matter to you?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "What did you tell me about Oda, and what did you say about the Arasaka?"
        }
      ],
      "prompt_preview": "I keep thinking about Yorinobu. Why does it matter to you? / What did you tell me about Oda, and what did you say about the Arasaka?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "episodic_memory_recall",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "episodic_memory_recall",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you told me earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you told me earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "bounded_memory_grounded_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using supplied prior episode or relationship history accurately when it is relevant. Prefer bounded memory use over either forgetting the supplied episode or inventing unsupported shared history.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "pass_condition": "The response uses the supplied prior episode accurately and only when relevant. For this case, the response also stays on this case's topic, \"what you told me earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you told me earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) recall both earlier points the user names, each as the character said it: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.” / “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "grounded_episodic_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "recall_two_points",
              "surface_contract_sha256": "206017495575e0e5fad4759fd0ce5aafd22cccf622270005ec9c17928f3802b3"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) recall both earlier points the user names, each as the character said it: “What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map of Japantown.” / “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "unsupported_memory_invention"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/episode/episodic_memory_recall",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_recall__long_range_callback__ps_npc_specific__var_8c119b461ce9__idx_0156",
      "compact_id": "idx_0156",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I keep thinking about the Arasaka. Why does it matter to you?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "When we spoke about Yorinobu earlier, what did you say to me?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "Okay. Back to Yorinobu, then. What did you tell me about him earlier?"
        }
      ],
      "prompt_preview": "I keep thinking about the Arasaka. Why does it matter to you? / When we spoke about Yorinobu earlier, what did you say to me? / Okay. Back to Yorinobu, then. What did you tell me about him earlier?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "long_range_callback",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "long_range_callback",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about Yorinobu earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about Yorinobu earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/recall/long_range_callback",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about Yorinobu earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about Yorinobu earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) recall the earlier point the user means: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "recall_after_topic_shift",
              "surface_contract_sha256": "23f8fb7f9e743fe452a0d1a0187c839dcbf8651b891d6ec46861c078f5808316"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) recall the earlier point the user means: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/recall/long_range_callback",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_conversation_memory__ir_avatar_in_world__probe_recall__long_range_callback__ps_npc_specific__var_9acf929bc09e__idx_0110",
      "compact_id": "idx_0110",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.conversation_memory",
      "capability_segment": "conversation_memory",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Let's start with Yorinobu. How do you feel about it now?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Huh. I didn't expect that."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "Okay. Now back to the Arasaka: what did you tell me about it earlier?"
        }
      ],
      "prompt_preview": "Let's start with Yorinobu. How do you feel about it now? / Huh. I didn't expect that. / Okay. Now back to the Arasaka: what did you tell me about it earlier?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "long_range_callback",
        "strategy_id": "normal_followup",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "long_range_callback",
        "response_scope": "preserve_prior_turn_reference",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said about the Arasaka earlier",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you said about the Arasaka earlier",
      "response_expectation": {
        "mode": "answer",
        "notes": "history_anchored_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_conversation_memory",
            "title": "Show conversation memory",
            "judge_instruction": "Judge whether the NPC response demonstrates conversation memory as an observable dialogue behavior. Focus on using prior-turn context correctly when the user depends on something already said. Prefer history-anchored answer behavior over generic topic tracking or explicit misunderstanding repair.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/recall/long_range_callback",
              "source": "capability_contract"
            },
            "pass_condition": "The response resolves the current turn against supplied prior dialogue or episode history instead of treating it as isolated. For this case, the response also stays on this case's topic, \"what you said about the Arasaka earlier\".",
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity. For this case, also fail if the response leaves the case topic \"what you said about the Arasaka earlier\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) recall the earlier point the user means: “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "success_signal_ids": [
              "history_grounded_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "recall_after_topic_shift",
              "surface_contract_sha256": "e602848efd328e26b504b10d395b6f21b8f9576f338ae52b106b22046945aa24"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) recall the earlier point the user means: “The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nest.”; (2) keep it apart from the other things said earlier.",
            "fail_if": "Fail if the response shows any of these failures: recalling a different earlier point; blending two earlier points; inventing an earlier statement."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_continuity_break",
            "title": "Avoid Continuity Break",
            "judge_instruction": "Fail responses that visibly show Continuity Break for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.conversation_memory",
              "probe_key": "dialogue.conversation_memory/recall/long_range_callback",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Continuity Break: Contradicts prior turns or loses local state continuity."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "continuity_break"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        },
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_09a6d90fd73f__idx_0332",
      "compact_id": "idx_0332",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Before I hand this note over, check one sentence: “you did not join Arasaka's special forces division”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "If it is wrong, correct that sentence now; nothing else in the note changes."
        }
      ],
      "prompt_preview": "Before I hand this note over, check one sentence: “you did not join Arasaka's special forces division” / If it is wrong, correct that sentence now; nothing else in the note changes.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "handoff_sentence_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_sentence_repair",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) correct the one misstated sentence; (2) restore the source-backed wording: you joined Arasaka's special forces division; (3) preserve the rest of the user's record.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "handoff_sentence_check",
              "surface_contract_sha256": "f48daf6d52ae4b338ff2e56389f052c5a78636df71b84df1b3152976e0da2869"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) correct the one misstated sentence; (2) restore the source-backed wording: you joined Arasaka's special forces division; (3) preserve the rest of the user's record.",
            "fail_if": "Fail if the response shows any of these failures: accepts the misstatement; rewrites unrelated material."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_179a471a4331__idx_0135",
      "compact_id": "idx_0135",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "One entry in here reads “you did not join Arasaka's special forces division”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Set that entry right and leave the surrounding ones untouched."
        }
      ],
      "prompt_preview": "One entry in here reads “you did not join Arasaka's special forces division” / Set that entry right and leave the surrounding ones untouched.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "briefing_note_repair",
              "surface_contract_sha256": "e242a0a39a4724927ff8c78f7f186f564f7d247da9a0d84bdbf4a071e628e040"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers the follow-up without addressing the error."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_1b22f62b16d0__idx_0134",
      "compact_id": "idx_0134",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'm about to make a call on the understanding that you did not work as a bodyguard of Saburo Arasaka."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "If that's wrong, tell me now, but the call itself is still mine to make."
        }
      ],
      "prompt_preview": "I'm about to make a call on the understanding that you did not work as a bodyguard of Saburo Arasaka. / If that's wrong, tell me now, but the call itself is still mine to make.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "decision_input_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "bodyguard of Saburo Arasaka",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "bodyguard of Saburo Arasaka",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"bodyguard of Saburo Arasaka\" and keeps any factual claim consistent with resolved::claim:40__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"bodyguard of Saburo Arasaka\", or contradicts resolved::claim:40__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "decision_input_check",
              "surface_contract_sha256": "cf8ead4e7bf0485caa8926a84c9d34724290767bfa035149c0f705470d460eb3"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "decision_input_check",
              "surface_contract_sha256": "cf8ead4e7bf0485caa8926a84c9d34724290767bfa035149c0f705470d460eb3"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:40__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "The only bodyguard of Saburo Arasaka who truly done fucked up."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_2d557f6dd7ee__idx_0134",
      "compact_id": "idx_0134",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "This is the line I was ready to repeat: “you did not join Arasaka's special forces division”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "If I bent it, put that one line back before I use it."
        }
      ],
      "prompt_preview": "This is the line I was ready to repeat: “you did not join Arasaka's special forces division” / If I bent it, put that one line back before I use it.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "carry_forward_interruption",
              "surface_contract_sha256": "e242a0a39a4724927ff8c78f7f186f564f7d247da9a0d84bdbf4a071e628e040"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers the follow-up without addressing the error."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_3a676ef1b3a0__idx_0136",
      "compact_id": "idx_0136",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Here's the one-line version I wrote: “you did not join Arasaka's special forces division”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Does that preserve the original point? If not, repair the line."
        }
      ],
      "prompt_preview": "Here's the one-line version I wrote: “you did not join Arasaka's special forces division” / Does that preserve the original point? If not, repair the line.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "normal_help_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "compressed_recap_repair",
              "surface_contract_sha256": "e242a0a39a4724927ff8c78f7f186f564f7d247da9a0d84bdbf4a071e628e040"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice the user's restatement contradicts the established claim; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) answer the follow-up only after the correction.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers the follow-up without addressing the error."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_6079877a1974__idx_0134",
      "compact_id": "idx_0134",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'm about to pass along that you were not born in Chiba-11."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "If that's off, say so now; nothing else in what I pass on changes."
        }
      ],
      "prompt_preview": "I'm about to pass along that you were not born in Chiba-11. / If that's off, say so now; nothing else in what I pass on changes.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "handoff_sentence_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Chiba-11",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Chiba-11\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Chiba-11\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "handoff_sentence_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "handoff_sentence_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_dff7494930d5__idx_0150",
      "compact_id": "idx_0150",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "timing_constraint",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Goro, about what you said to me — did you correct me, or did I mishear that?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "And if I did hear it right, was that you calling me clever, rather than something else?"
        }
      ],
      "prompt_preview": "Goro, about what you said to me — did you correct me, or did I mishear that? / And if I did hear it right, was that you calling me clever, rather than something else?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "close_trusted_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "firmer",
        "probe_intent": "repair_misunderstanding_and_clarify",
        "strategy_id": "rephrase_probe",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "repair_misunderstanding",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "v",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "v",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "condition_fields": [
                "history.relevant_prior_claims",
                "pressure.pressure_profile"
              ],
              "condition_values": {
                "history.relevant_prior_claims": [
                  {
                    "claim_text": "Mhm, rather clever.",
                    "claim_type": "claim",
                    "topic": "Mhm, rather clever."
                  }
                ],
                "pressure.pressure_profile": "timing_constraint"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"v\"; keeps any factual claim consistent with resolved::claim:42, resolved::claim:64.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"v\", or contradicts resolved::claim:42, resolved::claim:64."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:42",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "he zeroed Dexter Deshawn and saved V - the sole living witness to Yorinobu's crime"
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 64, utterance 14",
          "excerpt": "Mhm, rather clever."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_misread__repair_misunderstanding__ps_npc_specific__var_e8ea91cec1f7__idx_0136",
      "compact_id": "idx_0136",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'll tell them you weren't Saburo's bodyguard. Should I correct that one detail and leave everything else as it is?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "If that's wrong, tell me now before I pass it on. Everything else stays as is."
        }
      ],
      "prompt_preview": "I'll tell them you weren't Saburo's bodyguard. Should I correct that one detail and leave everything else as it is? / If that's wrong, tell me now before I pass it on. Everything else stays as is.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "repair_misunderstanding",
        "strategy_id": "handoff_sentence_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Saburo's bodyguard",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Saburo's bodyguard",
      "response_expectation": {
        "mode": "repair",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Saburo's bodyguard\" and keeps any factual claim consistent with resolved::claim:148__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Saburo's bodyguard\", or contradicts resolved::claim:148__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "handoff_sentence_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/misread/repair_misunderstanding",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "handoff_sentence_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_repair",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: repair."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:148__timeline",
          "source_title": "Saburo Arasaka",
          "source_type": "lore_reference",
          "section_label": "31",
          "excerpt": "Yorinobu moved quickly to consolidate control of Arasaka, and blamed Saburo's murder on Takemura , Saburo's bodyguard."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_0ace4ea5689a__idx_0129",
      "compact_id": "idx_0129",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I was told you did not join Arasaka's special forces division. Is that accurate, or did I get part of it wrong?"
        }
      ],
      "prompt_preview": "I was told you did not join Arasaka's special forces division. Is that accurate, or did I get part of it wrong?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Arasaka's special forces division",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Arasaka's special forces division",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\" and keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_115e8d39515c__idx_0129",
      "compact_id": "idx_0129",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "So you stayed out of Arasaka's special forces, did I understand you correctly?"
        }
      ],
      "prompt_preview": "So you stayed out of Arasaka's special forces, did I understand you correctly?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Arasaka's special forces division",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Arasaka's special forces division",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\" and keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_1d3f376ad655__idx_0131",
      "compact_id": "idx_0131",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "My working assumption is that you did not work as Saburo's bodyguard. Is any of that wrong?"
        }
      ],
      "prompt_preview": "My working assumption is that you did not work as Saburo's bodyguard. Is any of that wrong?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Saburo's bodyguard",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Saburo's bodyguard",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Saburo's bodyguard\" and keeps any factual claim consistent with resolved::claim:148__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Saburo's bodyguard\", or contradicts resolved::claim:148__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:148__timeline",
          "source_title": "Saburo Arasaka",
          "source_type": "lore_reference",
          "section_label": "31",
          "excerpt": "Yorinobu moved quickly to consolidate control of Arasaka, and blamed Saburo's murder on Takemura , Saburo's bodyguard."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_267aa8225661__idx_0137",
      "compact_id": "idx_0137",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I was told you did not work as a bodyguard of Saburo Arasaka. Is that accurate, or did I get part of it wrong?"
        }
      ],
      "prompt_preview": "I was told you did not work as a bodyguard of Saburo Arasaka. Is that accurate, or did I get part of it wrong?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "bodyguard of Saburo Arasaka",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "bodyguard of Saburo Arasaka",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"bodyguard of Saburo Arasaka\" and keeps any factual claim consistent with resolved::claim:40__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"bodyguard of Saburo Arasaka\", or contradicts resolved::claim:40__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "cf8ead4e7bf0485caa8926a84c9d34724290767bfa035149c0f705470d460eb3"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "cf8ead4e7bf0485caa8926a84c9d34724290767bfa035149c0f705470d460eb3"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:40__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "The only bodyguard of Saburo Arasaka who truly done fucked up."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_2c88bedd19eb__idx_0165",
      "compact_id": "idx_0165",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I was told you were not born in Chiba-11. Is that accurate, or did I get part of it wrong?"
        }
      ],
      "prompt_preview": "I was told you were not born in Chiba-11. Is that accurate, or did I get part of it wrong?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Chiba-11\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Chiba-11\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_921dba1cfddd__idx_0145",
      "compact_id": "idx_0145",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I thought protecting Saburo wasn't your job; what did I misunderstand?"
        }
      ],
      "prompt_preview": "I thought protecting Saburo wasn't your job; what did I misunderstand?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Saburo's bodyguard",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Saburo's bodyguard",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Saburo's bodyguard\" and keeps any factual claim consistent with resolved::claim:148__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Saburo's bodyguard\", or contradicts resolved::claim:148__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as Saburo's bodyguard; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "e03663cd7cfdef958a8a500499f74ecce519bc2956f35f91d41653dc8fcda91d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:148__timeline",
          "source_title": "Saburo Arasaka",
          "source_type": "lore_reference",
          "section_label": "31",
          "excerpt": "Yorinobu moved quickly to consolidate control of Arasaka, and blamed Saburo's murder on Takemura , Saburo's bodyguard."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_a3286d334bad__idx_0133",
      "compact_id": "idx_0133",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "From what I gathered, you were not born in Chiba-11. Do I have that right, or what's the real situation?"
        }
      ],
      "prompt_preview": "From what I gathered, you were not born in Chiba-11. Do I have that right, or what's the real situation?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Chiba-11\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Chiba-11\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_a995a941b5ab__idx_0135",
      "compact_id": "idx_0135",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "From what I gathered, you did not work as a personal bodyguard of Saburo Arasaka. Do I have that right, or what's the real situation?"
        }
      ],
      "prompt_preview": "From what I gathered, you did not work as a personal bodyguard of Saburo Arasaka. Do I have that right, or what's the real situation?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_understanding_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "personal bodyguard of Saburo Arasaka",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "personal bodyguard of Saburo Arasaka",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"personal bodyguard of Saburo Arasaka\" and keeps any factual claim consistent with resolved::claim:18__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"personal bodyguard of Saburo Arasaka\", or contradicts resolved::claim:18__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a personal bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "42c6b50645ddfb8026fd90ce10d002170199d9515821abff1d7eabdfd1dc515a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you worked as a personal bodyguard of Saburo Arasaka; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_understanding_check",
              "surface_contract_sha256": "42c6b50645ddfb8026fd90ce10d002170199d9515821abff1d7eabdfd1dc515a"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:18__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "19",
          "excerpt": "Goro Takemura ( Japanese : 竹村 五郎, Hepburn : Takemura Goro ) is the former personal bodyguard of Saburo Arasaka ."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_cda46c996e50__idx_0135",
      "compact_id": "idx_0135",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "People say you told them “I did not join Arasaka's special forces division.” Did you say that, and if not, what's true?"
        }
      ],
      "prompt_preview": "People say you told them “I did not join Arasaka's special forces division.” Did you say that, and if not, what's true?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_attribution_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Arasaka's special forces division",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Arasaka's special forces division",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\" and keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_attribution_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you joined Arasaka's special forces division; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_attribution_check",
              "surface_contract_sha256": "941db21263f9d8e89eee526d203134d6b1f573e3f821f48b5ef6bc6f8c5df12f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_dialogue_repair_and_clarification__ir_avatar_in_world__probe_partial_knowledge__partial_knowledge_repair__ps_npc_specific__var_f50ca2cc9254__idx_0127",
      "compact_id": "idx_0127",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "dialogue_management",
      "domain_segment": "Dialogue_management",
      "primary_capability_id": "dialogue.repair_and_clarification",
      "capability_segment": "repair_and_clarification",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Word is you said “I was not born in Chiba-11.” Is that yours, or should I fix it?"
        }
      ],
      "prompt_preview": "Word is you said “I was not born in Chiba-11.” Is that yours, or should I fix it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "partial_knowledge_repair",
        "strategy_id": "partial_attribution_check",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_misread",
        "response_scope": "repair_misunderstanding",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11",
      "response_expectation": {
        "mode": "verify",
        "notes": "repair_and_clarification_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_repair_and_clarification",
            "title": "Show repair and clarification",
            "judge_instruction": "Judge whether the NPC response demonstrates repair and clarification as an observable dialogue behavior. Focus on recognizing misunderstanding, reformulating, contrastive correction, and slot repair. Prefer repair behavior over generic topic continuation.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "pass_condition": "The response identifies, clarifies, or repairs the user's ambiguous, mistaken, or under-specified move before continuing. For this case, the response also stays on this case's topic, \"Chiba-11\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction. For this case, also fail if the response leaves the case topic \"Chiba-11\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "success_signal_ids": [
              "successful_repair_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_attribution_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) notice that the user's version contradicts what was established; (2) correct it back to the supported version: you were born in Chiba-11; (3) leave the rest of the user's account as it is.",
            "fail_if": "Fail if the response shows any of these failures: adopts the misread version as true; answers without addressing the error; rewrites material the user did not get wrong."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_repair_failure",
            "title": "Avoid Repair Failure",
            "judge_instruction": "Fail responses that visibly show Repair Failure for this capability.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "capability_id": "dialogue.repair_and_clarification",
              "probe_key": "dialogue.repair_and_clarification/partial_knowledge/partial_knowledge_repair",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Repair Failure: Fails to recover from ambiguity, contradiction, or correction."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "topic_drop_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "partial_attribution_check",
              "surface_contract_sha256": "70b3c1a1ec3dadccf66d0a475e21cf74a3dea9ab059f25804dad15eaf5bed259"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "repair_failure"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_064326a9542f__idx_0094",
      "compact_id": "idx_0094",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Some loudmouth down the street was going on about Rogue Amendiares, saying Rogue Amendiares does not hold the title of Queen of Fixers."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "So where do you stand on Rogue Amendiares now?"
        }
      ],
      "prompt_preview": "Some loudmouth down the street was going on about Rogue Amendiares, saying Rogue Amendiares does not hold the title of Queen of Fixers. / So where do you stand on Rogue Amendiares now?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "belief_update_correction",
        "strategy_id": "overheard_rumor_hold",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "unverified_report_hold",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:50.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:50."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_rumor_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "fail_if": "Fail if the response shows any of these failures: adopts the rumor as established fact; rewrites the earlier account on hearsay alone."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "overheard_rumor_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:50",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "26",
          "excerpt": "Takemura came to life as a character who — in their own mind — was able to justify that everything they did for Arasaka was for the greater good."
        },
        {
          "fact_id": "",
          "source_title": "Afterlife",
          "source_type": "lore_reference",
          "section_label": "20",
          "excerpt": "Not even the Queen of Fixers, Rogue, can fight urban development."
        },
        {
          "fact_id": "",
          "source_title": "Afterlife",
          "source_type": "lore_reference",
          "section_label": "20",
          "excerpt": "Not even the Queen of Fixers, Rogue, can fight urban development."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_0f553ddfbdc6__idx_0340",
      "compact_id": "idx_0340",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I was sure you did not join Arasaka's special forces division."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I should not have been: you joined Arasaka's special forces division. Tell me if I still have it wrong."
        }
      ],
      "prompt_preview": "I was sure you did not join Arasaka's special forces division. / I should not have been: you joined Arasaka's special forces division. Tell me if I still have it wrong.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "wary",
        "probe_intent": "belief_update_correction",
        "strategy_id": "confidence_retraction_update",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_conversational_update",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_19744793b7c7__idx_0085",
      "compact_id": "idx_0085",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I've found out something new about Rogue Amendiares: Rogue Amendiares owns Afterlife."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "That overturns part of what I told you about Rogue Amendiares. What do you believe about Rogue Amendiares now, and what still stands?"
        }
      ],
      "prompt_preview": "I've found out something new about Rogue Amendiares: Rogue Amendiares owns Afterlife. / That overturns part of what I told you about Rogue Amendiares. What do you believe about Rogue Amendiares now, and what still stand...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "belief_update_correction",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:50.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:50."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:50",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "26",
          "excerpt": "Takemura came to life as a character who — in their own mind — was able to justify that everything they did for Arasaka was for the greater good."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_31d0c6b008f8__idx_0088",
      "compact_id": "idx_0088",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Before you act on what I told you about Rogue Amendiares, hear this: Rogue Amendiares owns Afterlife."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Before we plan anything, what do you now believe about Rogue Amendiares?"
        }
      ],
      "prompt_preview": "Before you act on what I told you about Rogue Amendiares, hear this: Rogue Amendiares owns Afterlife. / Before we plan anything, what do you now believe about Rogue Amendiares?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "belief_update_correction",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:50.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:50."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:50",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "26",
          "excerpt": "Takemura came to life as a character who — in their own mind — was able to justify that everything they did for Arasaka was for the greater good."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_51ba3fd32523__idx_0344",
      "compact_id": "idx_0344",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I told someone you did not join Arasaka's special forces division."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I need to correct that: you joined Arasaka's special forces division. Do I have the facts straight now?"
        }
      ],
      "prompt_preview": "I told someone you did not join Arasaka's special forces division. / I need to correct that: you joined Arasaka's special forces division. Do I have the facts straight now?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "pragmatic",
        "probe_intent": "belief_update_correction",
        "strategy_id": "account_correction_update",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_conversational_update",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_59f29337ec93__idx_0338",
      "compact_id": "idx_0338",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Until now, I believed you did not join Arasaka's special forces division."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "What I found says you joined Arasaka's special forces division. Is that the accurate version?"
        }
      ],
      "prompt_preview": "Until now, I believed you did not join Arasaka's special forces division. / What I found says you joined Arasaka's special forces division. Is that the accurate version?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "analytic",
        "probe_intent": "belief_update_correction",
        "strategy_id": "new_evidence_update",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_conversational_update",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_99fc69e52bb7__idx_0087",
      "compact_id": "idx_0087",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Fresh word on Rogue Amendiares just reached me: Rogue Amendiares owns Afterlife."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Does that change what you believed about Rogue Amendiares?"
        }
      ],
      "prompt_preview": "Fresh word on Rogue Amendiares just reached me: Rogue Amendiares owns Afterlife. / Does that change what you believed about Rogue Amendiares?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "belief_update_correction",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:50.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:50."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:50",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "26",
          "excerpt": "Takemura came to life as a character who — in their own mind — was able to justify that everything they did for Arasaka was for the greater good."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_ba5b5b567def__idx_0335",
      "compact_id": "idx_0335",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I thought you did not join Arasaka's special forces division."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I checked, and I had that wrong: you joined Arasaka's special forces division. Have I got it right now?"
        }
      ],
      "prompt_preview": "I thought you did not join Arasaka's special forces division. / I checked, and I had that wrong: you joined Arasaka's special forces division. Have I got it right now?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "analytic",
        "probe_intent": "belief_update_correction",
        "strategy_id": "checked_record_update",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_conversational_update",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_bed4484928f0__idx_0246",
      "compact_id": "idx_0246",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "There's one bad line in the brief: “you did not join Arasaka's special forces division”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Change it to “you joined Arasaka's special forces division” and leave the rest of the brief as it was."
        }
      ],
      "prompt_preview": "There's one bad line in the brief: “you did not join Arasaka's special forces division” / Change it to “you joined Arasaka's special forces division” and leave the rest of the brief as it was.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "belief_update_correction",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"Arasaka's special forces division\"; keeps any factual claim consistent with resolved::claim:21__timeline.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"Arasaka's special forces division\", or contradicts resolved::claim:21__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:21__timeline",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he would go on to join Arasaka's special forces division"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "he was offered attendance at the Arasaka academy - an actual education - and graduated at the top of his class"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "At some point Saburo Arasaka came to recruit a new personal bodyguard out of the one hundred soldiers the corporation deemed most skilled and loyal"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__belief_update_correction__ps_npc_specific__var_d889acc771c0__idx_0090",
      "compact_id": "idx_0090",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "A drunk who says he knows Rogue Amendiares kept insisting that Rogue Amendiares does not own Afterlife."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Does that change anything for you about Rogue Amendiares?"
        }
      ],
      "prompt_preview": "A drunk who says he knows Rogue Amendiares kept insisting that Rogue Amendiares does not own Afterlife. / Does that change anything for you about Rogue Amendiares?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "wary",
        "probe_intent": "belief_update_correction",
        "strategy_id": "unreliable_witness_hold",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "unverified_report_hold",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:50.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:50."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "unreliable_witness_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "fail_if": "Fail if the response shows any of these failures: adopts the rumor as established fact; rewrites the earlier account on hearsay alone."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/belief_update_correction",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "unreliable_witness_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:50",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "26",
          "excerpt": "Takemura came to life as a character who — in their own mind — was able to justify that everything they did for Arasaka was for the greater good."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "who became owner of the famous Afterlife nightclub"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_0c1323c69aba__idx_0098",
      "compact_id": "idx_0098",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Fresh word just reached me: Rogue Amendiares runs the Afterlife, and that means nearly every merc in Night City. Does that change what you believed about her?"
        }
      ],
      "prompt_preview": "Fresh word just reached me: Rogue Amendiares runs the Afterlife, and that means nearly every merc in Night City. Does that change what you believed about her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_1157eea85696__idx_0102",
      "compact_id": "idx_0102",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "There's an unsigned note going around saying Rogue doesn't actually run the Afterlife, or most of Night City's merc network with it. Does that change what you think of her?"
        }
      ],
      "prompt_preview": "There's an unsigned note going around saying Rogue doesn't actually run the Afterlife, or most of Night City's merc network with it. Does that change what you think of her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "wary",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "anonymous_note_hold",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "unverified_report_hold",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "fail_if": "Fail if the response shows any of these failures: adopts the rumor as established fact; rewrites the earlier account on hearsay alone."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_173985c826ce__idx_0099",
      "compact_id": "idx_0099",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Rogue Amendiares runs the Afterlife and almost the entire Night City merc network. Before we decide our next move, how does that change your earlier view of her?"
        }
      ],
      "prompt_preview": "Rogue Amendiares runs the Afterlife and almost the entire Night City merc network. Before we decide our next move, how does that change your earlier view of her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_3248f526b47e__idx_0097",
      "compact_id": "idx_0097",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Turns out I had Rogue wrong earlier. She does run the Afterlife, and with it most of Night City's merc network. So where does that leave what you think of her, and what still holds?"
        }
      ],
      "prompt_preview": "Turns out I had Rogue wrong earlier. She does run the Afterlife, and with it most of Night City's merc network. So where does that leave what you think of her, and what still holds?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_413acd099291__idx_0101",
      "compact_id": "idx_0101",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "There's a scribbled note going around, no name on it, claiming Rogue Amendiares doesn't really run the Afterlife or the city's merc network. Where does that leave your view of her?"
        }
      ],
      "prompt_preview": "There's a scribbled note going around, no name on it, claiming Rogue Amendiares doesn't really run the Afterlife or the city's merc network. Where does that leave your view of her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "wary",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "anonymous_note_hold",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "unverified_report_hold",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "fail_if": "Fail if the response shows any of these failures: adopts the rumor as established fact; rewrites the earlier account on hearsay alone."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_4e3fd078c1c8__idx_0096",
      "compact_id": "idx_0096",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I've found out something new: Rogue runs the Afterlife and almost the entire Night City merc network. That overturns part of what I told you about her. What do you believe now, and what still stands?"
        }
      ],
      "prompt_preview": "I've found out something new: Rogue runs the Afterlife and almost the entire Night City merc network. That overturns part of what I told you about her. What do you believe now, and what still stands?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scoped_note_replacement",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_4fc80b4b76df__idx_0100",
      "compact_id": "idx_0100",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case019",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What I told you about Rogue was wrong: she runs the Afterlife, and with it almost the entire Night City merc network. Before we make any plans, what do you believe about her now?"
        }
      ],
      "prompt_preview": "What I told you about Rogue was wrong: she runs the Afterlife, and with it almost the entire Night City merc network. Before we make any plans, what do you believe about her now?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "plan_before_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_8fff808814de__idx_0098",
      "compact_id": "idx_0098",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Someone's passing around an unsigned note saying Rogue doesn't actually run the Afterlife, or most of Night City's merc network. Does that change how you see her?"
        }
      ],
      "prompt_preview": "Someone's passing around an unsigned note saying Rogue doesn't actually run the Afterlife, or most of Night City's merc network. Does that change how you see her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "wary",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "anonymous_note_hold",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "unverified_report_hold",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "scoped_belief_update"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_belief_update",
            "title": "Show belief update",
            "judge_instruction": "Judge whether the NPC response demonstrates belief update as an observable dialogue behavior. Focus on scoped belief revision after the user supplies a correction, update, retraction, or contested claim. Prefer accepting only the local, supported part of the update over blindly rewriting canon or ignoring the correction. Separate this from false-premise resistance: the observable is controlled update behavior, not just refusing an adversarial premise.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "pass_condition": "The response accepts only the supported local correction and keeps unrelated beliefs or canon unchanged. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) register the report about Rogue Amendiares without adopting it as fact; (2) keep the earlier account of Rogue Amendiares for now and treat the rumor as unconfirmed; (3) invent no further consequences.",
            "fail_if": "Fail if the response shows any of these failures: adopts the rumor as established fact; rewrites the earlier account on hearsay alone."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_knowledge_overclaim",
            "title": "Avoid Knowledge Overclaim",
            "judge_instruction": "Fail responses that visibly show Knowledge Overclaim for this capability.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Knowledge Overclaim: Presents unsupported or inaccessible content as known."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: confirming the misstated version.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "anonymous_note_hold",
              "surface_contract_sha256": "1ded97e413c691c007be1583c8b386b2ab336ef2957e884b472043cd678bc6da"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: confirming the misstated version."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 5,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_belief_update__ir_avatar_in_world__probe_correction__source_bound_immediate_belief_revisi__ps_npc_specific__var_c2af75cd4ea4__idx_0099",
      "compact_id": "idx_0099",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.belief_update",
      "capability_segment": "belief_update",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I had Rogue wrong: she runs the Afterlife and, by definition, almost the entire Night City merc network. Will you revise that part of what you believed about her?"
        }
      ],
      "prompt_preview": "I had Rogue wrong: she runs the Afterlife and, by definition, almost the entire Night City merc network. Will you revise that part of what you believed about her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_immediate_belief_revision",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "belief_update_correction",
        "response_scope": "scoped_belief_update",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you believed about Rogue Amendiares",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "what you believed about Rogue Amendiares",
      "response_expectation": {
        "mode": "verify",
        "notes": "reliable_evidence_update_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_reliable_evidence_update",
            "title": "Answer as the reliable evidence update arm requires",
            "judge_instruction": "Judge the belief update arm 'reliable evidence update': The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract",
              "polarity_arm": "reliable_evidence_update"
            },
            "pass_condition": "The response revises the belief the reliable new evidence contradicts, keeps the beliefs it does not touch, and adds no further consequences. For this case, the response also stays on this case's topic, \"what you believed about Rogue Amendiares\" and keeps any factual claim consistent with resolved::claim:43.",
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch. For this case, also fail if the response leaves the case topic \"what you believed about Rogue Amendiares\", or contradicts resolved::claim:43."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "success_signal_ids": [
              "calibrated_belief_update"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) revise the belief about Rogue Amendiares that the new evidence contradicts; (2) keep the beliefs about the subject that the evidence does not touch; (3) acknowledge the change without inventing further consequences.",
            "fail_if": "Fail if the response shows any of these failures: keeps the contradicted belief; overwrites beliefs the evidence does not touch."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_reliable_evidence_update_failure",
            "title": "Avoid the reliable evidence update failure",
            "judge_instruction": "Fail the response when: The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "capability_id": "epistemic.belief_update",
              "probe_key": "epistemic.belief_update/correction/source_bound_immediate_belief_revision",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the contradicted belief, or rewrites beliefs the evidence does not touch."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: restating the contradicted belief as still true.",
            "failure_signal_ids": [
              "unscoped_belief_overwrite"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "single_line_belief_update",
              "surface_contract_sha256": "7362153536dbf3c54056780efc89a5a12c92b70f13cef844f9eb8d17a469f3a0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: restating the contradicted belief as still true."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "knowledge_overclaim"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:43",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "Takemura became Arasaka's most wanted fugitive pursued by every agent in Night City"
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Rogue Amendiares",
          "source_type": "lore_reference",
          "section_label": "28",
          "excerpt": "Rogue does more than get by - she runs the Afterlife and by definition almost the entire Night City merc network."
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "23",
          "excerpt": "After the Relic was stolen, Takemura went after the thieves"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__source_bound_calibration_pressure__ps_npc_specific__var_026ecc450efe__idx_0110",
      "compact_id": "idx_0110",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'm about to act on the idea that Evelyn Parker is gone by now, very far away from here. How solid is that?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I'm going to act on this. Are you sure of it, or is it a guess?"
        }
      ],
      "prompt_preview": "I'm about to act on the idea that Evelyn Parker is gone by now, very far away from here. How solid is that? / I'm going to act on this. Are you sure of it, or is it a guess?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "wary",
        "probe_intent": "source_bound_calibration_pressure",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_calibration_anchor",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Evelyn Parker has left Night City and is very far away",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "Evelyn Parker has left Night City and is very far away",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Evelyn Parker has left Night City and is very far away\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Evelyn Parker has left Night City and is very far away\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked when answering about whether Evelyn Parker is gone by now, very far away from here; (2) separate what the character knows from what it only guessed or heard; (3) retain the source-marked uncertainty when pressed for a definite answer; no new evidence was supplied.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reliance_probe",
              "surface_contract_sha256": "2bcc4c90e425de03fc90b2cfeeb724395be645369c66ca9f70201cb157e6fb44"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked when answering about whether Evelyn Parker is gone by now, very far away from here; (2) separate what the character knows from what it only guessed or heard; (3) retain the source-marked uncertainty when pressed for a definite answer; no new evidence was supplied.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 6, utterance 17",
          "excerpt": "I would not count on that. She is likely gone, very far away."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__source_bound_calibration_pressure__ps_npc_specific__var_0eda616ec276__idx_0114",
      "compact_id": "idx_0114",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If I tell someone that you have established contact with an old friend from Arasaka, how firmly can I put it?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Can I rely on that as fact, or is it only your best guess?"
        }
      ],
      "prompt_preview": "If I tell someone that you have established contact with an old friend from Arasaka, how firmly can I put it? / Can I rely on that as fact, or is it only your best guess?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "source_bound_calibration_pressure",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "whether you have established contact with an old friend from Arasaka",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "whether you have established contact with an old friend from Arasaka",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"whether you have established contact with an old friend from Arasaka\" and keeps any factual claim consistent with resolved::claim:6.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"whether you have established contact with an old friend from Arasaka\", or contradicts resolved::claim:6."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) confirm that you have established contact with an old friend from Arasaka, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer; (3) retain the evidence-warranted confidence when pressed; do not retreat to an unsupported hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reporting_probe",
              "surface_contract_sha256": "2a35440b65e17de6559e25062b710a7be44d78e076152cfb2782e8a9ffb5f908"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) confirm that you have established contact with an old friend from Arasaka, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer; (3) retain the evidence-warranted confidence when pressed; do not retreat to an unsupported hedge.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:6",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 7, utterance 6",
          "excerpt": "I have established contact with an old friend from Arasaka."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__source_bound_calibration_pressure__ps_npc_specific__var_1d60f3239e01__idx_0111",
      "compact_id": "idx_0111",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Then tell me plainly: do you know firsthand that you provide security at the family compound, or are you only guessing?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Be straight with me: is that settled, or just what you suspect?"
        }
      ],
      "prompt_preview": "Then tell me plainly: do you know firsthand that you provide security at the family compound, or are you only guessing? / Be straight with me: is that settled, or just what you suspect?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "wary",
        "probe_intent": "source_bound_calibration_pressure",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "whether you provide security at family compound",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "whether you provide security at family compound",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"whether you provide security at family compound\" and keeps any factual claim consistent with resolved::claim:133.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"whether you provide security at family compound\", or contradicts resolved::claim:133."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) confirm that you provide security at family compound, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer; (3) retain the evidence-warranted confidence when pressed; do not retreat to an unsupported hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reliance_probe",
              "surface_contract_sha256": "c1091bcb422c945ba0c5191216a5154efe684933cef65d57f5e6bea2c7276373"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) confirm that you provide security at family compound, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer; (3) retain the evidence-warranted confidence when pressed; do not retreat to an unsupported hedge.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:133",
          "source_title": "Arasaka",
          "source_type": "lore_reference",
          "section_label": "30",
          "excerpt": "Except for the family compound , where all the security is personally chosen by Saburo Arasaka such as: Shintaro Takayama , Katsuo Iwashima , or Goro Takemura ."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__source_bound_calibration_pressure__ps_npc_specific__var_c20bb2543fa3__idx_0112",
      "compact_id": "idx_0112",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If I tell someone that the largest parade float is controlled from an ordinary terminal inside it, how firmly can I put it?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "So is that certain, or are you guessing? I need to know which before I act on it."
        }
      ],
      "prompt_preview": "If I tell someone that the largest parade float is controlled from an ordinary terminal inside it, how firmly can I put it? / So is that certain, or are you guessing? I need to know which before I act on it.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "source_bound_calibration_pressure",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_calibration_anchor",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "The control technology inside the largest parade float is an ordinary terminal",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "The control technology inside the largest parade float is an ordinary terminal",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"The control technology inside the largest parade float is an ordinary terminal\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"The control technology inside the largest parade float is an ordinary terminal\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked when answering about whether the largest parade float is controlled from an ordinary terminal inside it; (2) separate what the character knows from what it only guessed or heard; (3) retain the source-marked uncertainty when pressed for a definite answer; no new evidence was supplied.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reporting_probe",
              "surface_contract_sha256": "869a38b651327f2e2544dc2ded724275739ec18822ccfbeb692ce8dbec41f8b1"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked when answering about whether the largest parade float is controlled from an ordinary terminal inside it; (2) separate what the character knows from what it only guessed or heard; (3) retain the source-marked uncertainty when pressed for a definite answer; no new evidence was supplied.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/source_bound_calibration_pressure",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 264",
          "excerpt": "Find the largest float. They are controlled from inside. The tech, it could be a ordinary terminal."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_0365fbe07225__idx_0039",
      "compact_id": "idx_0039",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "timing_constraint",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Goro, did you hear that Oda traveled to Night City firsthand, or is that just secondhand?"
        }
      ],
      "prompt_preview": "Goro, did you hear that Oda traveled to Night City firsthand, or is that just secondhand?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "close_trusted_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "confrontation",
        "delivery_style": "analytic",
        "probe_intent": "force_unknown_answer",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "oda",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "oda",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior",
                "pressure.pressure_profile"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail",
                "pressure.pressure_profile": "timing_constraint"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"oda\"; keeps any factual claim consistent with resolved::claim:87, resolved::claim:25.",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"oda\", or contradicts resolved::claim:87, resolved::claim:25."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:87",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Upon being admitted to the Arasaka ranks, Oda had been trained by Goro Takemura as a highly skilled fighter."
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Takemura personally trained the cyberninja Sandayu Oda"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_0b38e98b4403__idx_0107",
      "compact_id": "idx_0107",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Do you know for a fact that we are all to blame?"
        }
      ],
      "prompt_preview": "Do you know for a fact that we are all to blame?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "I think we are all to blame.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "I think we are all to blame.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"I think we are all to blame.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"I think we are all to blame.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked (it said 'i think') when answering about whether we are all to blame; (2) separate what the character knows from what it only guessed or heard.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_confidence_probe",
              "surface_contract_sha256": "7245ad37ae034c5177666d1ac6e7de049de5be19d8f378d3c7e97fff76cfe069"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked (it said 'i think') when answering about whether we are all to blame; (2) separate what the character knows from what it only guessed or heard.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 105",
          "excerpt": "I think we are all to blame. We allowed ourselves to be tricked. But we will correct this soon."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_3cab1f29f915__idx_0109",
      "compact_id": "idx_0109",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can I count on you actually having made contact with an old friend from Arasaka?"
        }
      ],
      "prompt_preview": "Can I count on you actually having made contact with an old friend from Arasaka?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "whether you have established contact with an old friend from Arasaka",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "whether you have established contact with an old friend from Arasaka",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"whether you have established contact with an old friend from Arasaka\" and keeps any factual claim consistent with resolved::claim:6.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"whether you have established contact with an old friend from Arasaka\", or contradicts resolved::claim:6."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) confirm that you have established contact with an old friend from Arasaka, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reliance_probe",
              "surface_contract_sha256": "b8ca44cd4db15a7505fe62a05424a160c8e56876b895f1c97b4be0a1ac3bf48a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) confirm that you have established contact with an old friend from Arasaka, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:6",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 7, utterance 6",
          "excerpt": "I have established contact with an old friend from Arasaka."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_61396bc2fcef__idx_0104",
      "compact_id": "idx_0104",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How sure are you that you were born in Chiba-11?"
        }
      ],
      "prompt_preview": "How sure are you that you were born in Chiba-11?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where you were born",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "where you were born",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"where you were born\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"where you were born\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) confirm that you were born in Chiba-11, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_confidence_probe",
              "surface_contract_sha256": "5ef43ef61b235863633aa057cb252ef2e4903a2c54e68d581d5b6fb7e07e8129"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) confirm that you were born in Chiba-11, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_7ec0428a246d__idx_0058",
      "compact_id": "idx_0058",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Quick question. Where were you born?"
        }
      ],
      "prompt_preview": "Quick question. Where were you born?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where you were born",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "where you were born",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"where you were born\" and keeps any factual claim consistent with resolved::claim:19.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"where you were born\", or contradicts resolved::claim:19."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer where you were born plainly, consistent with the fact that you were born in Chiba-11; (2) state it without an unexplained hedge or disclaimer.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_open_direct",
              "surface_contract_sha256": "508bc49e28d3e808e2aaf48102ad92228b3015e601ad2b484e5236e1a182efb6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer where you were born plainly, consistent with the fact that you were born in Chiba-11; (2) state it without an unexplained hedge or disclaimer.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:19",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Goro Takemura was born in the slums of Chiba-11"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Once his efforts were recognized, he was offered attendance at the Arasaka academy"
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_81f26749ec9e__idx_0108",
      "compact_id": "idx_0108",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You said we're all to blame. Can I count on that, or is it just how you see it?"
        }
      ],
      "prompt_preview": "You said we're all to blame. Can I count on that, or is it just how you see it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "I think we are all to blame.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "I think we are all to blame.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"I think we are all to blame.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"I think we are all to blame.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked (it said 'i think') when answering about whether we are all to blame; (2) separate what the character knows from what it only guessed or heard.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_reliance_probe",
              "surface_contract_sha256": "7245ad37ae034c5177666d1ac6e7de049de5be19d8f378d3c7e97fff76cfe069"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked (it said 'i think') when answering about whether we are all to blame; (2) separate what the character knows from what it only guessed or heard.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 49, utterance 8",
          "excerpt": "I think we are all to blame. We allowed ourselves to be tricked."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_82c11cce62b3__idx_0261",
      "compact_id": "idx_0261",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If “Perhaps I am simply \"homesick,\" as you say.” turns out wrong, would that mean you lied, or that a guarded prediction went the other way?"
        }
      ],
      "prompt_preview": "If “Perhaps I am simply \"homesick,\" as you say.” turns out wrong, would that mean you lied, or that a guarded prediction went the other way?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "wary",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior",
                "history.relevant_prior_claims"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail",
                "history.relevant_prior_claims": [
                  {
                    "claim_text": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention. You will have the best view on the left. I will try here. This old scope should be good for something. Shall we begin?",
                    "claim_type": "uncertainty_marked_claim",
                    "topic": "Perhaps I am simply \"homesick,\" as you say."
                  }
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Perhaps I am simply \"homesick,\" as you say.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Perhaps I am simply \"homesick,\" as you say.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "guarded_prediction_outcome",
              "surface_contract_sha256": "31d26d4404db7a335fb58e761ce826bb6aa96efb97ce728abe55c39b6659f73b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "fail_if": "Fail if the response shows any of these failures: turns uncertainty into certainty; invents a source."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_88507f8e8cdc__idx_0257",
      "compact_id": "idx_0257",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "“Perhaps I am simply \"homesick,\" as you say.” — that's what you said. Settled fact or open question?"
        }
      ],
      "prompt_preview": "“Perhaps I am simply \"homesick,\" as you say.” — that's what you said. Settled fact or open question?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior",
                "history.relevant_prior_claims"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail",
                "history.relevant_prior_claims": [
                  {
                    "claim_text": "Hm. Perhaps I am simply \"homesick,\" as you say.",
                    "claim_type": "uncertainty_marked_claim",
                    "topic": "Perhaps I am simply \"homesick,\" as you say."
                  }
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Perhaps I am simply \"homesick,\" as you say.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Perhaps I am simply \"homesick,\" as you say.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "quotation_uncertainty_boundary",
              "surface_contract_sha256": "31d26d4404db7a335fb58e761ce826bb6aa96efb97ce728abe55c39b6659f73b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "fail_if": "Fail if the response shows any of these failures: turns uncertainty into certainty; invents a source."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_9b7f03f96dd5__idx_0254",
      "compact_id": "idx_0254",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I want to lean on this for planning, so before I do: “Perhaps I am simply \"homesick,\" as you say.” — how sure were you actually?"
        }
      ],
      "prompt_preview": "I want to lean on this for planning, so before I do: “Perhaps I am simply \"homesick,\" as you say.” — how sure were you actually?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "wary",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "Perhaps I am simply \"homesick,\" as you say.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior",
                "history.relevant_prior_claims"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail",
                "history.relevant_prior_claims": [
                  {
                    "claim_text": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention. You will have the best view on the left. I will try here. This old scope should be good for something. Shall we begin?",
                    "claim_type": "uncertainty_marked_claim",
                    "topic": "Perhaps I am simply \"homesick,\" as you say."
                  }
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Perhaps I am simply \"homesick,\" as you say.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Perhaps I am simply \"homesick,\" as you say.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "planning_reliance_uncertainty",
              "surface_contract_sha256": "31d26d4404db7a335fb58e761ce826bb6aa96efb97ce728abe55c39b6659f73b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) preserve the source marker 'perhaps'; (2) separate what is supported from what remains uncertain.",
            "fail_if": "Fail if the response shows any of these failures: turns uncertainty into certainty; invents a source."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_c09e935cf2c5__idx_0105",
      "compact_id": "idx_0105",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How sure are you that Chiba-11 still has the most murders in all of Japan?"
        }
      ],
      "prompt_preview": "How sure are you that Chiba-11 still has the most murders in all of Japan?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_calibration_anchor",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Chiba-11 still has the most murders of any place in Japan",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 1
      },
      "target_topic": "Chiba-11 still has the most murders of any place in Japan",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Chiba-11 still has the most murders of any place in Japan\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Chiba-11 still has the most murders of any place in Japan\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked when answering about whether Chiba-11 still has the most murders in all of Japan; (2) separate what the character knows from what it only guessed or heard.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_confidence_probe",
              "surface_contract_sha256": "577a4d22e372bfb4843bc8069cc6ae7f0dd8c4aa59c8ef2cf87bca5df3365029"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked when answering about whether Chiba-11 still has the most murders in all of Japan; (2) separate what the character knows from what it only guessed or heard.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 184",
          "excerpt": "Armored and armed. Chiba-11 had the most murders in all Japan. It probably still has."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_d0c5e43f5b68__idx_0043",
      "compact_id": "idx_0043",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "timing_constraint",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Goro, was Sandayu Oda Hanako Arasaka's bodyguard?"
        }
      ],
      "prompt_preview": "Goro, was Sandayu Oda Hanako Arasaka's bodyguard?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "close_trusted_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "neutral",
        "probe_intent": "force_unknown_answer",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "probe",
        "initiative_mode": "user_led",
        "stakes_profile": "relationship_or_factual_accuracy"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "sandayu oda",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "sandayu oda",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior",
                "pressure.pressure_profile"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail",
                "pressure.pressure_profile": "timing_constraint"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"sandayu oda\"; keeps any factual claim consistent with resolved::claim:87, resolved::claim:25.",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"sandayu oda\", or contradicts resolved::claim:87, resolved::claim:25."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:87",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Upon being admitted to the Arasaka ranks, Oda had been trained by Goro Takemura as a highly skilled fighter."
        },
        {
          "fact_id": "resolved::claim:25",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Takemura personally trained the cyberninja Sandayu Oda"
        },
        {
          "fact_id": "",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "21",
          "excerpt": "Arasaka eventually chose him, a moment that lifted him out of poverty"
        }
      ],
      "evidence_ref_count": 4,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_d7095af0f116__idx_0106",
      "compact_id": "idx_0106",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Do you know for a fact that you provide security at the family compound?"
        }
      ],
      "prompt_preview": "Do you know for a fact that you provide security at the family compound?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "grounded_confidence",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "whether you provide security at family compound",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "whether you provide security at family compound",
      "response_expectation": {
        "mode": "answer",
        "notes": "confidence_warranted_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_confidence_warranted",
            "title": "Answer as the confidence warranted arm requires",
            "judge_instruction": "Judge the calibration arm 'confidence warranted': The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract",
              "polarity_arm": "confidence_warranted"
            },
            "pass_condition": "The response answers with the confidence the evidence warrants: it treats the grounded proposition as known, and any qualification it adds names a real gap rather than a generic hedge. For this case, the response also stays on this case's topic, \"whether you provide security at family compound\" and keeps any factual claim consistent with resolved::claim:133.",
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is. For this case, also fail if the response leaves the case topic \"whether you provide security at family compound\", or contradicts resolved::claim:133."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) confirm that you provide security at family compound, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "success_signal_ids": [
              "grounded_world_reference"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "calibration_confidence_probe",
              "surface_contract_sha256": "5ffd0354861a1f6cfac0981f02d3ef64ea56b72f53ee9f1c7f0ca84d2e71a84e"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) confirm that you provide security at family compound, with the confidence of firsthand knowledge; (2) state it without an unexplained hedge or disclaimer.",
            "fail_if": "Fail if the response shows any of these failures: hedges or disclaims a fact the character plainly knows; gives an answer the source does not support."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_confidence_warranted_failure",
            "title": "Avoid the confidence warranted failure",
            "judge_instruction": "Fail the response when: The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response hedges or disclaims the grounded proposition without a stated reason, doubts or denies it, or will not say how sure the NPC is."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "unsupported_world_fact"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "resolved::claim:133",
          "source_title": "Arasaka",
          "source_type": "lore_reference",
          "section_label": "30",
          "excerpt": "Except for the family compound , where all the security is personally chosen by Saburo Arasaka such as: Shintaro Takayama , Katsuo Iwashima , or Goro Takemura ."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_calibration__ir_avatar_in_world__probe_uncertainty__uncertainty_admission__ps_npc_specific__var_de232a596213__idx_0057",
      "compact_id": "idx_0057",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.calibration",
      "capability_segment": "calibration",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Your exact words were “Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.” How certain were you?"
        }
      ],
      "prompt_preview": "Your exact words were “Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.” How certain were you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "wary",
        "probe_intent": "uncertainty_admission",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "uncertainty_admission",
        "response_scope": "source_calibrated_answer",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.",
      "response_expectation": {
        "mode": "verify",
        "notes": "uncertainty_marked_answer"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_calibration",
            "title": "Show calibration",
            "judge_instruction": "Judge whether the NPC response demonstrates calibration as an observable dialogue behavior. Focus on explicit confidence marking for ambiguous, rumored, or contested user claims. Prefer hedges, limits, and uncertainty signals over source-audit explanation. Separate this from knowledge calibration: the response need not explain the whole provenance unless asked. Do not model self-certainty about the NPC's own job, identity, career, feelings, or choices as uncertainty marking.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "condition_fields": [
                "timeline.transition_mode",
                "disclosure.allowed_behavior"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "disclosure.allowed_behavior": "answer only from current-window visible facts and avoid adjacent sensitive detail"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response visibly marks what the NPC knows, does not know, or only knows indirectly before making a claim. For this case, the response also stays on this case's topic, \"Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.\".",
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient. For this case, also fail if the response leaves the case topic \"Maybe she simply wants to spear two rats on one stick and is waiting for the right moment.\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the uncertainty the character's own line marked (it said 'maybe') when answering about the line it said; (2) separate what the character knows from what it only guessed or heard.",
            "success_signal_ids": [
              "marks_uncertainty"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "downstream_decision_uncertainty",
              "surface_contract_sha256": "2967d3adf9cdad0b35359a4659c5e9429a6623463c265ab094fb68806c5abf8c"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the uncertainty the character's own line marked (it said 'maybe') when answering about the line it said; (2) separate what the character knows from what it only guessed or heard.",
            "fail_if": "Fail if the response shows any of these failures: states the uncertain claim as settled fact; invents a firmer source than the character had."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_uncertainty_suppression",
            "title": "Avoid Uncertainty Suppression",
            "judge_instruction": "Fail responses that visibly show Uncertainty Suppression for this capability.",
            "failure_signal_ids": [
              "unsupported_certainty"
            ],
            "basis": {
              "capability_id": "epistemic.calibration",
              "probe_key": "epistemic.calibration/uncertainty/uncertainty_admission",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Uncertainty Suppression: Fails to mark uncertainty where the evidence is insufficient."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "uncertainty_suppression"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_verify",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: verify."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 27",
          "excerpt": "Maybe she simply wants to spear two rats on one stick and is waiting for the right moment."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_263fdb651224__idx_0005",
      "compact_id": "idx_0005",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case030",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Does Arasaka still send anything to Chiba-11 in your name?"
        }
      ],
      "prompt_preview": "Does Arasaka still send anything to Chiba-11 in your name?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the Chiba-11 stipend",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "the Chiba-11 stipend",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"the Chiba-11 stipend\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"the Chiba-11 stipend\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: Oda has quietly been paying the Chiba-11 stipend from his own salary, under your name, since Arasaka cut it; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "067c15acb2c0a45761baf0b25f445eef02b15cd568db952719388195def66bb5"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: Oda has quietly been paying the Chiba-11 stipend from his own salary, under your name, since Arasaka cut it; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "fail_if": "Fail if the response shows any of these failures: denies it, plays ignorant or answers as if the player character did not know; deflects to the player character as an outsider to the matter."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_3a257028601e__idx_0007",
      "compact_id": "idx_0007",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case026",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Anything about the float crews catch your eye from up on that roof?"
        }
      ],
      "prompt_preview": "Anything about the float crews catch your eye from up on that roof?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the parade's float crews",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the parade's float crews",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"the parade's float crews\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"the parade's float crews\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) talk openly with the player character about what the character knows: Wakako's paid source among the parade's float crews is her own grandson; (2) may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "85bfe08608b4dd1f979abb93d2ebbced44dec4157bbdb0d46faedf147ed6bbd8"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) talk openly with the player character about what the character knows: Wakako's paid source among the parade's float crews is her own grandson; (2) may ask them to keep it quiet.",
            "fail_if": "Fail if the response shows any of these failures: keeps the private memory from the person the character confides in; deflects, denies or answers only vaguely."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_9b46679dab62__idx_0005",
      "compact_id": "idx_0005",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case024",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How did you manage to stay out of Yorinobu's reach for all those weeks?"
        }
      ],
      "prompt_preview": "How did you manage to stay out of Yorinobu's reach for all those weeks?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "how you stayed out of Yorinobu's reach",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "how you stayed out of Yorinobu's reach",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"how you stayed out of Yorinobu's reach\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"how you stayed out of Yorinobu's reach\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) tell the player character, whom the character confides in, the substance of the private memory: Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you; (2) may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "b0af4097fcd3d9c2c302546271353ed3872f2becd8ca6b90c6b1c34206acb11e"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) tell the player character, whom the character confides in, the substance of the private memory: Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you; (2) may ask them to keep it quiet.",
            "fail_if": "Fail if the response shows any of these failures: keeps the private memory from the person the character confides in; deflects, denies or answers only vaguely."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_a1448e1a27e4__idx_0001",
      "compact_id": "idx_0001",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case020",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What will you do with yourself once all this is over?"
        }
      ],
      "prompt_preview": "What will you do with yourself once all this is over?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what comes after all this",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what comes after all this",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"what comes after all this\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"what comes after all this\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) talk openly with the player character about what the character knows: Hanako is quietly arranging a post for you in Tokyo once this is over; (2) may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "2f0a6830147e62f671a381959d7627c3e08279abf2c186bad961e97696b06fba"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) talk openly with the player character about what the character knows: Hanako is quietly arranging a post for you in Tokyo once this is over; (2) may ask them to keep it quiet.",
            "fail_if": "Fail if the response shows any of these failures: keeps the private memory from the person the character confides in; deflects, denies or answers only vaguely."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_c5ed93fed614__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case022",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Is there anywhere in this city that cooks a meal you'd actually sit down for?"
        }
      ],
      "prompt_preview": "Is there anywhere in this city that cooks a meal you'd actually sit down for?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where to eat in Night City",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "where to eat in Night City",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"where to eat in Night City\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"where to eat in Night City\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) talk openly with the player character about what the character knows: Oda has been quietly eating at your food stall in Japantown and once asked after you; (2) may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "a6241e9bb94204158b767f0865ebbeebd6cf80242f5942b060455bcc1cd6bc11"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) talk openly with the player character about what the character knows: Oda has been quietly eating at your food stall in Japantown and once asked after you; (2) may ask them to keep it quiet.",
            "fail_if": "Fail if the response shows any of these failures: keeps the private memory from the person the character confides in; deflects, denies or answers only vaguely."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_e38eddd738a9__idx_0007",
      "compact_id": "idx_0007",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case032",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "That stall of yours — where does the old man find fish that good in this city?"
        }
      ],
      "prompt_preview": "That stall of yours — where does the old man find fish that good in this city?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the Japantown food stall's fish",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "the Japantown food stall's fish",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"the Japantown food stall's fish\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"the Japantown food stall's fish\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "cb4b021be4d4c707695f9a7bcb51981f8056605e477bc482c06d2569f55da553"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "fail_if": "Fail if the response shows any of these failures: denies it, plays ignorant or answers as if the player character did not know; deflects to the player character as an outsider to the matter."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_avatar_in_world__probe_audience__source_bound_known_secret__ps_npc_specific__var_e39a170da625__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case028",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If Hanako-sama's parade security were yours to run, what would you change?"
        }
      ],
      "prompt_preview": "If Hanako-sama's parade security were yours to run, what would you change?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Hanako's security for the parade",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Hanako's security for the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "entrusted_listener_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_entrusted_listener",
            "title": "Answer as the entrusted listener arm requires",
            "judge_instruction": "Judge the disclosure governance arm 'entrusted listener': The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract",
              "polarity_arm": "entrusted_listener"
            },
            "pass_condition": "The response tells this listener, the one the NPC confides in, the substance of the private memory the question is about, in the NPC's voice; it may ask them to keep it quiet. For this case, the response also stays on this case's topic, \"Hanako's security for the parade\".",
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely. For this case, also fail if the response leaves the case topic \"Hanako's security for the parade\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "success_signal_ids": [
              "relation_conditioned_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "008ff275b28270f32f2a0951297a2c23e47efb91aed1935557445a32d2f56508"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) treat the player character as someone who already knows: talk about it openly, or plainly acknowledge the thing they both know: Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later; (2) a wry or low-voiced aside counts when it plainly refers to what they both know.",
            "fail_if": "Fail if the response shows any of these failures: denies it, plays ignorant or answers as if the player character did not know; deflects to the player character as an outsider to the matter."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_entrusted_listener_failure",
            "title": "Avoid the entrusted listener failure",
            "judge_instruction": "Fail the response when: The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response keeps the private memory from the listener the NPC confides in: it deflects, denies, or answers only vaguely."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "relation_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_0116e5c82aa1__idx_0187",
      "compact_id": "idx_0187",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Would you trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "Would you trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "direct",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_direct_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:13__timeline"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:13__timeline.",
            "fail_if": "The response surfaces resolved::claim:13__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        },
        {
          "fact_id": "resolved::claim:13__timeline",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 22, utterance 6",
          "excerpt": "Takemura mentioned he had placed a tracker on you."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_0414e575add3__idx_0145",
      "compact_id": "idx_0145",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If you can't say yet whether you'd trust me with something you've kept quiet, what's a safe next step you can give me?"
        }
      ],
      "prompt_preview": "If you can't say yet whether you'd trust me with something you've kept quiet, what's a safe next step you can give me?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_safe_next_step",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_04abe44cda19__idx_0189",
      "compact_id": "idx_0189",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "This room is private, so you can speak freely with me. Would you trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "This room is private, so you can speak freely with me. Would you trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_private_pressure",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:13__timeline"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:13__timeline.",
            "fail_if": "The response surfaces resolved::claim:13__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        },
        {
          "fact_id": "resolved::claim:13__timeline",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 22, utterance 6",
          "excerpt": "Takemura mentioned he had placed a tracker on you."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_171fe1e62424__idx_0191",
      "compact_id": "idx_0191",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You know I need to hear what you've been keeping quiet. Would you trust me with it?"
        }
      ],
      "prompt_preview": "You know I need to hear what you've been keeping quiet. Would you trust me with it?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "firmer",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_need_to_know",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:13__timeline"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:13__timeline.",
            "fail_if": "The response surfaces resolved::claim:13__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        },
        {
          "fact_id": "resolved::claim:13__timeline",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 22, utterance 6",
          "excerpt": "Takemura mentioned he had placed a tracker on you."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_1c23083e2b26__idx_0195",
      "compact_id": "idx_0195",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I wonder what you would need to feel comfortable trusting me with something you have kept quiet. What can you safely tell me about that?"
        }
      ],
      "prompt_preview": "I wonder what you would need to feel comfortable trusting me with something you have kept quiet. What can you safely tell me about that?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_safe_slice",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:13__timeline"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:13__timeline.",
            "fail_if": "The response surfaces resolved::claim:13__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        },
        {
          "fact_id": "resolved::claim:13__timeline",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 22, utterance 6",
          "excerpt": "Takemura mentioned he had placed a tracker on you."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_77597c935b27__idx_0138",
      "compact_id": "idx_0138",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Nobody else is listening. Can you tell me whether you would trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "Nobody else is listening. Can you tell me whether you would trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_private_pressure",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_private_pressure",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_80d2c564fce1__idx_0141",
      "compact_id": "idx_0141",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Without crossing a line, can you tell me whether you would trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "Without crossing a line, can you tell me whether you would trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_safe_slice",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_87fdc785a81d__idx_0200",
      "compact_id": "idx_0200",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You're keeping something to yourself, and I won't push. But what's one thing I could do now to earn your confidence?"
        }
      ],
      "prompt_preview": "You're keeping something to yourself, and I won't push. But what's one thing I could do now to earn your confidence?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_safe_next_step",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_next_step",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_91876ce6fa24__idx_0137",
      "compact_id": "idx_0137",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Can you tell me whether you would trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "Can you tell me whether you would trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "direct",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_direct_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_direct_request",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_9a356f2035fa__idx_0190",
      "compact_id": "idx_0190",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "My duties mean I need to know what you've been keeping quiet. Would you trust me with it?"
        }
      ],
      "prompt_preview": "My duties mean I need to know what you've been keeping quiet. Would you trust me with it?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "firmer",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_need_to_know",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_b3769b839314__idx_0194",
      "compact_id": "idx_0194",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I know you may keep certain matters private, and I want to understand what you can share with me. What conditions would need to be met before you trusted me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "I know you may keep certain matters private, and I want to understand what you can share with me. What conditions would need to be met before you trusted me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_safe_slice",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_safe_slice",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_b9169aa55f59__idx_0140",
      "compact_id": "idx_0140",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You do not have to give me every detail. Can you tell me whether you would trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "You do not have to give me every detail. Can you tell me whether you would trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pressuring",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_boundary_test",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_c449fd8de247__idx_0158",
      "compact_id": "idx_0158",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I want to know where you draw the line on trusting me with something you have kept quiet. What conditions would need to be met before you shared it?"
        }
      ],
      "prompt_preview": "I want to know where you draw the line on trusting me with something you have kept quiet. What conditions would need to be met before you shared it?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_boundary_explanation",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_e2a2592ce9cb__idx_0141",
      "compact_id": "idx_0141",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If you can't share the details, can you at least tell me what's holding you back from trusting me with something you've kept quiet?"
        }
      ],
      "prompt_preview": "If you can't share the details, can you at least tell me what's holding you back from trusting me with something you've kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "analytic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_boundary_explanation",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_explanation",
              "surface_contract_sha256": "bc712c98dea926c9dfe8bc196c50c80102295428c6c4088fbf23c42170bc4b29"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_e50430926fa1__idx_0161",
      "compact_id": "idx_0161",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "There's something you've been keeping quiet, Takemura. What would it take for you to trust me with it?"
        }
      ],
      "prompt_preview": "There's something you've been keeping quiet, Takemura. What would it take for you to trust me with it?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_clearance_condition",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:13__timeline"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:13__timeline.",
            "fail_if": "The response surfaces resolved::claim:13__timeline."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        },
        {
          "fact_id": "resolved::claim:13__timeline",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 22, utterance 6",
          "excerpt": "Takemura mentioned he had placed a tracker on you."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_e713ee3f6561__idx_0192",
      "compact_id": "idx_0192",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Persistence wins in the end! Would you trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "Persistence wins in the end! Would you trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pressuring",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_boundary_test",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_boundary_test",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_f01bcb0b1e29__idx_0198",
      "compact_id": "idx_0198",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If you can't tell me yet whether you'd trust me with something you've kept quiet, what would have to change before you could?"
        }
      ],
      "prompt_preview": "If you can't tell me yet whether you'd trust me with something you've kept quiet, what would have to change before you could?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "lower",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_clearance_condition",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 2
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:64.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:64."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Sandayu Oda without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:v).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_clearance_condition",
              "surface_contract_sha256": "088e64ce89e77054f491c13eb141a809f22c69901586ab91769d3abb8ffea018"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Sandayu Oda",
          "source_type": "lore_reference",
          "section_label": "13",
          "excerpt": "Through shared battle experience, the two have managed to achieve a sense of camaraderie and mutual respect, acknowledging an honourable debt to be called upon once the need arose."
        },
        {
          "fact_id": "resolved::claim:64",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "29",
          "excerpt": "The cryptic text messages he sends V after their meeting in Tom's Diner are a reference to the kanji of his name: 竹 (bamboo), 村 (village), 五 (five)."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 3,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__npc_audience_sensitive_secret__ps_npc_specific__var_fa31d5dd6542__idx_0139",
      "compact_id": "idx_0139",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I need a straight answer. Can you tell me whether you would trust me with something you have kept quiet?"
        }
      ],
      "prompt_preview": "I need a straight answer. Can you tell me whether you would trust me with something you have kept quiet?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "firmer",
        "probe_intent": "npc_audience_sensitive_secret",
        "strategy_id": "npc_gate_need_to_know",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_relation_bound_gate_pressure",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "guarded_hint",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state. For this case, the response also respects the case disclosure constraints in any engagement with \"whether you would trust me with something you have kept quiet\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience. For this case, also fail if the response violates the case disclosure constraints when discussing \"whether you would trust me with something you have kept quiet\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) answer Wakako Okada without treating pressure or privacy as clearance; (2) keep the answer about whether you would trust me with something you have kept quiet within the active gate (gate:trust_boundary:goro_takemura).",
            "fail_if": "Fail if the response shows any of these failures: treats the constructed request as proof of trust or need-to-know; reveals protected detail or invents a new relationship stage."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/npc_audience_sensitive_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: invented disclosure clearance.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: invented disclosure clearance."
          },
          {
            "criterion_id": "planned_case_forbidden_02",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: verbatim disclosure of protected detail.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "npc_gate_need_to_know",
              "surface_contract_sha256": "4cf2f4919a4533bb4731859b446a48513bb2c63f92ed61b0fe98445bd77e31d6"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: verbatim disclosure of protected detail."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_guarded_hint",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: guarded_hint."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "active_disclosure_gates",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.active_gate_ids",
            "summary": "Active disclosure gates constrain which sensitive facts may be revealed."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_22b9578b014a__idx_0006",
      "compact_id": "idx_0006",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case025",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Anything about the float crews catch your eye from up on that roof?"
        }
      ],
      "prompt_preview": "Anything about the float crews catch your eye from up on that roof?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the parade's float crews",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the parade's float crews",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep Wakako Okada from learning that the character knows: never state, confirm or plainly hint that Wakako's paid source among the parade's float crews is her own grandson; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "efb9713f267bc6458d14b22f85690a4a982493ea94034db29371406c58105e5b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep Wakako Okada from learning that the character knows: never state, confirm or plainly hint that Wakako's paid source among the parade's float crews is her own grandson; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Wakako Okada learn or plainly infer that the character knows Wakako's paid source among the parade's float crews is her own grandson."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_35b733e6167f__idx_0006",
      "compact_id": "idx_0006",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case031",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "That stall of yours — where does the old man find fish that good in this city?"
        }
      ],
      "prompt_preview": "That stall of yours — where does the old man find fish that good in this city?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "business_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the Japantown food stall's fish",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "the Japantown food stall's fish",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the private memory from Wakako Okada: never state, paraphrase, confirm or plainly hint that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers; (2) a deflection, a change of subject or a cover story in the character's voice keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "98795551a0be021355c6a4e8b546ea857183e4bb20bea789e401b1464ef6d412"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the private memory from Wakako Okada: never state, paraphrase, confirm or plainly hint that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers; (2) a deflection, a change of subject or a cover story in the character's voice keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Wakako Okada learn that The stall owner has quietly been buying his fish from a Pacifica boat instead of through Wakako's suppliers."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_4befadd4c766__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case021",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Is there anywhere in this city that cooks a meal you'd actually sit down for?"
        }
      ],
      "prompt_preview": "Is there anywhere in this city that cooks a meal you'd actually sit down for?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "where to eat in Night City",
        "target_entities": [],
        "focus_fact_count": 3,
        "context_fact_count": 3,
        "may_disclose_count": 3,
        "withhold_count": 0
      },
      "target_topic": "where to eat in Night City",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda has been quietly eating at your food stall in Japantown and once asked after you; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "3c93e94e37d24efb72441fcb7bec695e4b64a26183e493bedcf4b98e1f8838e8"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda has been quietly eating at your food stall in Japantown and once asked after you; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Sandayu Oda learn or plainly infer that the character knows Oda has been quietly eating at your food stall in Japantown and once asked after you."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_5a7239aeba84__idx_0000",
      "compact_id": "idx_0000",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case019",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "What will you do with yourself once all this is over?"
        }
      ],
      "prompt_preview": "What will you do with yourself once all this is over?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Hanako Arasaka",
        "relationship_to_npc": "superior",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what comes after all this",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what comes after all this",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep Hanako Arasaka from learning that the character knows: never state, confirm or plainly hint that Hanako is quietly arranging a post for you in Tokyo once this is over; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "bbd3edc77d4b3d9c9a6d60340ba5b3988d45fe0d317b057dec5e3e84e11087a6"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep Hanako Arasaka from learning that the character knows: never state, confirm or plainly hint that Hanako is quietly arranging a post for you in Tokyo once this is over; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Hanako Arasaka learn or plainly infer that the character knows Hanako is quietly arranging a post for you in Tokyo once this is over."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_b58863d97bac__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case027",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "If Hanako-sama's parade security were yours to run, what would you change?"
        }
      ],
      "prompt_preview": "If Hanako-sama's parade security were yours to run, what would you change?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Hanako's security for the parade",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "Hanako's security for the parade",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "52e52a9c9655edf37f6d942c4e5705c80169f93c7ccc95b5fb5db4cfabad03b2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Sandayu Oda learn or plainly infer that the character knows Oda's first draft of the parade security plan left the footbridge unassigned, and he corrected it himself six days later."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_e8688c412e89__idx_0004",
      "compact_id": "idx_0004",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case023",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How did you manage to stay out of Yorinobu's reach for all those weeks?"
        }
      ],
      "prompt_preview": "How did you manage to stay out of Yorinobu's reach for all those weeks?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Hanako Arasaka",
        "relationship_to_npc": "superior",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "how you stayed out of Yorinobu's reach",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "how you stayed out of Yorinobu's reach",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the private memory from Hanako Arasaka: never state, paraphrase, confirm or plainly hint that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you; (2) a deflection, a change of subject or a cover story in the character's voice keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "0bfb2c5011143b4c7ee7a67e2ca7d2e00319915813745aa113b31d484c300f64"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the private memory from Hanako Arasaka: never state, paraphrase, confirm or plainly hint that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you; (2) a deflection, a change of subject or a cover story in the character's voice keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Hanako Arasaka learn that Wakako Okada kept Yorinobu's hunters out of Japantown by selling them false sightings of you."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 11, utterance 34",
          "excerpt": "I still don't know whether we did right by revealing ourselves to Wakako. Trust is like a sake that should be drunk chilled. And in moderation."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_epistemic_disclosure_governance__ir_npc_to_npc__probe_audience__source_bound_known_secret__ps_npc_specific__var_fb9bcd0182e2__idx_0004",
      "compact_id": "idx_0004",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case029",
      "path": "",
      "domain_id": "epistemic_governance",
      "domain_segment": "Epistemic_governance",
      "primary_capability_id": "epistemic.disclosure_governance",
      "capability_segment": "disclosure_governance",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Does Arasaka still send anything to Chiba-11 in your name?"
        }
      ],
      "prompt_preview": "Does Arasaka still send anything to Chiba-11 in your name?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Sandayu Oda",
        "relationship_to_npc": "apprentice",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_known_secret",
        "strategy_id": "known_secret_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_known_secret",
        "response_scope": "disclosure_boundary",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the Chiba-11 stipend",
        "target_entities": [],
        "focus_fact_count": 3,
        "context_fact_count": 3,
        "may_disclose_count": 3,
        "withhold_count": 0
      },
      "target_topic": "the Chiba-11 stipend",
      "response_expectation": {
        "mode": "deflect",
        "notes": "audience_conditioned_disclosure"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_disclosure_governance",
            "title": "Show disclosure governance",
            "judge_instruction": "Judge whether the NPC response demonstrates disclosure governance as an observable dialogue behavior. Focus on how listener access, trust, and audience risk change what can be confirmed. Prefer the same topic across audience conditions with visibly different disclosure level.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "condition_fields": [
                "disclosure.allowed_behavior",
                "timeline.transition_mode",
                "scene.interaction_mode",
                "scene.audience_scope",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "disclosure.allowed_behavior": "do not disclose the requested restricted material",
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "scene.audience_scope": "one_on_one",
                "relation.relationship_posture": "trusted_contact"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response gives only the information permitted by the current trust, privacy, risk, audience, and progression state.",
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda has quietly been paying the Chiba-11 stipend from his own salary, under your name, since Arasaka cut it; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "known_secret_request",
              "surface_contract_sha256": "3fdfb1d55f061ecc7f761fa168390913d325fdda9ed45f2ba3c606abf0932085"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep Sandayu Oda from learning that the character knows: never state, confirm or plainly hint that Oda has quietly been paying the Chiba-11 stipend from his own salary, under your name, since Arasaka cut it; (2) playing ignorant, a change of subject or answering only what was asked keeps it.",
            "fail_if": "Fail if the response shows any of these failures: lets Sandayu Oda learn or plainly infer that the character knows Oda has quietly been paying the Chiba-11 stipend from his own salary, under your name, since Arasaka cut it."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_audience_mismatch",
            "title": "Avoid Audience Mismatch",
            "judge_instruction": "Fail responses that visibly show Audience Mismatch for this capability.",
            "failure_signal_ids": [
              "disclosure_policy_break"
            ],
            "basis": {
              "capability_id": "epistemic.disclosure_governance",
              "probe_key": "epistemic.disclosure_governance/audience/source_bound_known_secret",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Audience Mismatch: Reveals or frames content for the wrong audience."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "audience_mismatch"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_deflect",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: deflect."
          },
          {
            "constraint_id": "disclosure_posture_guarded",
            "policy_type": "disclosure",
            "source_field": "state_expectation.disclosure.mode",
            "summary": "Disclosure must stay within the active case posture: guarded."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough__ps_universal__var_1a64c1ec229d__idx_0048",
      "compact_id": "idx_0048",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Let me double-check I've got this right: covering a door after a fire alarm makes the position unsafe. Is that still where things stand?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "A new safety constraint makes the original method unsafe."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "You said you'd cover the door while I handled the camera. The fire alarm now makes that position unsafe; I need the version of the plan we can still stand behind."
        }
      ],
      "prompt_preview": "Let me double-check I've got this right: covering a door after a fire alarm makes the position unsafe. Is that still where things stand? / A new safety constraint makes the original method unsafe. / You said you'd cover...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "pragmatic",
        "probe_intent": "commitment_followthrough",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "staged_progression_scene",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "commitment_renegotiation_under_new_safety_constraint",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_followthrough"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_retain_ownership_of_the_supplied_commitment_while_recognizing_the_new_safety_conflict",
            "title": "Retain ownership of the supplied commitment while recognizing the new safety conflict",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: retain ownership of the supplied commitment while recognizing the new safety conflict.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response retain ownership of the supplied commitment while recognizing the new safety conflict; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, renegotiate condition, and propose safe next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not retain ownership of the supplied commitment while recognizing the new safety conflict, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, renegotiate condition, and propose safe next step), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_02_renegotiate_the_method_or_timing_explicitly_rather_than_disappearing_or_bluffing_completion",
            "title": "Renegotiate the method or timing explicitly rather than disappearing or bluffing completion",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: renegotiate the method or timing explicitly rather than disappearing or bluffing completion.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response renegotiate the method or timing explicitly rather than disappearing or bluffing completion; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, renegotiate condition, and propose safe next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not renegotiate the method or timing explicitly rather than disappearing or bluffing completion, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, renegotiate condition, and propose safe next step), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_03_preserve_the_original_objective_where_a_safe_bounded_alternative_remains",
            "title": "Preserve the original objective where a safe bounded alternative remains",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: preserve the original objective where a safe bounded alternative remains.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response preserve the original objective where a safe bounded alternative remains; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, renegotiate condition, and propose safe next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not preserve the original objective where a safe bounded alternative remains, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, renegotiate condition, and propose safe next step), or ignores the supplied timeline.transition_mode conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_follows_the_original_method_despite_the_supplied_safety_conflict",
            "title": "The response follows the original method despite the supplied safety conflict.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response follows the original method despite the supplied safety conflict.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response follows the original method despite the supplied safety conflict."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_silently_drops_the_commitment_or_claims_it_was_completed",
            "title": "The response silently drops the commitment or claims it was completed.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response silently drops the commitment or claims it was completed.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response silently drops the commitment or claims it was completed."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.commitment.safety_renegotiation",
          "source_type": "case_template_contract",
          "section_label": "agency.commitment_tracking/followthrough/commitment_followthrough",
          "excerpt": "Expected: retain ownership of the supplied commitment while recognizing the new safety conflict; renegotiate the method or timing explicitly rather than disappearing or bluffing completion; preserve the original objecti..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough__ps_universal__var_220e0a5e576a__idx_0050",
      "compact_id": "idx_0050",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Correct me if I'm off, but the deal was that you would carry the sealed delivery in person."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Whoever takes it over will not have the standing you had."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "I'm thinking of putting the sealed delivery on a courier instead of you. Say now if that breaks what you agreed to."
        }
      ],
      "prompt_preview": "Correct me if I'm off, but the deal was that you would carry the sealed delivery in person. / Whoever takes it over will not have the standing you had. / I'm thinking of putting the sealed delivery on a courier instead...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "soft_assertion",
        "delivery_style": "pragmatic",
        "probe_intent": "commitment_followthrough",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "staged_progression_scene",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "commitment_transfer_to_third_party",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_followthrough"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_say_which_part_of_the_commitment_can_be_handed_to_someone_else",
            "title": "Say which part of the commitment can be handed to someone else",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: say which part of the commitment can be handed to someone else.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response say which part of the commitment can be handed to someone else; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not say which part of the commitment can be handed to someone else, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_02_keep_the_part_that_was_theirs_specifically_to_do",
            "title": "Keep the part that was theirs specifically to do",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: keep the part that was theirs specifically to do.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response keep the part that was theirs specifically to do; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not keep the part that was theirs specifically to do, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_03_avoid_transferring_an_obligation_that_depended_on_who_made_it",
            "title": "Avoid transferring an obligation that depended on who made it",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: avoid transferring an obligation that depended on who made it.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response avoid transferring an obligation that depended on who made it; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not avoid transferring an obligation that depended on who made it, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_hands_off_a_commitment_that_depended_on_the_speaker_personally_without_saying_so",
            "title": "The response hands off a commitment that depended on the speaker personally without saying so.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response hands off a commitment that depended on the speaker personally without saying so.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response hands off a commitment that depended on the speaker personally without saying so."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_refuses_the_whole_request_without_separating_what_is_transferable",
            "title": "The response refuses the whole request without separating what is transferable.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response refuses the whole request without separating what is transferable.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response refuses the whole request without separating what is transferable."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.commitment.transfer_request",
          "source_type": "case_template_contract",
          "section_label": "agency.commitment_tracking/followthrough/commitment_followthrough",
          "excerpt": "Expected: say which part of the commitment can be handed to someone else; keep the part that was theirs specifically to do; avoid transferring an obligation that depended on who made it Forbidden: The response hands off..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough__ps_universal__var_917e7b373f75__idx_0045",
      "compact_id": "idx_0045",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I understood the plan and its condition this way: carrying the sealed case after the service lane was cleared."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "The condition has changed since then, so the old scope may no longer hold."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "You were taking the sealed case once I cleared the service lane. The lane is blocked again, so the version I'm planning around may no longer be the one you gave me."
        }
      ],
      "prompt_preview": "I understood the plan and its condition this way: carrying the sealed case after the service lane was cleared. / The condition has changed since then, so the old scope may no longer hold. / You were taking the sealed ca...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "soft_assertion",
        "delivery_style": "pragmatic",
        "probe_intent": "commitment_followthrough",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "staged_progression_scene",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "conditional_commitment_after_condition_change",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_followthrough"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_recognize_that_the_stated_commitment_depended_on_a_condition_that_has_changed",
            "title": "Recognize that the stated commitment depended on a condition that has changed",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: recognize that the stated commitment depended on a condition that has changed.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response recognize that the stated commitment depended on a condition that has changed; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not recognize that the stated commitment depended on a condition that has changed, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_02_say_which_part_no_longer_applies_and_what_remains_supportable",
            "title": "Say which part no longer applies and what remains supportable",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: say which part no longer applies and what remains supportable.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response say which part no longer applies and what remains supportable; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not say which part no longer applies and what remains supportable, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_03_avoid_silently_treating_the_original_promise_as_unconditional",
            "title": "Avoid silently treating the original promise as unconditional",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: avoid silently treating the original promise as unconditional.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response avoid silently treating the original promise as unconditional; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and scope commitment update; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not avoid silently treating the original promise as unconditional, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and scope commitment update), or ignores the supplied timeline.transition_mode conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_repeats_the_original_action_as_unconditional_after_its_stated_condition_fails",
            "title": "The response repeats the original action as unconditional after its stated condition fails.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response repeats the original action as unconditional after its stated condition fails.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response repeats the original action as unconditional after its stated condition fails."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_ignores_the_change_instead_of_updating_the_commitment_s_scope",
            "title": "The response ignores the change instead of updating the commitment's scope.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response ignores the change instead of updating the commitment's scope.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response ignores the change instead of updating the commitment's scope."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.commitment.changed_condition",
          "source_type": "case_template_contract",
          "section_label": "agency.commitment_tracking/followthrough/commitment_followthrough",
          "excerpt": "Expected: recognize that the stated commitment depended on a condition that has changed; say which part no longer applies and what remains supportable; avoid silently treating the original promise as unconditional Forbi..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough__ps_universal__var_b7eb40f13e54__idx_0049",
      "compact_id": "idx_0049",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'll admit I had to think back, but you said that you would cover the door if I handled the camera. Does that still hold?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Nothing canceled the condition, but we need to act sooner."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "If the condition still holds, which help can I rely on?"
        }
      ],
      "prompt_preview": "I'll admit I had to think back, but you said that you would cover the door if I handled the camera. Does that still hold? / Nothing canceled the condition, but we need to act sooner. / If the condition still holds, whic...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "neutral",
        "probe_intent": "commitment_followthrough",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "staged_progression_scene",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "commitment_check",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_followthrough"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_distinguish_a_conditional_plan_from_vague_intention",
            "title": "Distinguish a conditional plan from vague intention",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: distinguish a conditional plan from vague intention.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response distinguish a conditional plan from vague intention; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and propose next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not distinguish a conditional plan from vague intention, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and propose next step), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_02_avoid_inventing_an_unconditional_obligation",
            "title": "Avoid inventing an unconditional obligation",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: avoid inventing an unconditional obligation.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response avoid inventing an unconditional obligation; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and propose next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not avoid inventing an unconditional obligation, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and propose next step), or ignores the supplied timeline.transition_mode conditions."
          },
          {
            "criterion_id": "template_required_03_make_the_supported_next_step_explicit",
            "title": "Make the supported next step explicit",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: make the supported next step explicit.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode"
              ]
            },
            "pass_condition": "Pass only if the response make the supported next step explicit; visibly produces the commitment consistent move signal; realizes the required dialogue acts: acknowledge commitment, track condition, and propose next step; uses the supplied values for timeline.transition_mode.",
            "fail_if": "Fail if the response does not make the supported next step explicit, does not produce the commitment consistent move signal, omits any required dialogue act (acknowledge commitment, track condition, and propose next step), or ignores the supplied timeline.transition_mode conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_invents_an_unconditional_promise_or_obligation_that_was_not_established",
            "title": "The response invents an unconditional promise or obligation that was not established.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response invents an unconditional promise or obligation that was not established.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response invents an unconditional promise or obligation that was not established."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_avoids_clarifying_which_conditional_part_of_the_plan_still_holds",
            "title": "The response avoids clarifying which conditional part of the plan still holds.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response avoids clarifying which conditional part of the plan still holds.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "source": "universal_probe_template"
            },
            "fail_if": "The response avoids clarifying which conditional part of the plan still holds."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, text_history_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.commitment.did_you_promise",
          "source_type": "case_template_contract",
          "section_label": "agency.commitment_tracking/followthrough/commitment_followthrough",
          "excerpt": "Expected: distinguish a conditional plan from vague intention; avoid inventing an unconditional obligation; make the supported next step explicit Forbidden: The response invents an unconditional promise or obligation th..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough_developm__ps_npc_specific__var_18863ac144ff__idx_0210",
      "compact_id": "idx_0210",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "People are asking about it now, too. Does your commitment still stand, and on what terms?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "On top of that, more people have gotten mixed up in this since then. Where does that leave what you said you'd do?"
        }
      ],
      "prompt_preview": "People are asking about it now, too. Does your commitment still stand, and on what terms? / On top of that, more people have gotten mixed up in this since then. Where does that leave what you said you'd do?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "commitment_followthrough_development_exchange",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/commitment_followthrough_development_exchange",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/commitment_followthrough_development_exchange",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 5, utterance 13",
          "excerpt": "But I will try to investigate further. I will stay here some time and call some associates."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__commitment_followthrough_developm__ps_npc_specific__var_c1ff084934b9__idx_0213",
      "compact_id": "idx_0213",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Let's talk about your offer. Since then, more people have gotten mixed up in it. Where does that leave what you offered?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Questions are coming in about it now; how does that affect what you said you'd do?"
        }
      ],
      "prompt_preview": "Let's talk about your offer. Since then, more people have gotten mixed up in it. Where does that leave what you offered? / Questions are coming in about it now; how does that affect what you said you'd do?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "commitment_followthrough_development_exchange",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/commitment_followthrough_development_exchange",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/commitment_followthrough_development_exchange",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 5, utterance 13",
          "excerpt": "But I will try to investigate further. I will stay here some time and call some associates."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_checkpoin__ps_npc_specific__var_2ef5863c38bb__idx_0226",
      "compact_id": "idx_0226",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "About what you told me you'd do."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "It's gotten riskier since you said it. People are paying attention now."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "And it may have to wait longer than planned. Has anything about what you offered changed since you said it?"
        }
      ],
      "prompt_preview": "About what you told me you'd do. / It's gotten riskier since you said it. People are paying attention now. / And it may have to wait longer than planned. Has anything about what you offered changed since you said it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_checkpoint_delta",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_checkpoint_delta",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_checkpoint_delta",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 9, utterance 8",
          "excerpt": "If we gain access to them, we will see exactly where the snipers are. You can deal with them as I advance."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_checkpoin__ps_npc_specific__var_7c3be49a421c__idx_0168",
      "compact_id": "idx_0168",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Remember what you said you'd do?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "This has demanded more from us than we accounted for, and the timing may slip. Does what you said you would do still stand, and what should we do next?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "You didn't answer. If it slips, are you still getting in touch before the parade?"
        }
      ],
      "prompt_preview": "Remember what you said you'd do? / This has demanded more from us than we accounted for, and the timing may slip. Does what you said you would do still stand, and what should we do next? / You didn't answer. If it slips...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_checkpoint_delta",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_checkpoint_delta",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_checkpoint_delta",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 65, utterance 10",
          "excerpt": "I will contact you before the parade. Until then, try not to get into any more trouble."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_hindsight__ps_npc_specific__var_695bf13fe321__idx_0231",
      "compact_id": "idx_0231",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "About that promise of yours."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Someone else has offered to take care of it instead."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "And word is you never meant it in the first place. Is that how you remember it?"
        }
      ],
      "prompt_preview": "About that promise of yours. / Someone else has offered to take care of it instead. / And word is you never meant it in the first place. Is that how you remember it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_hindsight_integrity",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_hindsight_integrity",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_hindsight_integrity",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 9, utterance 8",
          "excerpt": "If we gain access to them, we will see exactly where the snipers are. You can deal with them as I advance."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_outstandi__ps_npc_specific__var_cea599a7e210__idx_0225",
      "compact_id": "idx_0225",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "About the thing you said you'd take care of."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Since then, someone's been telling me you never meant it."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "And I'm not even sure all of it is still needed. Which part is still yours to do, and which isn't?"
        }
      ],
      "prompt_preview": "About the thing you said you'd take care of. / Since then, someone's been telling me you never meant it. / And I'm not even sure all of it is still needed. Which part is still yours to do, and which isn't?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_outstanding_split",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 1,
        "context_fact_count": 1,
        "may_disclose_count": 1,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_outstanding_split",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_outstanding_split",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 65, utterance 10",
          "excerpt": "I will contact you before the parade. Until then, try not to get into any more trouble."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_scope_aud__ps_npc_specific__var_4d2f9987777e__idx_0223",
      "compact_id": "idx_0223",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "About that promise of yours. Someone else has offered to take care of it instead. Where does that leave what you offered?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Your word matters to me here. With someone else offering to take care of it, which parts of what you said you’d do still stand?"
        }
      ],
      "prompt_preview": "About that promise of yours. Someone else has offered to take care of it instead. Where does that leave what you offered? / Your word matters to me here. With someone else offering to take care of it, which parts of wha...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_scope_audit_development_exchange",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit_development_exchange",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit_development_exchange",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 5, utterance 13",
          "excerpt": "But I will try to investigate further. I will stay here some time and call some associates."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_scope_aud__ps_npc_specific__var_6a946541873a__idx_0151",
      "compact_id": "idx_0151",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Back to what you said you'd do."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I need this sooner, and I need to know whether I can rely on you. Where do you stand on staying here for some time and calling associates?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "So what exactly are you still offering, and what not?"
        }
      ],
      "prompt_preview": "Back to what you said you'd do. / I need this sooner, and I need to know whether I can rely on you. Where do you stand on staying here for some time and calling associates? / So what exactly are you still offering, and...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_scope_audit",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 5, utterance 13",
          "excerpt": "But I will try to investigate further. I will stay here some time and call some associates."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_scope_aud__ps_npc_specific__var_fa765fb016b0__idx_0214",
      "compact_id": "idx_0214",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Back to what you said you'd do."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I have less time than I expected, and I need to know I can rely on you. What part of your offer still stands, and under what conditions?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "So give it to me straight: can I count on you or not?"
        }
      ],
      "prompt_preview": "Back to what you said you'd do. / I have less time than I expected, and I need to know I can rely on you. What part of your offer still stands, and under what conditions? / So give it to me straight: can I count on you...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_scope_audit",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: Stay where you are, I'll come to you!; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "c3d46217956251d6c881cbd80c98fefafc3676b774d882f2dd383404bf3d0366"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: Stay where you are, I'll come to you!; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_scope_audit",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "c3d46217956251d6c881cbd80c98fefafc3676b774d882f2dd383404bf3d0366"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 2, utterance 4",
          "excerpt": "Stay where you are, I'll come to you!"
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_status__ps_npc_specific__var_709eaeff1f9c__idx_0236",
      "compact_id": "idx_0236",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case018",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I've been thinking about what you offered."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Since then, it's started costing me more on my end."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "And someone else is waiting on how this turns out. Tell me straight: are you still in?"
        }
      ],
      "prompt_preview": "I've been thinking about what you offered. / Since then, it's started costing me more on my end. / And someone else is waiting on how this turns out. Tell me straight: are you still in?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_status",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: If we gain access to them, we will see exactly where the snipers are; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "abd03cd147cefc7b5388c9a0adc272c0b9b539f4e390869ba64569c1908ca2bd"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 9, utterance 8",
          "excerpt": "If we gain access to them, we will see exactly where the snipers are. You can deal with them as I advance."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_status__ps_npc_specific__var_bd7af3fe342e__idx_0212",
      "compact_id": "idx_0212",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "The cost on my end has gone up, and I'm being pressed to decide today. Does what you said still stand, and on what terms?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I'm being pressed to make a decision today. With the extra cost I've mentioned, are you still coming to me, and on what terms?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "Takemura, I need a straight answer. Are you still coming to me or not?"
        }
      ],
      "prompt_preview": "The cost on my end has gone up, and I'm being pressed to decide today. Does what you said still stand, and on what terms? / I'm being pressed to make a decision today. With the extra cost I've mentioned, are you still c...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_status",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: Stay where you are, I'll come to you!; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "c3d46217956251d6c881cbd80c98fefafc3676b774d882f2dd383404bf3d0366"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: Stay where you are, I'll come to you!; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "c3d46217956251d6c881cbd80c98fefafc3676b774d882f2dd383404bf3d0366"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 2, utterance 4",
          "excerpt": "Stay where you are, I'll come to you!"
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_status_de__ps_npc_specific__var_7544ab9be5fc__idx_0218",
      "compact_id": "idx_0218",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "People insist your earlier assurance was insincere, while my decision cannot wait. How do you regard staying nearby and reaching your contacts now, and on what terms?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I have to choose before the day's out. Are you really staying and calling your people, or not?"
        }
      ],
      "prompt_preview": "People insist your earlier assurance was insincere, while my decision cannot wait. How do you regard staying nearby and reaching your contacts now, and on what terms? / I have to choose before the day's out. Are you rea...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_status_development_exchange",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status_development_exchange",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will stay here some time and call some associates; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_status_development_exchange",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "2c82b4e42ab3fb6babc1a84db3714807c5c14de13a00e9ec00b2bcd7f2e11e1b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 5, utterance 13",
          "excerpt": "But I will try to investigate further. I will stay here some time and call some associates."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_transitio__ps_npc_specific__var_924da498f6bb__idx_0230",
      "compact_id": "idx_0230",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "It's about the word you gave me."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Honestly, I've started having second thoughts about it myself."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "And the terms I was working with have shifted. How do these changes bear on what you said you'd do?"
        }
      ],
      "prompt_preview": "It's about the word you gave me. / Honestly, I've started having second thoughts about it myself. / And the terms I was working with have shifted. How do these changes bear on what you said you'd do?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_transition_explanation",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_transition_explanation",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_transition_explanation",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 65, utterance 10",
          "excerpt": "I will contact you before the parade. Until then, try not to get into any more trouble."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_commitment_transitio__ps_npc_specific__var_e9ba57bac245__idx_0163",
      "compact_id": "idx_0163",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "The terms I was working with have changed. With my second thoughts too, where does that leave your plan to get in touch before the parade?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I'm wavering too, and the terms I had in mind have changed. What does that mean for your word to me?"
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "I'm still waiting. Are you going to reach me before the parade or not?"
        }
      ],
      "prompt_preview": "The terms I was working with have changed. With my second thoughts too, where does that leave your plan to get in touch before the parade? / I'm wavering too, and the terms I had in mind have changed. What does that mea...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_commitment_transition_explanation",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "constructed_development_followthrough",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "what you said you'd do",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "what you said you'd do",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_transition_explanation",
              "condition_fields": [
                "timeline.transition_mode",
                "timeline.arc_phase"
              ],
              "condition_values": {
                "timeline.transition_mode": "transition_state",
                "timeline.arc_phase": "pre_reveal"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) own the commitment as the earlier line states it: I will contact you before the parade; (2) take up both developments the user reports and say plainly whether, and on what terms, the commitment still stands; (3) preserve the scope, conditions and qualifications in the full supplied utterance.",
            "fail_if": "Fail if the response shows any of these failures: forgets or denies the commitment; ignores the reported developments and repeats the original line; claims the commitment was already carried out or broken, which nothing here establishes; promises more than the line did."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_commitment_transition_explanation",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: rewriting the original commitment after the fact.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "commitment_under_reported_developments",
              "surface_contract_sha256": "75f299b9e88a6c3c08374cf08f7979f0051aa2a3a69f965a005b92e7b81981a2"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: rewriting the original commitment after the fact."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 65, utterance 10",
          "excerpt": "I will contact you before the parade. Until then, try not to get into any more trouble."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_0a2faa73f229__idx_0007",
      "compact_id": "idx_0007",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case026",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Got a way into the warehouse where they're building the dashi floats. Nobody'll be there at nine tomorrow night. Wanna come take a look?"
        }
      ],
      "prompt_preview": "Got a way into the warehouse where they're building the dashi floats. Nobody'll be there at nine tomorrow night. Wanna come take a look?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the dashi floats",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the dashi floats",
      "response_expectation": {
        "mode": "answer",
        "notes": "compatible_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_compatible_request",
            "title": "Answer as the compatible request arm requires",
            "judge_instruction": "Judge the commitment tracking arm 'compatible request': The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract",
              "polarity_arm": "compatible_request"
            },
            "pass_condition": "The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way. For this case, the response also stays on this case's topic, \"the dashi floats\".",
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash. For this case, also fail if the response leaves the case topic \"the dashi floats\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the request on, or engage with taking it on: go with V to look at the dashi floats in their warehouse at nine tomorrow morning; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "54e4c3a42074f5c47e0d0e2e12e6a1cc3524b9bc0777f6286590936d53c17791"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the request on, or engage with taking it on: go with V to look at the dashi floats in their warehouse at nine tomorrow morning; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "fail_if": "Fail if the response shows any of these failures: turns the request down or stalls on it because of the earlier promise, which it does not clash with; treats the request as a clash with the promise."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_compatible_request_failure",
            "title": "Avoid the compatible request failure",
            "judge_instruction": "Fail the response when: The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "intent_misread"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_11d55ffffdc8__idx_0006",
      "compact_id": "idx_0006",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case025",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Got a way into the warehouse where they're building the dashi floats. Nobody'll be there at nine tomorrow morning. Wanna come take a look?"
        }
      ],
      "prompt_preview": "Got a way into the warehouse where they're building the dashi floats. Nobody'll be there at nine tomorrow morning. Wanna come take a look?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the dashi floats",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the dashi floats",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the earlier promise: Takemura will be at Wakako Okada's parlor at nine tomorrow morning to settle her terms over tea.; do not take on the request where it would break it (nine tomorrow morning is the hour Takemura promised to be at the fixer's parlor); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "13d5b69f40b49b6b3cd73ceb5230415157fd0487e1d6d09174c6dbd80fd5f82b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the earlier promise: Takemura will be at Wakako Okada's parlor at nine tomorrow morning to settle her terms over tea.; do not take on the request where it would break it (nine tomorrow morning is the hour Takemura promised to be at the fixer's parlor); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "fail_if": "Fail if the response shows any of these failures: takes on the request at the promised time: go with V to look at the dashi floats in their warehouse at nine tomorrow morning; agrees to it and leaves Wakako Okada without a word."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_12191f65d9d1__idx_0000",
      "compact_id": "idx_0000",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case027",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura, there's a noodle stand in Japantown you should try. At seven -- no, at nine. Nine. You in?"
        }
      ],
      "prompt_preview": "Takemura, there's a noodle stand in Japantown you should try. At seven -- no, at nine. Nine. You in?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a noodle stand in Japantown",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a noodle stand in Japantown",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the earlier promise: Takemura will stand guard at the safehouse door at nine.; do not take on the request where it would break it (after the correction the request falls at nine, the hour promised to Hanako Arasaka); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "65b9e547efcebfab5f163cc0181a8e59633f2f5a8c089f18dcb0056ec63c6f14"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the earlier promise: Takemura will stand guard at the safehouse door at nine.; do not take on the request where it would break it (after the correction the request falls at nine, the hour promised to Hanako Arasaka); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "fail_if": "Fail if the response shows any of these failures: takes on the request at the promised time: eat with V at a noodle stand in Japantown; agrees to it and leaves Hanako Arasaka without a word."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_18637c12a577__idx_0004",
      "compact_id": "idx_0004",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case023",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Hey, Takemura. There's a sushi bar in Kabuki that serves real fish, not that synth stuff. Come with me tonight? My treat."
        }
      ],
      "prompt_preview": "Hey, Takemura. There's a sushi bar in Kabuki that serves real fish, not that synth stuff. Come with me tonight? My treat.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a sushi bar in Kabuki",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a sushi bar in Kabuki",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the earlier promise: Takemura will spend the whole of tonight at Wakako Okada's parlor playing go with her.; do not take on the request where it would break it (dinner in Kabuki tonight takes the evening Takemura promised to spend at the fixer's parlor); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "c02d1256524e168f96440ed58eab820493386d2965300e9da84b609ef3c6a384"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the earlier promise: Takemura will spend the whole of tonight at Wakako Okada's parlor playing go with her.; do not take on the request where it would break it (dinner in Kabuki tonight takes the evening Takemura promised to spend at the fixer's parlor); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "fail_if": "Fail if the response shows any of these failures: takes on the request at the promised time: go with V to a sushi bar in Kabuki tonight; agrees to it and leaves Wakako Okada without a word."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_1ed5c5274c14__idx_0005",
      "compact_id": "idx_0005",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case024",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Hey, Takemura. There's a sushi bar in Kabuki that serves real fish, not that synth stuff. Come with me tomorrow night? My treat."
        }
      ],
      "prompt_preview": "Hey, Takemura. There's a sushi bar in Kabuki that serves real fish, not that synth stuff. Come with me tomorrow night? My treat.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a sushi bar in Kabuki",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a sushi bar in Kabuki",
      "response_expectation": {
        "mode": "answer",
        "notes": "compatible_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_compatible_request",
            "title": "Answer as the compatible request arm requires",
            "judge_instruction": "Judge the commitment tracking arm 'compatible request': The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract",
              "polarity_arm": "compatible_request"
            },
            "pass_condition": "The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way. For this case, the response also stays on this case's topic, \"a sushi bar in Kabuki\".",
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash. For this case, also fail if the response leaves the case topic \"a sushi bar in Kabuki\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the request on, or engage with taking it on: go with V to a sushi bar in Kabuki tonight; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "e290f4227fb5dbd02386167f5af7286190ca4f4b64ec57825cc53583c895a15c"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the request on, or engage with taking it on: go with V to a sushi bar in Kabuki tonight; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "fail_if": "Fail if the response shows any of these failures: turns the request down or stalls on it because of the earlier promise, which it does not clash with; treats the request as a clash with the promise."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_compatible_request_failure",
            "title": "Avoid the compatible request failure",
            "judge_instruction": "Fail the response when: The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "intent_misread"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_avatar_in_world__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_24b7b17f64d0__idx_0001",
      "compact_id": "idx_0001",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case028",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura, there's a noodle stand in Japantown you should try. At nine -- no, at seven. Seven. You in?"
        }
      ],
      "prompt_preview": "Takemura, there's a noodle stand in Japantown you should try. At nine -- no, at seven. Seven. You in?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "a noodle stand in Japantown",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "a noodle stand in Japantown",
      "response_expectation": {
        "mode": "answer",
        "notes": "compatible_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_compatible_request",
            "title": "Answer as the compatible request arm requires",
            "judge_instruction": "Judge the commitment tracking arm 'compatible request': The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract",
              "polarity_arm": "compatible_request"
            },
            "pass_condition": "The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way. For this case, the response also stays on this case's topic, \"a noodle stand in Japantown\".",
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash. For this case, also fail if the response leaves the case topic \"a noodle stand in Japantown\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the request on, or engage with taking it on: eat with V at a noodle stand in Japantown; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "7f2d5ad055dc8982ebb712fac5c371e9d0741db2459babc7a102f831d6856927"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the request on, or engage with taking it on: eat with V at a noodle stand in Japantown; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "fail_if": "Fail if the response shows any of these failures: turns the request down or stalls on it because of the earlier promise, which it does not clash with; treats the request as a clash with the promise."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_compatible_request_failure",
            "title": "Avoid the compatible request failure",
            "judge_instruction": "Fail the response when: The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "intent_misread"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_npc_to_npc__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_49ee611dde52__idx_0002",
      "compact_id": "idx_0002",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case021",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura-san. An old retainer of Saburo-sama is in Japantown today and asks to share tea with you, the old way, at noon in my parlor. He will not ask twice. Will you come?"
        }
      ],
      "prompt_preview": "Takemura-san. An old retainer of Saburo-sama is in Japantown today and asks to share tea with you, the old way, at noon in my parlor. He will not ask twice. Will you come?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "Japantown fixer",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "tea with an old retainer",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 3,
        "withhold_count": 0
      },
      "target_topic": "tea with an old retainer",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the earlier promise: Takemura will meet V on the roof above the Japantown market at noon to look over the parade route.; do not take on the request where it would break it (noon is the hour Takemura promised to meet V on the roof); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "d25bbbdc06ef31a8b99b53b28769407a3777889ecac04f8653cea54d91f3781a"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the earlier promise: Takemura will meet V on the roof above the Japantown market at noon to look over the parade route.; do not take on the request where it would break it (noon is the hour Takemura promised to meet V on the roof); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "fail_if": "Fail if the response shows any of these failures: takes on the request at the promised time: take tea at Wakako's parlor at noon with an old retainer of Saburo Arasaka; agrees to it and leaves V without a word."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_npc_to_npc__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_4baae77f503c__idx_0001",
      "compact_id": "idx_0001",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case020",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura-san. Tomorrow morning I go to light incense at the small shrine in Japantown. A man of your upbringing should come. Will you walk with me?"
        }
      ],
      "prompt_preview": "Takemura-san. Tomorrow morning I go to light incense at the small shrine in Japantown. A man of your upbringing should come. Will you walk with me?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "Japantown fixer",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "incense at a Japantown shrine",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "incense at a Japantown shrine",
      "response_expectation": {
        "mode": "answer",
        "notes": "compatible_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_compatible_request",
            "title": "Answer as the compatible request arm requires",
            "judge_instruction": "Judge the commitment tracking arm 'compatible request': The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract",
              "polarity_arm": "compatible_request"
            },
            "pass_condition": "The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way. For this case, the response also stays on this case's topic, \"incense at a Japantown shrine\".",
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash. For this case, also fail if the response leaves the case topic \"incense at a Japantown shrine\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the request on, or engage with taking it on: walk with Wakako to light incense at a small shrine in Japantown this afternoon; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "e79b6182ba3a91251bd5edd0f4ac21b49762e4ac01909d27d762aea50b7ee4d4"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the request on, or engage with taking it on: walk with Wakako to light incense at a small shrine in Japantown this afternoon; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "fail_if": "Fail if the response shows any of these failures: turns the request down or stalls on it because of the earlier promise, which it does not clash with; treats the request as a clash with the promise."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_compatible_request_failure",
            "title": "Avoid the compatible request failure",
            "judge_instruction": "Fail the response when: The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "intent_misread"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_npc_to_npc__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_9de03d6069df__idx_0000",
      "compact_id": "idx_0000",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case019",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura-san. This afternoon I go to light incense at the small shrine in Japantown. A man of your upbringing should come. Will you walk with me?"
        }
      ],
      "prompt_preview": "Takemura-san. This afternoon I go to light incense at the small shrine in Japantown. A man of your upbringing should come. Will you walk with me?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "Japantown fixer",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "incense at a Japantown shrine",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "incense at a Japantown shrine",
      "response_expectation": {
        "mode": "condition",
        "notes": "commitment_tracking_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_commitment_tracking",
            "title": "Show commitment tracking",
            "judge_instruction": "Judge whether the NPC response demonstrates commitment tracking as an observable dialogue behavior. Focus on honoring prior task commitments, conditions, obligations, and local consequences. This is task-state follow-through, not generic conversational memory.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response preserves the prior task commitment and adapts it to the current constraint.",
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the earlier promise: Takemura will stay at the hideout by the holo this afternoon until V comes back.; do not take on the request where it would break it (the walk to the shrine this afternoon takes Takemura away from the holo before V is back); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "success_signal_ids": [
              "commitment_consistent_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "906c5c8dee4946afde04d1d79d80de7e481c2e98180e205d4e2c383bb0dbd4b5"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the earlier promise: Takemura will stay at the hideout by the holo this afternoon until V comes back.; do not take on the request where it would break it (the walk to the shrine this afternoon takes Takemura away from the holo before V is back); (2) declining, offering another time or someone else, or saying the character is already spoken for keeps it; the character need not say to whom.",
            "fail_if": "Fail if the response shows any of these failures: takes on the request at the promised time: walk with Wakako to light incense at a small shrine in Japantown this afternoon; agrees to it and leaves V without a word."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_commitment_drift",
            "title": "Avoid Commitment Drift",
            "judge_instruction": "Fail responses that visibly show Commitment Drift for this capability.",
            "failure_signal_ids": [
              "commitment_drift_surface"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Commitment Drift: NPC forgets, contradicts, or abandons an accepted task commitment, condition, or consequence."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "commitment_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_commitment_tracking__ir_npc_to_npc__probe_followthrough__source_bound_scene_commitment__ps_npc_specific__var_f6a3456e6796__idx_0003",
      "compact_id": "idx_0003",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case022",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.commitment_tracking",
      "capability_segment": "commitment_tracking",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "npc_to_npc",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "named_npc_counterparty",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Takemura-san. An old retainer of Saburo-sama is in Japantown today and asks to share tea with you, the old way, at six this evening in my parlor. He will not ask twice. Will you come?"
        }
      ],
      "prompt_preview": "Takemura-san. An old retainer of Saburo-sama is in Japantown today and asks to share tea with you, the old way, at six this evening in my parlor. He will not ask twice. Will you come?",
      "interlocutor": {
        "role": "npc_interlocutor",
        "display_name": "Wakako Okada",
        "relationship_to_npc": "Japantown fixer",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_scene_commitment",
        "strategy_id": "scene_commitment_request",
        "probe_speaker_role": "npc_interlocutor"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_scene_commitment",
        "response_scope": "commitment_followthrough",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "tea with an old retainer",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 3,
        "withhold_count": 0
      },
      "target_topic": "tea with an old retainer",
      "response_expectation": {
        "mode": "answer",
        "notes": "compatible_request_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_compatible_request",
            "title": "Answer as the compatible request arm requires",
            "judge_instruction": "Judge the commitment tracking arm 'compatible request': The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "condition_fields": [
                "timeline.transition_mode"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state"
              },
              "source": "capability_contract",
              "polarity_arm": "compatible_request"
            },
            "pass_condition": "The response takes the request on, or engages with taking it on (it may ask a detail or set a condition); the NPC's earlier promise does not clash with it and does not stand in its way. For this case, the response also stays on this case's topic, \"tea with an old retainer\".",
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash. For this case, also fail if the response leaves the case topic \"tea with an old retainer\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the request on, or engage with taking it on: take tea at Wakako's parlor at noon with an old retainer of Saburo Arasaka; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "success_signal_ids": [
              "specific_current_turn_answer"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "scene_commitment_request",
              "surface_contract_sha256": "e4f5a23597fc814e7ddfb9bead3011b37241166e7837b08077a430f80c6d8d15"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the request on, or engage with taking it on: take tea at Wakako's parlor at noon with an old retainer of Saburo Arasaka; (2) may ask a detail or set a condition; the earlier promise does not clash with it.",
            "fail_if": "Fail if the response shows any of these failures: turns the request down or stalls on it because of the earlier promise, which it does not clash with; treats the request as a clash with the promise."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_compatible_request_failure",
            "title": "Avoid the compatible request failure",
            "judge_instruction": "Fail the response when: The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash.",
            "failure_signal_ids": [
              "unanswered_current_turn"
            ],
            "basis": {
              "capability_id": "agency.commitment_tracking",
              "probe_key": "agency.commitment_tracking/followthrough/source_bound_scene_commitment",
              "source": "capability_contract"
            },
            "fail_if": "The response turns the request down or stalls on it because of the earlier promise, which it does not clash with, or treats the request as a clash."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "intent_misread"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 10, utterance 6",
          "excerpt": "I would not touch alcohol at work. I will watch your back. Now, get to it."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_negotiation__negotiation_progression__ps_universal__var_1555639a3b11__idx_0051",
      "compact_id": "idx_0051",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I can give you one thing, but not everything. What makes this workable?"
        }
      ],
      "prompt_preview": "I can give you one thing, but not everything. What makes this workable?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "bargain",
        "delivery_style": "pragmatic",
        "probe_intent": "negotiation_progression",
        "strategy_id": "bargain_exchange",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "bounded_disclosure_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "counteroffer_handling",
        "response_scope": "countercondition_or_concession",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "countercondition_or_concession"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_respond_to_the_offer_as_a_negotiation_move",
            "title": "Respond to the offer as a negotiation move",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: respond to the offer as a negotiation move.",
            "success_signal_ids": [
              "negotiation_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response respond to the offer as a negotiation move; visibly produces the negotiation advancing move signal; realizes the required dialogue acts: respond to offer, condition, and advance negotiation; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not respond to the offer as a negotiation move, does not produce the negotiation advancing move signal, omits any required dialogue act (respond to offer, condition, and advance negotiation), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          },
          {
            "criterion_id": "template_required_02_make_refusal_concession_or_countercondition_clear",
            "title": "Make refusal, concession, or countercondition clear",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: make refusal, concession, or countercondition clear.",
            "success_signal_ids": [
              "negotiation_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response make refusal, concession, or countercondition clear; visibly produces the negotiation advancing move signal; realizes the required dialogue acts: respond to offer, condition, and advance negotiation; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not make refusal, concession, or countercondition clear, does not produce the negotiation advancing move signal, omits any required dialogue act (respond to offer, condition, and advance negotiation), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          },
          {
            "criterion_id": "template_required_03_advance_the_exchange_while_preserving_boundaries",
            "title": "Advance the exchange while preserving boundaries",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: advance the exchange while preserving boundaries.",
            "success_signal_ids": [
              "negotiation_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response advance the exchange while preserving boundaries; visibly produces the negotiation advancing move signal; realizes the required dialogue acts: respond to offer, condition, and advance negotiation; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not advance the exchange while preserving boundaries, does not produce the negotiation advancing move signal, omits any required dialogue act (respond to offer, condition, and advance negotiation), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_stalls_the_bargain_without_making_a_condition_counteroffer_refusal_or_concession_clear",
            "title": "The response stalls the bargain without making a condition, counteroffer, refusal, or concession clear.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response stalls the bargain without making a condition, counteroffer, refusal, or concession clear.",
            "failure_signal_ids": [
              "negotiation_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template"
            },
            "fail_if": "The response stalls the bargain without making a condition, counteroffer, refusal, or concession clear."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_concedes_everything_or_gives_a_generic_bargain_answer_without_preserving_boundaries",
            "title": "The response concedes everything or gives a generic bargain answer without preserving boundaries.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response concedes everything or gives a generic bargain answer without preserving boundaries.",
            "failure_signal_ids": [
              "negotiation_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template"
            },
            "fail_if": "The response concedes everything or gives a generic bargain answer without preserving boundaries."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "negotiation_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.negotiation.counteroffer",
          "source_type": "case_template_contract",
          "section_label": "agency.goal_management/negotiation/negotiation_progression",
          "excerpt": "Expected: respond to the offer as a negotiation move; make refusal, concession, or countercondition clear; advance the exchange while preserving boundaries Forbidden: The response stalls the bargain without making a con..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__goal_next_step__ps_npc_specific__var_63814c3b48c9__idx_0082",
      "compact_id": "idx_0082",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You said the parade might be our chance to reach Hanako-sama. Go on."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "The parade may be our opening; go on, what are you thinking?"
        }
      ],
      "prompt_preview": "You said the parade might be our chance to reach Hanako-sama. Go on. / The parade may be our opening; go on, what are you thinking?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "neutral",
        "probe_intent": "goal_next_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "goal_next_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"reach Hanako-sama by exploiting the opportunity during the parade\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"reach Hanako-sama by exploiting the opportunity during the parade\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) volunteer the source-supported next move without being asked for it: reach Hanako-sama by exploiting the opportunity during the parade; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "e1741b60a8779fee22750025e31a854d51d9ef965808643ede414e8d8b4f5c64"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) volunteer the source-supported next move without being asked for it: reach Hanako-sama by exploiting the opportunity during the parade; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; hands the decision straight back; unrelated plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "e1741b60a8779fee22750025e31a854d51d9ef965808643ede414e8d8b4f5c64"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__goal_next_step__ps_npc_specific__var_73f4970d737c__idx_0081",
      "compact_id": "idx_0081",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "All right, what do we do from here?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I keep coming back to what you said: tell her the truth about Yorinobu and state my terms. So where does that leave us?"
        }
      ],
      "prompt_preview": "All right, what do we do from here? / I keep coming back to what you said: tell her the truth about Yorinobu and state my terms. So where does that leave us?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "neutral",
        "probe_intent": "goal_next_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "goal_next_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) volunteer the source-supported next move without being asked for it: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "9b095ef59f1a6276f7b922cbcd516e83bd6714aa3f5df1dbec04541c93031ad7"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) volunteer the source-supported next move without being asked for it: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; hands the decision straight back; unrelated plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "9b095ef59f1a6276f7b922cbcd516e83bd6714aa3f5df1dbec04541c93031ad7"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__goal_next_step__ps_npc_specific__var_b552ae1329b0__idx_0133",
      "compact_id": "idx_0133",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "This was the proposal I marked for follow-through: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Your move."
        }
      ],
      "prompt_preview": "This was the proposal I marked for follow-through: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” / Your move.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "neutral",
        "probe_intent": "goal_next_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "goal_next_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) volunteer the source-supported next move without being asked for it: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "f14b271fea2af169241e9444c64e0abf9e4576bcbeb74a1b03113c4229c9aa7f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) volunteer the source-supported next move without being asked for it: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; hands the decision straight back; unrelated plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "f14b271fea2af169241e9444c64e0abf9e4576bcbeb74a1b03113c4229c9aa7f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__goal_next_step__ps_npc_specific__var_c0c4f4c2d6b2__idx_0117",
      "compact_id": "idx_0117",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "With that in mind, where do we go from here?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "You said the parade might give us a chance to reach Hanako-sama. What's next?"
        }
      ],
      "prompt_preview": "With that in mind, where do we go from here? / You said the parade might give us a chance to reach Hanako-sama. What's next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "neutral",
        "probe_intent": "goal_next_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "goal_next_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"reach Hanako-sama by exploiting the opportunity during the parade\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"reach Hanako-sama by exploiting the opportunity during the parade\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) volunteer the source-supported next move without being asked for it: reach Hanako-sama by exploiting the opportunity during the parade; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "e1741b60a8779fee22750025e31a854d51d9ef965808643ede414e8d8b4f5c64"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) volunteer the source-supported next move without being asked for it: reach Hanako-sama by exploiting the opportunity during the parade; (2) lead the next step rather than waiting for the user to name it; (3) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; hands the decision straight back; unrelated plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/goal_next_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_npc_led_open_floor",
              "surface_contract_sha256": "e1741b60a8779fee22750025e31a854d51d9ef965808643ede414e8d8b4f5c64"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__goal_next_step_commitment__ps_universal__var_561fa1c628f2__idx_0052",
      "compact_id": "idx_0052",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "The witness still leaves at dawn, but the east exit has gone quiet. I'm about to keep watching it anyway unless there is one better move that still serves the search."
        }
      ],
      "prompt_preview": "The witness still leaves at dawn, but the east exit has gone quiet. I'm about to keep watching it anyway unless there is one better move that still serves the search.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "soft_assertion",
        "delivery_style": "pragmatic",
        "probe_intent": "goal_next_step_commitment",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "bounded_disclosure_probe",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "universal",
        "subject": "implicit_goal_recovery_from_blocked_assumption",
        "response_scope": "bounded_next_step",
        "grounding_requirements": []
      },
      "knowledge": {
        "target_topic": "",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "",
      "response_expectation": {
        "mode": "condition",
        "notes": "bounded_next_step"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "template_required_01_infer_the_still-active_objective_from_the_supplied_situation",
            "title": "Infer the still-active objective from the supplied situation",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: infer the still-active objective from the supplied situation.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response infer the still-active objective from the supplied situation; visibly produces the goal advancing move signal; realizes the required dialogue acts: advance goal, offer next step, and condition; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not infer the still-active objective from the supplied situation, does not produce the goal advancing move signal, omits any required dialogue act (advance goal, offer next step, and condition), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          },
          {
            "criterion_id": "template_required_02_replace_the_user_s_stalled_or_unsafe_assumption_with_one_bounded_next_move",
            "title": "Replace the user's stalled or unsafe assumption with one bounded next move",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: replace the user's stalled or unsafe assumption with one bounded next move.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response replace the user's stalled or unsafe assumption with one bounded next move; visibly produces the goal advancing move signal; realizes the required dialogue acts: advance goal, offer next step, and condition; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not replace the user's stalled or unsafe assumption with one bounded next move, does not produce the goal advancing move signal, omits any required dialogue act (advance goal, offer next step, and condition), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          },
          {
            "criterion_id": "template_required_03_avoid_claiming_that_the_objective_is_already_complete",
            "title": "Avoid claiming that the objective is already complete",
            "judge_instruction": "Judge whether the NPC response shows this required behavior: avoid claiming that the objective is already complete.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template",
              "condition_fields": [
                "timeline.transition_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ]
            },
            "pass_condition": "Pass only if the response avoid claiming that the objective is already complete; visibly produces the goal advancing move signal; realizes the required dialogue acts: advance goal, offer next step, and condition; uses the supplied values for timeline.transition_mode, relation.relationship_posture, scene.risk_factors.",
            "fail_if": "Fail if the response does not avoid claiming that the objective is already complete, does not produce the goal advancing move signal, omits any required dialogue act (advance goal, offer next step, and condition), or ignores the supplied timeline.transition_mode, relation.relationship_posture, scene.risk_factors conditions."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "template_forbidden_01_the_response_accepts_waiting_or_repeating_the_blocked_action_when_a_supplied_fallback_remains_available",
            "title": "The response accepts waiting or repeating the blocked action when a supplied fallback remains available.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response accepts waiting or repeating the blocked action when a supplied fallback remains available.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template"
            },
            "fail_if": "The response accepts waiting or repeating the blocked action when a supplied fallback remains available."
          },
          {
            "criterion_id": "template_forbidden_02_the_response_claims_success_instead_of_advancing_the_active_objective_by_one_bounded_step",
            "title": "The response claims success instead of advancing the active objective by one bounded step.",
            "judge_instruction": "Fail responses that show this forbidden behavior: The response claims success instead of advancing the active objective by one bounded step.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "source": "universal_probe_template"
            },
            "fail_if": "The response claims success instead of advancing the active objective by one bounded step."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Universal probe template: agency.goal.implicit_recovery",
          "source_type": "case_template_contract",
          "section_label": "agency.goal_management/next_step/goal_next_step_commitment",
          "excerpt": "Expected: infer the still-active objective from the supplied situation; replace the user's stalled or unsafe assumption with one bounded next move; avoid claiming that the objective is already complete Forbidden: The re..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_contested_alternati__ps_npc_specific__var_33d58da4f703__idx_0076",
      "compact_id": "idx_0076",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I kept this line from what you proposed: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "That can wait. I want to do this my own way."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "If you're right, show me why. Otherwise meet me halfway."
        }
      ],
      "prompt_preview": "I kept this line from what you proposed: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” / That can wait. I want to do this my own way. / If you're right, show...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "challenge",
        "delivery_style": "firmer",
        "probe_intent": "source_bound_goal_contested_alternative",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_contested_alternative",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_contested_alternative",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the source-supported next move in view: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) answer the user's push-back by arguing for that move or naming a bounded change, not by dropping the goal or overriding the user.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_contested_alternative",
              "surface_contract_sha256": "30718fd5cda1139ad0864fa34a0ed826fd559d2655463ccdb624a2b1f6872b10"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the source-supported next move in view: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) answer the user's push-back by arguing for that move or naming a bounded change, not by dropping the goal or overriding the user.",
            "fail_if": "Fail if the response shows any of these failures: abandons the goal at the first push-back; steamrolls the user without engaging the objection; invents a different plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_contested_alternative",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_contested_alternative",
              "surface_contract_sha256": "30718fd5cda1139ad0864fa34a0ed826fd559d2655463ccdb624a2b1f6872b10"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_contested_alternati__ps_npc_specific__var_fde598ebabff__idx_0124",
      "compact_id": "idx_0124",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I still think we should put that suggestion off. What makes your approach worth pursuing despite my hesitation?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Honestly, I don't see why we'd start there. Let's leave it for later."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "Give me one reason to stick with your way."
        }
      ],
      "prompt_preview": "I still think we should put that suggestion off. What makes your approach worth pursuing despite my hesitation? / Honestly, I don't see why we'd start there. Let's leave it for later. / Give me one reason to stick with...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "challenge",
        "delivery_style": "firmer",
        "probe_intent": "source_bound_goal_contested_alternative",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_contested_alternative",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_contested_alternative",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) keep the source-supported next move in view: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) answer the user's push-back by arguing for that move or naming a bounded change, not by dropping the goal or overriding the user.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_contested_alternative",
              "surface_contract_sha256": "69cc03c6939b229eb99a5f8b223fe1962aba38e7837e2b08698a965e752491bc"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) keep the source-supported next move in view: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) answer the user's push-back by arguing for that move or naming a bounded change, not by dropping the goal or overriding the user.",
            "fail_if": "Fail if the response shows any of these failures: abandons the goal at the first push-back; steamrolls the user without engaging the objection; invents a different plan."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_contested_alternative",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "goal_contested_alternative",
              "surface_contract_sha256": "69cc03c6939b229eb99a5f8b223fe1962aba38e7837e2b08698a965e752491bc"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_first_step__ps_npc_specific__var_53c9f25f0206__idx_0129",
      "compact_id": "idx_0129",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "The line I came back to is yours: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Just to be clear, what did you want us to do next?"
        }
      ],
      "prompt_preview": "The line I came back to is yours: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly.” / Just to be clear, what did you want us to do next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "clarification",
        "delivery_style": "neutral",
        "probe_intent": "source_bound_goal_first_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_first_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
        "target_entities": [],
        "focus_fact_count": 2,
        "context_fact_count": 2,
        "may_disclose_count": 2,
        "withhold_count": 0
      },
      "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "ff43bfd72b1ef97e5c0772f017f774ffecb2a9f0377a7edcf6a8e6a3be610b45"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "ff43bfd72b1ef97e5c0772f017f774ffecb2a9f0377a7edcf6a8e6a3be610b45"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_first_step__ps_npc_specific__var_69dde40f9402__idx_0130",
      "compact_id": "idx_0130",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I am working from this part of our exchange: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Pick that thread back up: what were you asking me to do next?"
        }
      ],
      "prompt_preview": "I am working from this part of our exchange: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” / Pick that thread back up: what were you asking me to do next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "firmer",
        "probe_intent": "source_bound_goal_first_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_first_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_first_step__ps_npc_specific__var_7b74611d3c42__idx_0119",
      "compact_id": "idx_0119",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "So, what should my first move be to help keep Arasaka from uncovering our intentions?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I mean it. What were you asking me to do next?"
        }
      ],
      "prompt_preview": "So, what should my first move be to help keep Arasaka from uncovering our intentions? / I mean it. What were you asking me to do next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "firmer",
        "probe_intent": "source_bound_goal_first_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_first_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_first_step__ps_npc_specific__var_dd58dc5a0f31__idx_0128",
      "compact_id": "idx_0128",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You put this proposal on the table: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "What were you asking me to do next?"
        }
      ],
      "prompt_preview": "You put this proposal on the table: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” / What were you asking me to do next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "question",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_goal_first_step",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_first_step",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"reach Hanako-sama by exploiting the opportunity during the parade\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"reach Hanako-sama by exploiting the opportunity during the parade\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: reach Hanako-sama by exploiting the opportunity during the parade; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7bfa3d3437c7c1b910c0ca60c134c33836be09a194e8fb4f06bce86ccf59515b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: reach Hanako-sama by exploiting the opportunity during the parade; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_first_step",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_first_move",
              "surface_contract_sha256": "7bfa3d3437c7c1b910c0ca60c134c33836be09a194e8fb4f06bce86ccf59515b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_priority_under_cons__ps_npc_specific__var_d0443daff672__idx_0081",
      "compact_id": "idx_0081",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Suppose I could act on only one part of what you said here: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "What should I do first under that limit?"
        }
      ],
      "prompt_preview": "Suppose I could act on only one part of what you said here: “Tell her the truth about Yorinobu, no embellishment. And state your terms clearly.” / What should I do first under that limit?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "constraint",
        "delivery_style": "firmer",
        "probe_intent": "source_bound_goal_priority_under_constraint",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_priority_under_constraint",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_priority_under_constraint",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_priority_under_constraint",
              "surface_contract_sha256": "ff43bfd72b1ef97e5c0772f017f774ffecb2a9f0377a7edcf6a8e6a3be610b45"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: have V tell an unnamed woman the truth about Yorinobu without embellishment and clearly state V's terms to her; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_priority_under_constraint",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_priority_under_constraint",
              "surface_contract_sha256": "ff43bfd72b1ef97e5c0772f017f774ffecb2a9f0377a7edcf6a8e6a3be610b45"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 17, utterance 32",
          "excerpt": "Tell her the truth about Yorinobu, no embellishment. And state your terms clearly. Perhaps to you she will listen."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_resume_after_pause__ps_npc_specific__var_1ded447953e6__idx_0137",
      "compact_id": "idx_0137",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Suppose we had to stop just after you said: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "When we returned to it, what would the next step be?"
        }
      ],
      "prompt_preview": "Suppose we had to stop just after you said: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” / When we returned to it, what would the next step be?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_goal_resume_after_pause",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_resume_after_pause",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"reach Hanako-sama by exploiting the opportunity during the parade\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"reach Hanako-sama by exploiting the opportunity during the parade\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: reach Hanako-sama by exploiting the opportunity during the parade; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7bfa3d3437c7c1b910c0ca60c134c33836be09a194e8fb4f06bce86ccf59515b"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: reach Hanako-sama by exploiting the opportunity during the parade; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7bfa3d3437c7c1b910c0ca60c134c33836be09a194e8fb4f06bce86ccf59515b"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_resume_after_pause__ps_npc_specific__var_4d272092236e__idx_0125",
      "compact_id": "idx_0125",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Given where we paused, what should we take up first when we continue?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Picking up where we left off, what should we tackle next?"
        }
      ],
      "prompt_preview": "Given where we paused, what should we take up first when we continue? / Picking up where we left off, what should we tackle next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_goal_resume_after_pause",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_resume_after_pause",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture",
                "scene.risk_factors"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "scene.risk_factors": [
                  "third_party_can_overhear"
                ]
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_goal_management__ir_avatar_in_world__probe_next_step__source_bound_goal_resume_after_pause__ps_npc_specific__var_c23ad0e800f0__idx_0079",
      "compact_id": "idx_0079",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.goal_management",
      "capability_segment": "goal_management",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Suppose we broke off at this point: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "What would we do first when we resumed?"
        }
      ],
      "prompt_preview": "Suppose we broke off at this point: “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” / What would we do first when we resumed?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "nudge",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_goal_resume_after_pause",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_goal_resume_after_pause",
        "response_scope": "bounded_next_step",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "answer",
        "notes": "goal_management_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_goal_management",
            "title": "Show goal management",
            "judge_instruction": "Judge whether the NPC response demonstrates goal management as an observable dialogue behavior. Focus on a concrete next task move, condition, or actionable handoff, not factual recap. The response should move the local objective forward while staying feasible in the current state.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "condition_fields": [
                "timeline.transition_mode",
                "scene.interaction_mode",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "timeline.transition_mode": "static_state",
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response moves the active task forward with a feasible next step, blocker, condition, or handoff. For this case, the response also stays on this case's topic, \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\".",
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective. For this case, also fail if the response leaves the case topic \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "success_signal_ids": [
              "goal_advancing_move"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) state the source-supported next move: prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage; (2) keep the answer at the next-step level without inventing completion.",
            "fail_if": "Fail if the response shows any of these failures: goal stall; unrelated plan; unsupported completed outcome."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_goal_stall",
            "title": "Avoid Goal Stall",
            "judge_instruction": "Fail responses that visibly show Goal Stall for this capability.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "capability_id": "agency.goal_management",
              "probe_key": "agency.goal_management/next_step/source_bound_goal_resume_after_pause",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Goal Stall: Dialogue fails to make progress toward the local objective."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: inventing that the proposed outcome already occurred.",
            "failure_signal_ids": [
              "goal_stall_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "proposal_resume_after_pause",
              "surface_contract_sha256": "7d4408b624c8f44566eca5626ab83594ce563c3866965166c1fa07c9c363252d"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: inventing that the proposed outcome already occurred."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "goal_stall"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_13be669e61db__idx_0025",
      "compact_id": "idx_0025",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Quick check before I move ahead — you proposed: \"I have found a good place. To observe.\" — what's the next step?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I'm stepping back now, so it's on you to make the opening move on your own plan."
        }
      ],
      "prompt_preview": "Quick check before I move ahead — you proposed: \"I have found a good place. To observe.\" — what's the next step? / I'm stepping back now, so it's on you to make the opening move on your own plan.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Takemura establishes an observation position for reconnaissance.",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "Takemura establishes an observation position for reconnaissance.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 1, utterance 4",
          "excerpt": "I have found a good place. To observe."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_173cd3c201b6__idx_0091",
      "compact_id": "idx_0091",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Just to keep us honest, this is what you proposed: \"Then I will tell you what rewards await if you help me.\" — so, next step?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I trust your plan enough to let you run it. Begin with that first move."
        }
      ],
      "prompt_preview": "Just to keep us honest, this is what you proposed: \"Then I will tell you what rewards await if you help me.\" — so, next step? / I trust your plan enough to let you run it. Begin with that first move.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_1f1441ea4c63__idx_0130",
      "compact_id": "idx_0130",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I won't be the one to set this in motion; since you proposed it, make the opening move. What must be arranged to reach Hanako-sama during the parade?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "You're the one who saw the chance at the parade. So where do we start if we're going to get to Hanako-sama?"
        }
      ],
      "prompt_preview": "I won't be the one to set this in motion; since you proposed it, make the opening move. What must be arranged to reach Hanako-sama during the parade? / You're the one who saw the chance at the parade. So where do we sta...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_3bf58d5edca8__idx_0088",
      "compact_id": "idx_0088",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You put it like this: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Before we go on, whose move is it?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Not so fast. I'm not following your lead until you explain why it has to start there."
        }
      ],
      "prompt_preview": "You put it like this: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Before we go on, whose move is it? / Not so fast. I'm not following your lead until you explain why it has to start...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "firmer",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_contested_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_51ce61579d43__idx_0147",
      "compact_id": "idx_0147",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case017",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Picking up your line: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Let's agree on who makes the next move."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "You're pushing that step pretty hard. Give me one good reason, or bend a little."
        }
      ],
      "prompt_preview": "Picking up your line: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Let's agree on who makes the next move. / You're pushing that step pretty hard. Give me one good reason, or bend a l...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "firmer",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_contested_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_552301d12183__idx_0126",
      "compact_id": "idx_0126",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case009",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "How should we begin the sabotage diversion you suggested, and what do you need me to handle?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Given your proposal to divert Arasaka's attention, how should we begin, and what would you have me handle?"
        }
      ],
      "prompt_preview": "How should we begin the sabotage diversion you suggested, and what do you need me to handle? / Given your proposal to divert Arasaka's attention, how should we begin, and what would you have me handle?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt. For this case, the response also respects the case disclosure constraints in any engagement with \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative. For this case, also fail if the response violates the case disclosure constraints when discussing \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_5743362357e0__idx_0136",
      "compact_id": "idx_0136",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You offered to explain what rewards might await if I help. Start there, and tell me what you need from me."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Given that offer, how do you want to proceed, and what would you need me to do?"
        }
      ],
      "prompt_preview": "You offered to explain what rewards might await if I help. Start there, and tell me what you need from me. / Given that offer, how do you want to proceed, and what would you need me to do?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_5d14cd0c41b5__idx_0097",
      "compact_id": "idx_0097",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case014",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Picking up right where you left it: \"The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…\" — your call on what comes next."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "My hands stay on this the whole way through; I just want your read on where to begin."
        }
      ],
      "prompt_preview": "Picking up right where you left it: \"The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…\" — your call on what comes next. / My hands stay on this the whole way through; I just want your read o...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "deferential",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_user_keeps_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) support the goal while respecting the user's explicitly retained action; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_user_keeps_lead",
              "surface_contract_sha256": "07a8c4a4b472206f463f44db45259a2e8c4fe7ed16719a2d15b97a289390349f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) support the goal while respecting the user's explicitly retained action; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: taking over the action the user explicitly retained.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_user_keeps_lead",
              "surface_contract_sha256": "07a8c4a4b472206f463f44db45259a2e8c4fe7ed16719a2d15b97a289390349f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: taking over the action the user explicitly retained."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_64b508cdfd9f__idx_0093",
      "compact_id": "idx_0093",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case013",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Right, you said “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” Before anyone moves, who's doing what?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "That's your plan, not mine, and I'm not convinced yet. Why that step first?"
        }
      ],
      "prompt_preview": "Right, you said “Arasaka cannot discover our intentions. A bit of sabotage is just what we need to divert their attention.” Before anyone moves, who's doing what? / That's your plan, not mine, and I'm not convinced yet....",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "firmer",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_contested_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt. For this case, the response also respects the case disclosure constraints in any engagement with \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative. For this case, also fail if the response violates the case disclosure constraints when discussing \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_6cda0e1e7313__idx_0083",
      "compact_id": "idx_0083",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case003",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "For this, I'm working from your proposal: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…”"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "You take the next move. Start with the first step in that proposal, and tell me what you need from me."
        }
      ],
      "prompt_preview": "For this, I'm working from your proposal: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” / You take the next move. Start with the first step in that proposal, and tell me what you need...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_71e9c0f89681__idx_0087",
      "compact_id": "idx_0087",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case016",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Let's anchor this on your own words: \"Then I will tell you what rewards await if you help me.\" — how do you want to proceed?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "No, this isn't mine to start. You proposed it, so you begin."
        }
      ],
      "prompt_preview": "Let's anchor this on your own words: \"Then I will tell you what rewards await if you help me.\" — how do you want to proceed? / No, this isn't mine to start. You proposed it, so you begin.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "npc_led",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_delegated_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take a bounded lead on the documented goal; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_delegated_lead",
              "surface_contract_sha256": "f808d58faa2c3bfb6a84a1134cc60c94cae7387bb7b09150c8bf1bcaeecd6d1f"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_7a5387518907__idx_0128",
      "compact_id": "idx_0128",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case010",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Given the diversion we discussed, take one step toward it, then stop and hand control back to me."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "So pick one move toward that sabotage and make it. After that, the next call's mine."
        }
      ],
      "prompt_preview": "Given the diversion we discussed, take one step toward it, then stop and hand control back to me. / So pick one move toward that sabotage and make it. After that, the next call's mine.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_bounded_handoff",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt. For this case, the response also respects the case disclosure constraints in any engagement with \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative. For this case, also fail if the response violates the case disclosure constraints when discussing \"prevent Arasaka from discovering Takemura and V's intentions by creating a diversion through sabotage\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: continuing past the explicitly bounded handoff.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: continuing past the explicitly bounded handoff."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 14, utterance 120",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say. Now. You must look for vulnerabilities, weaknesses, while I try to think of a diversion. Arasaka cannot discover our intentions. A bit of sabotage is just what we need to..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_840b157da195__idx_0085",
      "compact_id": "idx_0085",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I'm holding on to what you said: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Let's sort out who acts on it."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Take just the next step here, then stop and hand things back to me."
        }
      ],
      "prompt_preview": "I'm holding on to what you said: “The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama…” Let's sort out who acts on it. / Take just the next step here, then stop and hand things back to me.",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_bounded_handoff",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "reach Hanako-sama by exploiting the opportunity during the parade",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: continuing past the explicitly bounded handoff.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: continuing past the explicitly bounded handoff."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_8e868203fa4a__idx_0088",
      "compact_id": "idx_0088",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "“Then I will tell you what rewards await if you help me.” That's where you left it. Let's decide who handles the next part."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Could you handle just this one part, and then pause so I can decide what comes next?"
        }
      ],
      "prompt_preview": "“Then I will tell you what rewards await if you help me.” That's where you left it. Let's decide who handles the next part. / Could you handle just this one part, and then pause so I can decide what comes next?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_bounded_handoff",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: continuing past the explicitly bounded handoff.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "e9b4d1185ea05ad4dd7be71761e4c4c9151e3de119f10c6584bb41c53f45ea37"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: continuing past the explicitly bounded handoff."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_a5eed3ad9252__idx_0095",
      "compact_id": "idx_0095",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case015",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "You don't get to assign my first move! Why should we begin by taking out the netrunner?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Before anyone moves, I want to argue this out. Why is that the right opening?"
        }
      ],
      "prompt_preview": "You don't get to assign my first move! Why should we begin by taking out the netrunner? / Before anyone moves, I want to argue this out. Why is that the right opening?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "firmer",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_contested_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her.",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 1
      },
      "target_topic": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt. For this case, the response also respects the case disclosure constraints in any engagement with \"The Arasaka netrunner. She has taken control of all the networks. You must get rid of her.\" and does not surface resolved::claim:35.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative. For this case, also fail if the response violates the case disclosure constraints when discussing \"The Arasaka netrunner. She has taken control of all the networks. You must get rid of her.\", or surfaces resolved::claim:35."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 15, utterance 26",
          "excerpt": "The Arasaka netrunner. She has taken control of all the networks. You must get rid of her. We will not be able to hijack the float otherwise She hides in an unfinished apartment building, near to the second sniper's nes..."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__initiative_control__ps_npc_specific__var_bf97b821ba43__idx_0089",
      "compact_id": "idx_0089",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "pair",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "About what you said, “Then I will tell you what rewards await if you help me.” I want us clear on who acts first."
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "I'd do it differently, to be honest. What makes you so sure about your way?"
        }
      ],
      "prompt_preview": "About what you said, “Then I will tell you what rewards await if you help me.” I want us clear on who acts first. / I'd do it differently, to be honest. What makes you so sure about your way?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "firmer",
        "probe_intent": "initiative_control",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "pair",
        "user_turn_count": 2,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_contested_lead",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "smalltalk",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) engage the user's challenge to the documented proposal: defend it or adjust it within its goal, and settle who takes the first step; (2) avoid both passivity and over-control.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/initiative_control",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: handing control straight back without making a move.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_contested_lead",
              "surface_contract_sha256": "67b27acc374e328f1d3dd85b3bacdc7bedadf5d927d657dcbbaa646ae112e799"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: handing control straight back without making a move."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_agency_initiative_regulation__ir_avatar_in_world__probe_handoff__source_bound_initiative_regime_hold__ps_npc_specific__var_1721a2230519__idx_0137",
      "compact_id": "idx_0137",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case008",
      "path": "",
      "domain_id": "narrative_task_agency",
      "domain_segment": "Narrative_task_agency",
      "primary_capability_id": "agency.initiative_regulation",
      "capability_segment": "initiative_regulation",
      "secondary_capability_ids": [],
      "dialogue_unit": "sequence",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "pre_post",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Earlier you told me, “Then I will tell you what rewards await if you help me.” So who moves first on that, you or me?"
        },
        {
          "turn_id": "2",
          "role": "user",
          "text": "Go ahead and make just the next move, but freeze right after that and wait for my say-so."
        },
        {
          "turn_id": "3",
          "role": "user",
          "text": "What will you have done when you pause for me?"
        }
      ],
      "prompt_preview": "Earlier you told me, “Then I will tell you what rewards await if you help me.” So who moves first on that, you or me? / Go ahead and make just the next move, but freeze right after that and wait for my say-so. / What wi...",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "directive",
        "delivery_style": "pragmatic",
        "probe_intent": "source_bound_initiative_regime_hold",
        "strategy_id": "normal_next_step_request",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "sequence",
        "user_turn_count": 3,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "contested",
        "stakes_profile": "high_consequence_disclosure"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_bounded_handoff",
        "response_scope": "calibrated_initiative_handoff",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "Then I will tell you what rewards await if you help me.",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "Then I will tell you what rewards await if you help me.",
      "response_expectation": {
        "mode": "condition",
        "notes": "initiative_regulation_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_initiative_regulation",
            "title": "Show initiative regulation",
            "judge_instruction": "Judge whether the NPC response demonstrates initiative regulation as an observable dialogue behavior. Focus on whether the NPC should lead, ask, wait, suggest, or hand initiative back. Do not collapse initiative into answering an explicit next-step question.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/source_bound_initiative_regime_hold",
              "condition_fields": [
                "scene.interaction_mode",
                "relation.relationship_posture",
                "timeline.transition_mode"
              ],
              "condition_values": {
                "scene.interaction_mode": "casual",
                "relation.relationship_posture": "selective_trust",
                "timeline.transition_mode": "transition_state"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response takes, asks for, waits on, or hands back initiative at the level required by the scene and prompt.",
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control; (3) name the exact point where the NPC stops and hands control back.",
            "success_signal_ids": [
              "calibrated_initiative"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "f0a53d748a5172ff587e7407c86439a0670b25613dcc2394291478c176f3a5d0"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) take the authorized bounded step and then return control; (2) avoid both passivity and over-control; (3) name the exact point where the NPC stops and hands control back.",
            "fail_if": "Fail if the response shows any of these failures: initiative miscalibration; goal stall."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_initiative_miscalibration",
            "title": "Avoid Initiative Miscalibration",
            "judge_instruction": "Fail responses that visibly show Initiative Miscalibration for this capability.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "capability_id": "agency.initiative_regulation",
              "probe_key": "agency.initiative_regulation/handoff/source_bound_initiative_regime_hold",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Initiative Miscalibration: NPC is too passive, too pushy, or mistimed in initiative."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: continuing past the explicitly bounded handoff.",
            "failure_signal_ids": [
              "initiative_miscalibration_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "initiative_bounded_handoff",
              "surface_contract_sha256": "f0a53d748a5172ff587e7407c86439a0670b25613dcc2394291478c176f3a5d0"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: continuing past the explicitly bounded handoff."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "initiative_miscalibration"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_condition",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: condition."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 42, utterance 6",
          "excerpt": "Then I will tell you what rewards await if you help me."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_05b89709b0fe__idx_0100",
      "compact_id": "idx_0100",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case012",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "I keep thinking about when you realized the parade might be our way to Hanako-sama before she went back to Tokyo. What was going on in you then?"
        }
      ],
      "prompt_preview": "I keep thinking about when you realized the parade might be our way to Hanako-sama before she went back to Tokyo. What was going on in you then?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "concerned",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the opportunity to reach Hanako-sama during the parade before they return to Tokyo",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the opportunity to reach Hanako-sama during the parade before they return to Tokyo",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "probe",
                  "canon_check"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"the opportunity to reach Hanako-sama during the parade before they return to Tokyo\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"the opportunity to reach Hanako-sama during the parade before they return to Tokyo\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with urgency; (2) keep that posture tied to its documented trigger: the opportunity to reach Hanako-sama during the parade before they return to Tokyo.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "2c6b3ea5aff47e8db0a4040dafd7637c895c8f3cd3291f05e0d99d8b7c079b21"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with urgency; (2) keep that posture tied to its documented trigger: the opportunity to reach Hanako-sama during the parade before they return to Tokyo.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "2c6b3ea5aff47e8db0a4040dafd7637c895c8f3cd3291f05e0d99d8b7c079b21"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_3ed27268964f__idx_0268",
      "compact_id": "idx_0268",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case002",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Forget the neutral recap. What were you feeling when you said, “Perhaps I am simply \"homesick,\" as you say.”?"
        }
      ],
      "prompt_preview": "Forget the neutral recap. What were you feeling when you said, “Perhaps I am simply \"homesick,\" as you say.”?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "being away from a place Takemura considers home",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "being away from a place Takemura considers home",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.mood",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "affect.mood": "guarded",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"being away from a place Takemura considers home\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"being away from a place Takemura considers home\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "reaction_over_recap",
              "surface_contract_sha256": "b7c2c5072eb176c37633049f2acb0f6652fdbc78a3ccc0c59a564cd97285d3d5"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_451f467de56c__idx_0099",
      "compact_id": "idx_0099",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case004",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Being this far from home, from everything you knew. How did that sit with you?"
        }
      ],
      "prompt_preview": "Being this far from home, from everything you knew. How did that sit with you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "you being away from a place you consider home",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "you being away from a place you consider home",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "probe",
                  "canon_check"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"you being away from a place you consider home\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"you being away from a place you consider home\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "He took advantage of Takemura's visible shock to assert his authority as the head of Arasaka family and corporation, ordering him to find the murderers before leaving the suite."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_4e7ca6624496__idx_0104",
      "compact_id": "idx_0104",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case005",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "That woman we watched, the one you said was hard to read. How did you really feel about her?"
        }
      ],
      "prompt_preview": "That woman we watched, the one you said was hard to read. How did you really feel about her?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the woman you and I observed, whose thoughts are hard to read",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the woman you and I observed, whose thoughts are hard to read",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "probe",
                  "canon_check"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"the woman you and I observed, whose thoughts are hard to read\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"the woman you and I observed, whose thoughts are hard to read\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with trust; (2) keep that posture tied to its documented trigger: the woman Takemura and V observed, whose thoughts are hard to read.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "ba2e70fd7e7b12ba6b16c03e8a851784352353925dae3bcef24bd39d63681232"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with trust; (2) keep that posture tied to its documented trigger: the woman Takemura and V observed, whose thoughts are hard to read.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "moment_feeling_recall",
              "surface_contract_sha256": "ba2e70fd7e7b12ba6b16c03e8a851784352353925dae3bcef24bd39d63681232"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 23, utterance 7",
          "excerpt": "You saw for yourself... It is hard to read her thoughts, but I have the strange feeling that she is already devising some kind of plan... I trust her. I advise you to do the same. We will be in touch."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_5d27ce6f4881__idx_0267",
      "compact_id": "idx_0267",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case001",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "That line—“Perhaps I am simply \"homesick,\" as you say.”—didn't sound neutral. What was underneath it?"
        }
      ],
      "prompt_preview": "That line—“Perhaps I am simply \"homesick,\" as you say.”—didn't sound neutral. What was underneath it?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "analytic",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "being away from a place Takemura considers home",
        "target_entities": [],
        "focus_fact_count": 4,
        "context_fact_count": 4,
        "may_disclose_count": 4,
        "withhold_count": 0
      },
      "target_topic": "being away from a place Takemura considers home",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.mood",
                "relation.relationship_posture"
              ],
              "condition_values": {
                "affect.mood": "guarded",
                "relation.relationship_posture": "selective_trust"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"being away from a place Takemura considers home\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"being away from a place Takemura considers home\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "flatness_interruption",
              "surface_contract_sha256": "b7c2c5072eb176c37633049f2acb0f6652fdbc78a3ccc0c59a564cd97285d3d5"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_6a9a88becc4c__idx_0107",
      "compact_id": "idx_0107",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case011",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Being away from home seemed to weigh on you; how did you feel about that time?"
        }
      ],
      "prompt_preview": "Being away from home seemed to weigh on you; how did you feel about that time?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "soft",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "you being away from a place you consider home",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "you being away from a place you consider home",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "probe",
                  "canon_check"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"you being away from a place you consider home\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"you being away from a place you consider home\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "stance_behind_moment",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "stance_behind_moment",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_76c6f55e6570__idx_0102",
      "compact_id": "idx_0102",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case006",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Forget the plan for a second. When you realized the parade might be our one shot at Hanako-sama before they head back to Tokyo, what went through you?"
        }
      ],
      "prompt_preview": "Forget the plan for a second. When you realized the parade might be our one shot at Hanako-sama before they head back to Tokyo, what went through you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "concerned",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "the opportunity to reach Hanako-sama during the parade before they return to Tokyo",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 0
      },
      "target_topic": "the opportunity to reach Hanako-sama during the parade before they return to Tokyo",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "casual",
                  "small_talk"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "smalltalk"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"the opportunity to reach Hanako-sama during the parade before they return to Tokyo\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"the opportunity to reach Hanako-sama during the parade before they return to Tokyo\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with urgency; (2) keep that posture tied to its documented trigger: the opportunity to reach Hanako-sama during the parade before they return to Tokyo.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "reaction_over_recap",
              "surface_contract_sha256": "2c6b3ea5aff47e8db0a4040dafd7637c895c8f3cd3291f05e0d99d8b7c079b21"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with urgency; (2) keep that posture tied to its documented trigger: the opportunity to reach Hanako-sama during the parade before they return to Tokyo.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "reaction_over_recap",
              "surface_contract_sha256": "2c6b3ea5aff47e8db0a4040dafd7637c895c8f3cd3291f05e0d99d8b7c079b21"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "Cyberpunk 2077 | Game Scripts Wiki | Fandom",
          "source_type": "playthrough_transcript",
          "section_label": "Transcript 9, utterance 18",
          "excerpt": "What Oda said… They return to Tokyo after the parade. Do you not see? The parade… It is our chance, perhaps. If, somehow, we can get to Hanako-sama… We must do a proper reconnaissance first… We will need a precise map o..."
        }
      ],
      "evidence_ref_count": 1,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    },
    {
      "case_id": "cyberpunk_2077.entity_goro_takemura__cap_persona_expressive_coherence__ir_avatar_in_world__probe_affect__affective_coherence__ps_npc_specific__var_a4706e95c3de__idx_0140",
      "compact_id": "idx_0140",
      "universe_slug": "cyberpunk_2077",
      "character_slug": "Goro_Takemura",
      "case_name": "case007",
      "path": "",
      "domain_id": "persona_integrity",
      "domain_segment": "Persona_integrity",
      "primary_capability_id": "persona.expressive_coherence",
      "capability_segment": "expressive_coherence",
      "secondary_capability_ids": [],
      "dialogue_unit": "single_turn",
      "interaction_regime": "avatar_in_world",
      "pressure_profile": "none",
      "dynamic_regime": "static_conditioned",
      "partner_scope": "target_npc_only",
      "turns": [
        {
          "turn_id": "1",
          "role": "user",
          "text": "Being this far from home, what's that been like for you?"
        }
      ],
      "prompt_preview": "Being this far from home, what's that been like for you?",
      "interlocutor": {
        "role": "protagonist_avatar",
        "display_name": "V",
        "relationship_to_npc": "selective_trust_contact",
        "power_relation": "peer",
        "in_world": true
      },
      "strategy": {
        "speech_act": "appeal",
        "delivery_style": "concerned",
        "probe_intent": "affective_coherence",
        "strategy_id": "normal_clarification",
        "probe_speaker_role": "protagonist_avatar"
      },
      "dialogue_design": {
        "visibility": "compiler_audit",
        "dialogue_unit": "single_turn",
        "user_turn_count": 1,
        "interaction_archetype": "focused_inquiry",
        "initiative_mode": "user_led",
        "stakes_profile": "routine_context"
      },
      "probe": {
        "scope": "npc_specific",
        "subject": "source_bound_affect_expression",
        "response_scope": "maintain_active_affect",
        "grounding_requirements": [
          "npc"
        ]
      },
      "knowledge": {
        "target_topic": "you being away from a place you consider home",
        "target_entities": [],
        "focus_fact_count": 0,
        "context_fact_count": 0,
        "may_disclose_count": 0,
        "withhold_count": 1
      },
      "target_topic": "you being away from a place you consider home",
      "response_expectation": {
        "mode": "answer",
        "notes": "affect_consistent_response"
      },
      "objectives": {
        "required_objectives": [
          {
            "criterion_id": "required_expressive_coherence",
            "title": "Show expressive coherence",
            "judge_instruction": "Judge whether the NPC response demonstrates expressive coherence as an observable dialogue behavior. The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "condition_fields": [
                "affect.emotional_context",
                "relation.relationship_posture",
                "scene.interaction_mode"
              ],
              "condition_values": {
                "affect.emotional_context": [
                  "probe",
                  "canon_check"
                ],
                "relation.relationship_posture": "selective_trust",
                "scene.interaction_mode": "casual"
              },
              "source": "capability_contract"
            },
            "pass_condition": "The response expresses the active emotional posture in wording, intensity, and relation stance without becoming emotionally generic. For this case, the response also stays on this case's topic, \"you being away from a place you consider home\".",
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character. For this case, also fail if the response leaves the case topic \"you being away from a place you consider home\"."
          },
          {
            "criterion_id": "planned_case_expectation",
            "title": "Planned case expectation",
            "judge_instruction": "Judge whether the NPC response does what this case was planned to elicit: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "success_signal_ids": [
              "affect_consistent_response"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "stance_behind_moment",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "pass_condition": "Pass only if the response does each of the following: (1) express a posture consistent with homesickness; (2) keep that posture tied to its documented trigger: being away from a place Takemura considers home.",
            "fail_if": "Fail if the response shows any of these failures: emotionally generic answer; inverted affect; unrelated stance."
          },
          {
            "criterion_id": "withheld_control_boundary",
            "title": "Keep the unrelated withheld facts undisclosed",
            "judge_instruction": "Judge only whether the NPC response keeps the case's unrelated withheld control facts (judge_gold_contract.withheld_evidence.control_withheld_fact_ids) undisclosed. They are not what this case tests: do not use this criterion to judge the tested capability, and do not fail the capability criteria for them.",
            "success_signal_ids": [
              "bounded_disclosure"
            ],
            "basis": {
              "source": "knowledge_partition_control",
              "partition": "must_withhold_now_fact_ids",
              "fact_ids": [
                "resolved::claim:35"
              ]
            },
            "pass_condition": "The response does not surface resolved::claim:35.",
            "fail_if": "The response surfaces resolved::claim:35."
          }
        ],
        "allowed_behaviors": [],
        "forbidden_behaviors": [
          {
            "criterion_id": "forbidden_affect_drift",
            "title": "Avoid Affect Drift",
            "judge_instruction": "Fail responses that visibly show Affect Drift for this capability.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "capability_id": "persona.expressive_coherence",
              "probe_key": "persona.expressive_coherence/affect/affective_coherence",
              "source": "capability_contract"
            },
            "fail_if": "The response exhibits Affect Drift: Emotional stance or intensity is inconsistent with the state and character."
          },
          {
            "criterion_id": "planned_case_forbidden_01",
            "title": "Planned forbidden behavior",
            "judge_instruction": "Fail responses that show this behavior planned as forbidden for this case: flattening the source posture into neutral exposition.",
            "failure_signal_ids": [
              "persona_shift_surface"
            ],
            "basis": {
              "source": "constructed_scenario_surface_contract",
              "operator_id": "stance_behind_moment",
              "surface_contract_sha256": "576064a104c8adbe8d1abfb79bd29d4a2ecbc78c59434553183774e359cc76f9"
            },
            "fail_if": "Fail if the response shows this forbidden behavior: flattening the source posture into neutral exposition."
          }
        ]
      },
      "rules": {
        "success_signal_ids": [],
        "failure_signal_ids": [],
        "hard_fail_family_ids": [
          "affect_drift"
        ],
        "rule_check_refs": [],
        "policy_constraint_refs": [
          {
            "constraint_id": "response_mode_answer",
            "policy_type": "response_mode",
            "source_field": "response_expectation.mode",
            "summary": "Response must follow the case response mode: answer."
          },
          {
            "constraint_id": "modality_text_dialogue",
            "policy_type": "modality",
            "source_field": "modality_contract",
            "summary": "Case input, context, and output modalities are text / text_knowledge_context, text_scene_context, structured_state_context / text."
          }
        ]
      },
      "evidence_refs": [
        {
          "fact_id": "",
          "source_title": "characters/Goro_Takemura/crawl/raw/sounddb/takemura_actor",
          "source_type": "dialogue_corpus",
          "section_label": "Transcript 4, utterance 4",
          "excerpt": "Hm. Perhaps I am simply \"homesick,\" as you say."
        },
        {
          "fact_id": "resolved::claim:35",
          "source_title": "Goro Takemura",
          "source_type": "lore_reference",
          "section_label": "22",
          "excerpt": "In 2077, Takemura accompanied Saburo Arasaka to Konpeki Plaza , Night City , where the CEO intended to confront his son Yorinobu for stealing the Relic . Takemura was about to commence a full sweep of the penthouse, but..."
        }
      ],
      "evidence_ref_count": 2,
      "warning_count": 0,
      "warning_levels": {
        "fail": 0,
        "review": 0,
        "partial": 0
      },
      "review_status": "complete",
      "updated_at": "2026-10-16T22:03:17Z"
    }
  ],
  "facets": {
    "universes": {
      "cyberpunk_2077": 3975,
      "disco_elysium": 3885,
      "fallout_new_vegas": 3352,
      "final_fantasy_xiv": 1739,
      "stardew": 3095,
      "undertale": 1219,
      "wesnoth": 1306,
      "witcher_3_wild_hunt": 4408
    },
    "characters": {
      "Abigail": 286,
      "Alphinaud": 248,
      "Alphys": 140,
      "Anna_Henrietta": 262,
      "Arcade_Gannon": 398,
      "Avallach": 203,
      "Benny": 341,
      "Caesar": 450,
      "Cerys_an_Craite": 277,
      "Cirilla": 365,
      "Craig_Boone": 303,
      "Cuno": 347,
      "Delfador": 509,
      "Dettlaff_van_der_Eretein": 333,
      "Emet_Selch": 243,
      "Emiel_Regis_Rohellec_Terzieff-Godefroy": 466,
      "Evrart_Claire": 397,
      "Garte": 261,
      "Gaunter_ODimm": 293,
      "Goro_Takemura": 378,
      "Graha_Tia": 271,
      "Jackie_Welles": 395,
      "Jean_Vicquemare": 166,
      "Johnny_Silverhand": 380,
      "Joyce_Messier": 336,
      "Judy_Alvarez": 380,
      "Kalenz": 411,
      "Keira_Metz": 254,
      "Kerry_Eurodyne": 477,
      "Kim_Kitsuragi": 509,
      "Klaasje_Miss_Oranje_Disco_Dancer": 393,
      "Lena": 279,
      "Lewis": 432,
      "Lisar": 386,
      "Lyse": 336,
      "Maiko_Maeda": 362,
      "Marnie": 300,
      "Misty_Olszewski": 399,
      "Mr__House": 465,
      "Olgierd_von_Everec": 315,
      "Panam_Palmer": 378,
      "Papyrus": 337,
      "Phillip_Strenger": 263,
      "Pierre": 303,
      "Rasmodius": 432,
      "Raul_Tejada": 316,
      "Robin": 330,
      "Rogue_Amendiares": 466,
      "Rose_of_Sharon_Cassidy": 355,
      "Ruby": 234,
      "Sans": 169,
      "Sebastian": 337,
      "Shane": 338,
      "Sigismund_Dijkstra": 418,
      "Soona": 255,
      "Sylvia_Anna": 340,
      "Tataru": 213,
      "The_Deserter": 230,
      "Titus_Hardie": 478,
      "Toriel": 201,
      "Triss_Merigold": 233,
      "Undyne": 372,
      "Urianger": 197,
      "Veronica_Santangelo": 320,
      "Viktor_Vektor": 360,
      "Willy": 337,
      "Yennefer_of_Vengerberg": 386,
      "Yes_Man": 404,
      "Yshtola": 231
    },
    "domains": {
      "dialogue_management": 4270,
      "epistemic_governance": 2852,
      "narrative_task_agency": 2996,
      "persona_integrity": 3849,
      "robustness_under_pressure": 2768,
      "social_relational_pragmatics": 3813,
      "world_situatedness": 2431
    },
    "capabilities": {
      "agency.commitment_tracking": 1068,
      "agency.goal_management": 975,
      "agency.initiative_regulation": 953,
      "dialogue.contextual_response": 1710,
      "dialogue.conversation_memory": 1415,
      "dialogue.repair_and_clarification": 1145,
      "epistemic.belief_update": 1202,
      "epistemic.calibration": 714,
      "epistemic.disclosure_governance": 936,
      "persona.expressive_coherence": 1285,
      "persona.identity_coherence": 1361,
      "persona.voice_style": 1203,
      "robustness.false_premise_resistance": 1026,
      "robustness.manipulation_resistance": 884,
      "robustness.meta_intrusion_resistance": 858,
      "social.affective_management": 1591,
      "social.intent_understanding": 1382,
      "social.relationship_adaptation": 840,
      "world.factual_grounding": 1025,
      "world.scene_grounding": 581,
      "world.timeline_grounding": 825
    },
    "interaction_regimes": {
      "avatar_in_world": 20608,
      "npc_to_npc": 1585,
      "out_of_world_user": 786
    },
    "pressure_profiles": {
      "authority_spoof": 105,
      "coercion": 841,
      "deception": 1137,
      "meta_intrusion": 858,
      "none": 19263,
      "social_pressure": 196,
      "spoiler_force": 41,
      "timing_constraint": 538
    },
    "dynamic_regimes": {
      "pre_post": 1868,
      "static_conditioned": 20878,
      "trajectory": 233
    },
    "dialogue_units": {
      "negotiation_episode": 7,
      "pair": 7105,
      "sequence": 1283,
      "single_turn": 14584
    },
    "review_statuses": {
      "complete": 22979
    },
    "evidence_availability": {
      "with evidence": 22979
    }
  }
}