ARCH: добить all-time и period-first clarification loops

This commit is contained in:
2026-04-23 13:00:54 +03:00
parent 053a3bf157
commit 8a1ae696dc
16 changed files with 397 additions and 26 deletions
@@ -0,0 +1,70 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase47_multi_hop_open_net_period_first_clarification_loop",
"domain": "address_phase47_multi_hop_open_net_period_first_clarification_loop",
"title": "Phase 47 multi-hop open net period-first clarification loop",
"description": "Targeted AGENT replay for Big Block F where an open-scope net question asks for both organization and period, then keeps the same net loop after a period-only clarification, and finally answers after the second clarification provides the organization.",
"bindings": {},
"steps": [
{
"step_id": "step_01_open_net_requires_org_and_period",
"title": "Open net question asks for both organization and period",
"question": "Какое нетто по деньгам: сколько получили и сколько заплатили?",
"allowed_reply_types": ["clarification_required", "partial_coverage", "factual_with_explanation"],
"required_answer_patterns_all": [
"(?i)уточн|нужно",
"(?i)организац",
"(?i)период"
],
"forbidden_answer_patterns": [
"(?i)уточните контрагента",
"(?i)не найден контрагент",
"(?i)по какому контрагенту",
"(?i)не найдено контрагента"
],
"criticality": "critical",
"semantic_tags": ["open_scope_net", "multi_hop_clarification", "organization_scope", "period_scope", "bounded_autonomy"]
},
{
"step_id": "step_02_period_only_clarification_keeps_same_net_loop",
"title": "Period-only clarification preserves the same net loop and asks only for the organization",
"question": "за 2020 год",
"allowed_reply_types": ["clarification_required", "partial_coverage"],
"required_answer_patterns_all": [
"(?i)уточн|нужно",
"(?i)организац"
],
"forbidden_answer_patterns": [
"(?i)период",
"(?i)уточните контрагента",
"(?i)не найден контрагент"
],
"criticality": "critical",
"semantic_tags": ["open_scope_net", "multi_hop_clarification", "period_followup_reuse", "bounded_autonomy"]
},
{
"step_id": "step_03_org_clarification_completes_same_net_loop",
"title": "Organization clarification completes the same net loop and yields a bounded net answer",
"question": "по ООО Альтернатива Плюс",
"allowed_reply_types": ["factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": [
"(?i)2020",
"(?i)получ|входящ|заплат|исходящ|нетто",
"(?i)руб"
],
"required_answer_patterns_any": [
"(?i)альтернатива",
"(?i)проверенн|найденн",
"(?i)разниц|нетто"
],
"forbidden_answer_patterns": [
"(?i)уточните организацию",
"(?i)уточните период",
"(?i)уточните контрагента",
"(?i)не найден контрагент"
],
"criticality": "critical",
"semantic_tags": ["open_scope_net", "multi_hop_clarification", "organization_followup_reuse", "bounded_autonomy"]
}
]
}
@@ -0,0 +1,69 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase48_multi_hop_open_total_all_time_clarification_loop",
"domain": "address_phase48_multi_hop_open_total_all_time_clarification_loop",
"title": "Phase 48 multi-hop open total all-time clarification loop",
"description": "Targeted AGENT replay for Big Block F where an open-scope incoming-total question asks for both organization and period, then keeps the same total loop after an organization-only clarification, and finally accepts 'за все время' as the period clarification that clears the remaining gap and produces a bounded answer.",
"bindings": {},
"steps": [
{
"step_id": "step_01_open_total_requires_org_and_period",
"title": "Open total question asks for both organization and period",
"question": "Сколько вообще входящих денег было?",
"allowed_reply_types": ["clarification_required", "partial_coverage", "factual_with_explanation"],
"required_answer_patterns_all": [
"(?i)уточн|нужно",
"(?i)организац",
"(?i)период"
],
"forbidden_answer_patterns": [
"(?i)уточните контрагента",
"(?i)не найден контрагент",
"(?i)по какому контрагенту",
"(?i)не найдено контрагента"
],
"criticality": "critical",
"semantic_tags": ["open_scope_total", "multi_hop_clarification", "organization_scope", "period_scope", "bounded_autonomy"]
},
{
"step_id": "step_02_org_only_clarification_keeps_same_total_loop",
"title": "Organization-only clarification preserves the same total loop and asks only for the period",
"question": "по ООО Альтернатива Плюс",
"allowed_reply_types": ["clarification_required", "partial_coverage"],
"required_answer_patterns_all": [
"(?i)уточн|нужно",
"(?i)период"
],
"forbidden_answer_patterns": [
"(?i)организац",
"(?i)уточните контрагента",
"(?i)не найден контрагент"
],
"criticality": "critical",
"semantic_tags": ["open_scope_total", "multi_hop_clarification", "organization_followup_reuse", "bounded_autonomy"]
},
{
"step_id": "step_03_all_time_clarification_completes_same_total_loop",
"title": "All-time clarification clears the remaining period gap and yields a bounded total answer",
"question": "за все время",
"allowed_reply_types": ["factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": [
"(?i)входящ|получ",
"(?i)руб"
],
"required_answer_patterns_any": [
"(?i)все время|доступное время|проверенн",
"(?i)альтернатива",
"(?i)найденн"
],
"forbidden_answer_patterns": [
"(?i)уточните организацию",
"(?i)уточните период",
"(?i)уточните контрагента",
"(?i)не найден контрагент"
],
"criticality": "critical",
"semantic_tags": ["open_scope_total", "all_time_scope", "multi_hop_clarification", "bounded_autonomy"]
}
]
}