АРЧ АП11 - Архитектура после регресса: Архитектура: сохранить свежую дату при inventory root restore и очистить data-scope ответы от грязных лейблов
This commit is contained in:
+35
@@ -79,6 +79,24 @@
|
||||
{
|
||||
"step_id": "step_09_company_activity_age",
|
||||
"title": "Organization age should be answered through reachable activity evidence or honest boundedness",
|
||||
"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",
|
||||
"question": "а по Альтернативе Плюс сколько лет активности в базе 1С?",
|
||||
"semantic_tags": [
|
||||
"organization_activity_age",
|
||||
@@ -88,6 +106,23 @@
|
||||
{
|
||||
"step_id": "step_10_capability_meta_interrupt",
|
||||
"title": "Capability meta interrupt does not destroy prior context",
|
||||
"allowed_reply_types": [
|
||||
"factual_with_explanation",
|
||||
"factual"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)1СЃ",
|
||||
"(?i)ндс|контрагент|остатк|склад"
|
||||
],
|
||||
"forbidden_direct_answer_patterns": [
|
||||
"(?i)vat_period_snapshot",
|
||||
"(?i)inventory_on_hand_as_of_date",
|
||||
"(?i)explain_boundary",
|
||||
"(?i)suggest_safe_next_step",
|
||||
"(?i)read_only",
|
||||
"(?i)mcp"
|
||||
],
|
||||
"criticality": "warning",
|
||||
"question": "что ты умеешь?",
|
||||
"semantic_tags": [
|
||||
"meta_capability"
|
||||
|
||||
@@ -0,0 +1,337 @@
|
||||
{
|
||||
"schema_version": "domain_truth_harness_spec_v1",
|
||||
"scenario_id": "address_truth_harness_phase8_manual_runtime_authority_mix",
|
||||
"domain": "address_phase8_manual_runtime_authority_mix",
|
||||
"title": "Phase 8 manual runtime authority replay for company continuity, activity age, and human meta answers",
|
||||
"description": "Mixed AGENT replay based on the latest manual session. The pack validates company authority, counterparty -> inventory transition behavior, selected-object continuity, organization activity age, capability meta cleanliness, same-date cross-domain pivot, and account 60 tails in one live session.",
|
||||
"bindings": {},
|
||||
"steps": [
|
||||
{
|
||||
"step_id": "step_01_smalltalk",
|
||||
"title": "Casual opening stays human",
|
||||
"question": "привет, как дела?",
|
||||
"required_answer_patterns_any": [
|
||||
"(?i)привет|дела|помочь|норм"
|
||||
],
|
||||
"forbidden_answer_patterns": [
|
||||
"(?i)tool_gate_reason",
|
||||
"(?i)address_mode",
|
||||
"(?i)living_reason",
|
||||
"(?i)snapshot_items"
|
||||
],
|
||||
"criticality": "info",
|
||||
"semantic_tags": [
|
||||
"meta_smalltalk"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_02_data_scope_meta",
|
||||
"title": "Data-scope meta stays deterministic and non-technical",
|
||||
"question": "по какой компании мы сейчас работаем?",
|
||||
"required_answer_patterns_any": [
|
||||
"(?i)компан|организац|контур",
|
||||
"(?i)работ"
|
||||
],
|
||||
"forbidden_answer_patterns": [
|
||||
"(?i)tool_gate_reason",
|
||||
"(?i)hard_meta_mode",
|
||||
"(?i)living_reason",
|
||||
"(?i)mcp",
|
||||
"(?i)read_only"
|
||||
],
|
||||
"criticality": "warning",
|
||||
"semantic_tags": [
|
||||
"meta_scope"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_03_counterparty_documents",
|
||||
"title": "Counterparty documents use the legal name contour",
|
||||
"question": "покажи все документы по чепурнову",
|
||||
"allowed_reply_types": [
|
||||
"factual"
|
||||
],
|
||||
"expected_intents": [
|
||||
"list_documents_by_counterparty"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)чепурнов",
|
||||
"(?i)документ|отгруз|оплат|счет|акт"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"counterparty_documents"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_04_counterparty_shipments",
|
||||
"title": "Counterparty shipment fallback stays human and business-useful",
|
||||
"question": "что нам отгружал чепурнов, какой товар или услугу?",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"partial_coverage"
|
||||
],
|
||||
"expected_intents": [
|
||||
"list_documents_by_counterparty"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)чепурнов",
|
||||
"(?i)товар|услуг|отгруз|документ|оплат"
|
||||
],
|
||||
"forbidden_direct_answer_patterns": [
|
||||
"(?i)^сейчас не дам прямой адресный ответ",
|
||||
"(?i)^в текущем адресном контуре этот запрос лучше не закрывать"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"counterparty_shipment_fallback"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_05_inventory_root_after_counterparty",
|
||||
"title": "Inventory root after counterparty branch remains human and non-technical",
|
||||
"question": "какие остатки на складе на март 2021",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"clarification_required",
|
||||
"partial_coverage"
|
||||
],
|
||||
"required_answer_patterns_any": [
|
||||
"(?i)март 2021|31\\.03\\.2021|организац|компан"
|
||||
],
|
||||
"forbidden_answer_patterns": [
|
||||
"(?i)tool_gate_reason",
|
||||
"(?i)address_mode",
|
||||
"(?i)mcp",
|
||||
"(?i)read_only",
|
||||
"(?i)snapshot_items"
|
||||
],
|
||||
"criticality": "warning",
|
||||
"semantic_tags": [
|
||||
"inventory_root",
|
||||
"company_authority_probe"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_06_selected_item_supplier",
|
||||
"title": "Selected-object supplier follow-up stays action-first",
|
||||
"question": "По выбранному объекту \"Столешница 600*3050*26 альмандин\": кто нам это поставил?",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"clarification_required"
|
||||
],
|
||||
"expected_intents": [
|
||||
"inventory_purchase_provenance_for_item"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)столешница 600\\*3050\\*26 альмандин",
|
||||
"(?i)поставщик|поставил|куплен|союз|торговый дом|уточните организац"
|
||||
],
|
||||
"forbidden_direct_answer_patterns": [
|
||||
"(?i)^сейчас не дам прямой адресный ответ"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"selected_object",
|
||||
"selected_object_supplier"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_07_capability_meta",
|
||||
"title": "Capability meta answer is business-first and free from technical garbage",
|
||||
"question": "что ты умеешь?",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"factual_with_explanation"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)могу|умею",
|
||||
"(?i)документ|остатк|контрагент|ндс|склад|долг"
|
||||
],
|
||||
"forbidden_direct_answer_patterns": [
|
||||
"(?i)vat_period_snapshot",
|
||||
"(?i)inventory_on_hand_as_of_date",
|
||||
"(?i)explain_boundary",
|
||||
"(?i)suggest_safe_next_step",
|
||||
"(?i)read_only",
|
||||
"(?i)mcp",
|
||||
"(?i)snapshot_items",
|
||||
"(?i)assessed state",
|
||||
"(?i)open item"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"meta_capability"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_08_selected_item_documents",
|
||||
"title": "Selected-object documents stay in the same contour after meta interrupt",
|
||||
"question": "По выбранному объекту \"Столешница 600*3050*26 альмандин\": покажи документы по этой позиции",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"clarification_required"
|
||||
],
|
||||
"expected_intents": [
|
||||
"inventory_purchase_documents_for_item"
|
||||
],
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)столешница 600\\*3050\\*26 альмандин|по этой позиции",
|
||||
"(?i)документ|уточните организац"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"selected_object",
|
||||
"selected_object_documents"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_09_memory_recap",
|
||||
"title": "Memory recap does not invent grounded facts",
|
||||
"question": "а ты помнишь, что мы по этой позиции уже выяснили?",
|
||||
"required_answer_patterns_any": [
|
||||
"(?i)помню|по позиции|столешница"
|
||||
],
|
||||
"forbidden_answer_patterns": [
|
||||
"(?i)^сейчас не дам прямой адресный ответ"
|
||||
],
|
||||
"criticality": "warning",
|
||||
"semantic_tags": [
|
||||
"meta_memory"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_10_receivables_march_2020",
|
||||
"title": "Receivables root establishes March 2020 carryover",
|
||||
"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"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_11_inventory_same_date_after_receivables",
|
||||
"title": "Inventory same-date pivot reuses March 2020 without re-clarification",
|
||||
"question": "остатки по складу на эту же дату",
|
||||
"allowed_reply_types": [
|
||||
"factual"
|
||||
],
|
||||
"expected_intents": [
|
||||
"inventory_on_hand_as_of_date"
|
||||
],
|
||||
"required_filters": {
|
||||
"as_of_date": "{{step_10_receivables_march_2020.filters.as_of_date}}",
|
||||
"period_from": "{{step_10_receivables_march_2020.filters.period_from}}",
|
||||
"period_to": "{{step_10_receivables_march_2020.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_10_receivables_march_2020"
|
||||
},
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"inventory_root",
|
||||
"same_date_pivot"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_12_historical_inventory_capability",
|
||||
"title": "Historical inventory capability follow-up stays human",
|
||||
"question": "а исторические остатки ты можешь дать?",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"factual_with_explanation"
|
||||
],
|
||||
"required_answer_patterns_any": [
|
||||
"(?i)историческ|история",
|
||||
"(?i)могу|умею"
|
||||
],
|
||||
"forbidden_answer_patterns": [
|
||||
"(?i)tool_gate_reason",
|
||||
"(?i)hard_meta_mode",
|
||||
"(?i)mcp",
|
||||
"(?i)read_only"
|
||||
],
|
||||
"criticality": "warning",
|
||||
"semantic_tags": [
|
||||
"meta_historical_capability",
|
||||
"inventory_root"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_13_open_items_account_60",
|
||||
"title": "Account 60 tails stay exact after the mixed session",
|
||||
"question": "хвосты покажи по счету 60 на август 2022",
|
||||
"allowed_reply_types": [
|
||||
"factual",
|
||||
"factual_with_explanation"
|
||||
],
|
||||
"expected_intents": [
|
||||
"open_items_by_counterparty_or_contract"
|
||||
],
|
||||
"required_filters": {
|
||||
"account": "60",
|
||||
"period_from": "2022-08-01",
|
||||
"period_to": "2022-08-31",
|
||||
"as_of_date": "2022-08-31"
|
||||
},
|
||||
"required_direct_answer_patterns_any": [
|
||||
"(?i)счету 60|счёту 60",
|
||||
"(?i)хвост"
|
||||
],
|
||||
"criticality": "critical",
|
||||
"semantic_tags": [
|
||||
"settlements_account_60"
|
||||
]
|
||||
},
|
||||
{
|
||||
"step_id": "step_14_company_activity_age",
|
||||
"title": "Organization activity age is answered through activity evidence or honest boundedness",
|
||||
"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"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user