ЮИ - редактура вопросов в АВТОПРОГОНАХ

This commit is contained in:
2026-04-18 10:13:16 +03:00
parent 0431595542
commit 9872ef5446
35 changed files with 1088 additions and 44 deletions
@@ -0,0 +1,136 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase9_proactive_scope_offer",
"domain": "address_phase9_proactive_scope_offer",
"title": "Phase 9 proactive organization offer replay for fresh multi-company sessions",
"description": "Focused AGENT replay for the new living-chat authority layer. The scenario validates that a fresh smalltalk turn can proactively surface organization choice, that the selected company becomes active for the session, that organization activity age remains reachable, and that same-date inventory follow-up does not fall back into repeated company clarification.",
"bindings": {},
"steps": [
{
"step_id": "step_01_smalltalk_with_scope_offer",
"title": "Fresh smalltalk offers organization scope without technical garbage",
"question": "привет, как дела?",
"required_answer_patterns_any": [
"(?i)привет|дела|норм|на связи",
"(?i)организац|компан"
],
"forbidden_answer_patterns": [
"(?i)tool_gate_reason",
"(?i)address_mode",
"(?i)living_reason",
"(?i)mcp",
"(?i)read_only",
"(?i)snapshot_items"
],
"criticality": "critical",
"semantic_tags": [
"meta_smalltalk",
"proactive_scope_offer"
]
},
{
"step_id": "step_02_choose_organization",
"title": "Bare company choice fixes active organization for the session",
"question": "Альтернатива Плюс",
"required_answer_patterns_any": [
"(?i)фиксир|рабочую организац",
"(?i)Альтернатива Плюс"
],
"forbidden_answer_patterns": [
"(?i)mcp",
"(?i)read_only",
"(?i)snapshot_items"
],
"criticality": "critical",
"semantic_tags": [
"company_selected",
"living_scope_selection"
]
},
{
"step_id": "step_03_company_activity_age",
"title": "Organization activity age is answered after proactive selection",
"question": "а по Альтернативе Плюс сколько лет активности в базе 1С?",
"allowed_reply_types": [
"factual",
"factual_with_explanation",
"partial_coverage"
],
"expected_intents": [
"counterparty_activity_lifecycle"
],
"expected_recipe": "address_counterparty_activity_lifecycle_v1",
"required_direct_answer_patterns_any": [
"(?i)активност",
"(?i)первая подтвержденная|не удается точно определить|лет"
],
"forbidden_direct_answer_patterns": [
"(?i)не найден контрагент",
"(?i)уточните точное наименование организации"
],
"criticality": "critical",
"semantic_tags": [
"organization_activity_age",
"company_selected"
]
},
{
"step_id": "step_04_receivables_root",
"title": "Receivables root keeps March 2020 in the active organization scope",
"question": "кто нам должен на март 2020?",
"allowed_reply_types": [
"factual"
],
"expected_intents": [
"receivables_confirmed_as_of_date"
],
"required_filters": {
"as_of_date": "2020-03-31",
"period_from": "2020-03-01",
"period_to": "2020-03-31"
},
"required_direct_answer_patterns_any": [
"(?i)дебитор",
"31\\.03\\.2020"
],
"criticality": "critical",
"semantic_tags": [
"settlements_receivables",
"company_selected"
]
},
{
"step_id": "step_05_inventory_same_date",
"title": "Inventory same-date follow-up does not ask for company again",
"question": "остатки по складу на эту же дату",
"allowed_reply_types": [
"factual"
],
"expected_intents": [
"inventory_on_hand_as_of_date"
],
"required_filters": {
"as_of_date": "{{step_04_receivables_root.filters.as_of_date}}",
"period_from": "{{step_04_receivables_root.filters.period_from}}",
"period_to": "{{step_04_receivables_root.filters.period_to}}"
},
"required_direct_answer_patterns_all": [
"(?i)на складе",
"31\\.03\\.2020"
],
"forbidden_direct_answer_patterns": [
"(?i)уточните организац",
"(?i)по какой компании"
],
"required_filter_within_previous_step_period": {
"as_of_date": "step_04_receivables_root"
},
"criticality": "critical",
"semantic_tags": [
"inventory_root",
"same_date_pivot",
"company_authority"
]
}
]
}