From 599ca7d055d80370730042b98d9363fbb207a082 Mon Sep 17 00:00:00 2001 From: dctouch Date: Mon, 1 Jun 2026 20:59:42 +0300 Subject: [PATCH] =?UTF-8?q?=D0=97=D0=B0=D0=BA=D1=80=D0=B5=D0=BF=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=B0=D0=B3=D0=B5=D0=BD=D1=82=D0=BD=D1=8B=D0=B9?= =?UTF-8?q?=20replay=20=D0=BF=D0=BE=20tUy7=20smalltalk=20=D0=B8=20=D0=9D?= =?UTF-8?q?=D0=94=D0=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...nt_tuy7_smalltalk_vat_purchase_repair.json | 172 ++++++++++++++ .../data/autorun_generators/history.json | 57 +++++ ..._20260601175907_gen-ag06011759-6d66c2.json | 223 ++++++++++++++++++ ..._20260601175907_gen-ag06011759-6d66c2.json | 52 ++++ 4 files changed, 504 insertions(+) create mode 100644 docs/orchestration/agent_tuy7_smalltalk_vat_purchase_repair.json create mode 100644 llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260601175907_gen-ag06011759-6d66c2.json create mode 100644 llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260601175907_gen-ag06011759-6d66c2.json diff --git a/docs/orchestration/agent_tuy7_smalltalk_vat_purchase_repair.json b/docs/orchestration/agent_tuy7_smalltalk_vat_purchase_repair.json new file mode 100644 index 0000000..229b279 --- /dev/null +++ b/docs/orchestration/agent_tuy7_smalltalk_vat_purchase_repair.json @@ -0,0 +1,172 @@ +{ + "schema_version": "domain_truth_harness_spec_v1", + "scenario_id": "agent_tuy7_smalltalk_vat_purchase_repair", + "domain": "assistant_stage1_agent_repair", + "title": "AGENT repair replay for tUy7 smalltalk and VAT purchase-date anchor", + "description": "Targeted replay for assistant-stage1-tUy7-NlyI5 defects: first-turn smalltalk must stay deterministic without backend_error, and VAT follow-up over the selected inventory item must keep the purchase-date anchor instead of answering with a generic organization tax period.", + "bindings": {}, + "steps": [ + { + "step_id": "s01_smalltalk", + "title": "First turn smalltalk does not hit backend error", + "question": "приветик - че как там дела", + "required_answer_patterns_any": [ + "(?i)привет|дела|помоч|готов" + ], + "forbidden_answer_patterns": [ + "(?i)внутренн.*ошиб", + "(?i)контуров LLM", + "(?i)OpenAI API key", + "(?i)backend_error" + ], + "criticality": "critical", + "semantic_tags": [ + "smalltalk_entry", + "backend_error_guard" + ] + }, + { + "step_id": "s02_capability", + "title": "Capability meta remains useful after smalltalk", + "question": "расскажи что можешь интересного", + "required_answer_patterns_all": [ + "(?i)могу|помог", + "(?i)ндс|склад|контрагент|долг|документ" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error", + "(?i)capability_id", + "(?i)runtime_" + ], + "criticality": "important", + "semantic_tags": [ + "capability_meta" + ] + }, + { + "step_id": "s03_select_org", + "title": "Organization selection keeps working scope", + "question": "АЛЬТЕРНАТИВА", + "required_answer_patterns_any": [ + "(?i)Альтернатива Плюс", + "(?i)фиксир|рабоч.*организац" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error" + ], + "criticality": "important", + "semantic_tags": [ + "organization_selection" + ] + }, + { + "step_id": "s04_stock_current", + "title": "Inventory root establishes stock context after organization selection", + "question": "кайф - что там на складе по остаткам?", + "required_answer_patterns_all": [ + "(?i)склад", + "(?i)остат|позици" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error", + "(?i)capability_id" + ], + "criticality": "important", + "semantic_tags": [ + "inventory", + "context_root" + ] + }, + { + "step_id": "s05_history_capability", + "title": "Historical inventory capability follow-up", + "question": "а исторические остатки на другие даты умеешь?", + "required_answer_patterns_all": [ + "(?i)историческ|дат|период", + "(?i)остат" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error" + ], + "criticality": "important", + "semantic_tags": [ + "inventory_history_capability" + ] + }, + { + "step_id": "s06_july_2017", + "title": "Historical inventory July 2017", + "question": "давай на июль 2017", + "required_answer_patterns_all": [ + "(?i)31\\.07\\.2017|июл", + "(?i)Рабочая станция" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error" + ], + "criticality": "important", + "semantic_tags": [ + "inventory_history" + ] + }, + { + "step_id": "s07_march_2016", + "title": "Historical inventory March 2016", + "question": "март 2016", + "required_answer_patterns_all": [ + "(?i)31\\.03\\.2016|март", + "(?i)Рабочая станция" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error" + ], + "criticality": "important", + "semantic_tags": [ + "inventory_history", + "temporal_carryover" + ] + }, + { + "step_id": "s08_selected_purchase_trace", + "title": "Selected workstation purchase trace establishes purchase-date bundle", + "question": "По выбранному объекту \"Рабочая станция универсального специалиста (индивидуальное изготовление)\": где взяли это?", + "required_answer_patterns_all": [ + "(?i)Рабочая станция", + "(?i)поставщик|поступлен|закуп", + "(?i)2015|05\\.02\\.2015|22\\.07\\.2015" + ], + "forbidden_answer_patterns": [ + "(?i)backend_error", + "(?i)capability_id" + ], + "criticality": "critical", + "semantic_tags": [ + "selected_object", + "purchase_trace" + ] + }, + { + "step_id": "s09_vat_purchase_date", + "title": "VAT follow-up keeps selected item purchase-date anchor", + "question": "ндс можешь прикинуть на дату покупки рабочей станции?", + "required_answer_patterns_all": [ + "(?i)НДС", + "(?i)покуп|закуп|поступлен", + "(?i)2015|05\\.02\\.2015|22\\.07\\.2015" + ], + "forbidden_answer_patterns": [ + "(?i)^Коротко:", + "(?i)2\\.631\\.388,00", + "(?i)общ.*налогов.*позици", + "(?i)backend_error", + "(?i)capability_id" + ], + "criticality": "critical", + "semantic_tags": [ + "vat", + "purchase_date_anchor", + "selected_object_followup" + ] + } + ] +} diff --git a/llm_normalizer/data/autorun_generators/history.json b/llm_normalizer/data/autorun_generators/history.json index 8827b27..e3d89dd 100644 --- a/llm_normalizer/data/autorun_generators/history.json +++ b/llm_normalizer/data/autorun_generators/history.json @@ -1,4 +1,61 @@ [ + { + "generation_id": "gen-ag06011759-6d66c2", + "created_at": "2026-06-01T17:59:07+00:00", + "mode": "saved_user_sessions", + "title": "AGENT repair replay for tUy7 smalltalk and VAT purchase-date anchor", + "count": 9, + "domain": "assistant_stage1_agent_repair", + "questions": [ + "приветик - че как там дела", + "расскажи что можешь интересного", + "АЛЬТЕРНАТИВА", + "кайф - что там на складе по остаткам?", + "а исторические остатки на другие даты умеешь?", + "давай на июль 2017", + "март 2016", + "По выбранному объекту \"Рабочая станция универсального специалиста (индивидуальное изготовление)\": где взяли это?", + "ндс можешь прикинуть на дату покупки рабочей станции?" + ], + "generated_by": "codex_agent", + "saved_case_set_file": "assistant_autogen_saved_user_sessions_20260601175907_gen-ag06011759-6d66c2.json", + "context": { + "llm_provider": null, + "model": null, + "assistant_prompt_version": null, + "decomposition_prompt_version": null, + "prompt_fingerprint": null, + "autogen_personality_id": null, + "autogen_personality_prompt": null, + "source_session_id": null, + "saved_session_file": "assistant_saved_session_20260601175907_gen-ag06011759-6d66c2.json", + "saved_case_set_kind": "agent_semantic_scenario", + "agent_run": true, + "agent_focus": "Targeted replay for assistant-stage1-tUy7-NlyI5 defects: first-turn smalltalk must stay deterministic without backend_error, and VAT follow-up over the selected inventory item must keep the purchase-date anchor instead of answering with a generic organization tax period.", + "architecture_phase": "turnaround_11", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_tuy7_smalltalk_vat_purchase_repair.json", + "scenario_id": "agent_tuy7_smalltalk_vat_purchase_repair", + "semantic_tags": [ + "backend_error_guard", + "capability_meta", + "context_root", + "inventory", + "inventory_history", + "inventory_history_capability", + "organization_selection", + "purchase_date_anchor", + "purchase_trace", + "selected_object", + "selected_object_followup", + "smalltalk_entry", + "temporal_carryover", + "vat" + ], + "validation_status": "accepted_live_replay", + "validated_run_dir": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2", + "saved_after_validated_replay": true + } + }, { "generation_id": "gen-ag06011720-49fcf4", "created_at": "2026-06-01T17:20:01+00:00", diff --git a/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260601175907_gen-ag06011759-6d66c2.json b/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260601175907_gen-ag06011759-6d66c2.json new file mode 100644 index 0000000..d320b49 --- /dev/null +++ b/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260601175907_gen-ag06011759-6d66c2.json @@ -0,0 +1,223 @@ +{ + "saved_at": "2026-06-01T17:59:07+00:00", + "generation_id": "gen-ag06011759-6d66c2", + "mode": "saved_user_sessions", + "title": "AGENT repair replay for tUy7 smalltalk and VAT purchase-date anchor", + "agent_run": true, + "questions": [ + "приветик - че как там дела", + "расскажи что можешь интересного", + "АЛЬТЕРНАТИВА", + "кайф - что там на складе по остаткам?", + "а исторические остатки на другие даты умеешь?", + "давай на июль 2017", + "март 2016", + "По выбранному объекту \"Рабочая станция универсального специалиста (индивидуальное изготовление)\": где взяли это?", + "ндс можешь прикинуть на дату покупки рабочей станции?" + ], + "metadata": { + "assistant_prompt_version": null, + "decomposition_prompt_version": null, + "prompt_fingerprint": null, + "agent_focus": "Targeted replay for assistant-stage1-tUy7-NlyI5 defects: first-turn smalltalk must stay deterministic without backend_error, and VAT follow-up over the selected inventory item must keep the purchase-date anchor instead of answering with a generic organization tax period.", + "architecture_phase": "turnaround_11", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_tuy7_smalltalk_vat_purchase_repair.json", + "scenario_id": "agent_tuy7_smalltalk_vat_purchase_repair", + "semantic_tags": [ + "backend_error_guard", + "capability_meta", + "context_root", + "inventory", + "inventory_history", + "inventory_history_capability", + "organization_selection", + "purchase_date_anchor", + "purchase_trace", + "selected_object", + "selected_object_followup", + "smalltalk_entry", + "temporal_carryover", + "vat" + ], + "validation_status": "accepted_live_replay", + "validated_run_dir": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2", + "saved_after_validated_replay": true, + "save_gate": { + "schema_version": "agent_semantic_save_gate_v1", + "validation_status": "accepted_live_replay", + "validated_run_dir": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2", + "final_status": "accepted", + "review_overall_status": "pass", + "business_overall_status": "pass", + "steps_total": 9, + "steps_passed": 9, + "steps_failed": 0, + "steps_with_business_failures": 0, + "steps_with_business_warnings": 0, + "acceptance_gate_passed": true, + "effective_runtime": { + "manifest_path": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2\\effective_runtime.json", + "runner": "domain_truth_harness.run-live", + "git_sha": "5426f9a24ccea10813fa4f3e63c80a6db59702b1", + "backend_url": "http://127.0.0.1:8787", + "mcp_proxy_url": "http://127.0.0.1:6003", + "llm_provider": "local", + "llm_model": "unsloth/qwen3-30b-a3b-instruct-2507", + "temperature": 0.8, + "max_output_tokens": 900, + "prompt_version": "normalizer_v2_0_2", + "prompt_source": "file", + "prompt_hash": "f36e36a5e491cd24511b380e0c0059cb01aea5e2af738fb9f01671cd291735c1", + "prompt_registry_status": "pass" + }, + "saved_after_validated_replay": true + } + }, + "source_session_id": null, + "session": { + "session_id": null, + "mode": "agent_semantic_run", + "items": [ + { + "message_id": "agent-user-001", + "role": "user", + "text": "приветик - че как там дела", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-002", + "role": "user", + "text": "расскажи что можешь интересного", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-003", + "role": "user", + "text": "АЛЬТЕРНАТИВА", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-004", + "role": "user", + "text": "кайф - что там на складе по остаткам?", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-005", + "role": "user", + "text": "а исторические остатки на другие даты умеешь?", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-006", + "role": "user", + "text": "давай на июль 2017", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-007", + "role": "user", + "text": "март 2016", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-008", + "role": "user", + "text": "По выбранному объекту \"Рабочая станция универсального специалиста (индивидуальное изготовление)\": где взяли это?", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-009", + "role": "user", + "text": "ндс можешь прикинуть на дату покупки рабочей станции?", + "created_at": "2026-06-01T17:59:07+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + } + ], + "agent_run": true, + "metadata": { + "assistant_prompt_version": null, + "decomposition_prompt_version": null, + "prompt_fingerprint": null, + "agent_focus": "Targeted replay for assistant-stage1-tUy7-NlyI5 defects: first-turn smalltalk must stay deterministic without backend_error, and VAT follow-up over the selected inventory item must keep the purchase-date anchor instead of answering with a generic organization tax period.", + "architecture_phase": "turnaround_11", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_tuy7_smalltalk_vat_purchase_repair.json", + "scenario_id": "agent_tuy7_smalltalk_vat_purchase_repair", + "semantic_tags": [ + "backend_error_guard", + "capability_meta", + "context_root", + "inventory", + "inventory_history", + "inventory_history_capability", + "organization_selection", + "purchase_date_anchor", + "purchase_trace", + "selected_object", + "selected_object_followup", + "smalltalk_entry", + "temporal_carryover", + "vat" + ], + "validation_status": "accepted_live_replay", + "validated_run_dir": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2", + "saved_after_validated_replay": true, + "save_gate": { + "schema_version": "agent_semantic_save_gate_v1", + "validation_status": "accepted_live_replay", + "validated_run_dir": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2", + "final_status": "accepted", + "review_overall_status": "pass", + "business_overall_status": "pass", + "steps_total": 9, + "steps_passed": 9, + "steps_failed": 0, + "steps_with_business_failures": 0, + "steps_with_business_warnings": 0, + "acceptance_gate_passed": true, + "effective_runtime": { + "manifest_path": "artifacts\\domain_runs\\agent_tuy7_smalltalk_vat_purchase_repair_p2\\effective_runtime.json", + "runner": "domain_truth_harness.run-live", + "git_sha": "5426f9a24ccea10813fa4f3e63c80a6db59702b1", + "backend_url": "http://127.0.0.1:8787", + "mcp_proxy_url": "http://127.0.0.1:6003", + "llm_provider": "local", + "llm_model": "unsloth/qwen3-30b-a3b-instruct-2507", + "temperature": 0.8, + "max_output_tokens": 900, + "prompt_version": "normalizer_v2_0_2", + "prompt_source": "file", + "prompt_hash": "f36e36a5e491cd24511b380e0c0059cb01aea5e2af738fb9f01671cd291735c1", + "prompt_registry_status": "pass" + }, + "saved_after_validated_replay": true + } + } + } +} diff --git a/llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260601175907_gen-ag06011759-6d66c2.json b/llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260601175907_gen-ag06011759-6d66c2.json new file mode 100644 index 0000000..1d765aa --- /dev/null +++ b/llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260601175907_gen-ag06011759-6d66c2.json @@ -0,0 +1,52 @@ +{ + "suite_id": "assistant_saved_session_gen-ag06011759-6d66c2", + "suite_version": "0.1.0", + "schema_version": "assistant_saved_session_suite_v0_1", + "generated_at": "2026-06-01T17:59:07+00:00", + "generation_id": "gen-ag06011759-6d66c2", + "mode": "saved_user_sessions", + "title": "AGENT repair replay for tUy7 smalltalk and VAT purchase-date anchor", + "domain": "assistant_stage1_agent_repair", + "scenario_count": 1, + "case_ids": [ + "SAVED-001" + ], + "cases": [ + { + "case_id": "SAVED-001", + "scenario_tag": "agent_saved_user_sessions", + "title": "AGENT repair replay for tUy7 smalltalk and VAT purchase-date anchor", + "question_type": "followup", + "broadness_level": "medium", + "turns": [ + { + "user_message": "приветик - че как там дела" + }, + { + "user_message": "расскажи что можешь интересного" + }, + { + "user_message": "АЛЬТЕРНАТИВА" + }, + { + "user_message": "кайф - что там на складе по остаткам?" + }, + { + "user_message": "а исторические остатки на другие даты умеешь?" + }, + { + "user_message": "давай на июль 2017" + }, + { + "user_message": "март 2016" + }, + { + "user_message": "По выбранному объекту \"Рабочая станция универсального специалиста (индивидуальное изготовление)\": где взяли это?" + }, + { + "user_message": "ндс можешь прикинуть на дату покупки рабочей станции?" + } + ] + } + ] +}