diff --git a/docs/orchestration/agent_inventory_margin_ranking_reliability_20260524.json b/docs/orchestration/agent_inventory_margin_ranking_reliability_20260524.json index a0fd84f..5697200 100644 --- a/docs/orchestration/agent_inventory_margin_ranking_reliability_20260524.json +++ b/docs/orchestration/agent_inventory_margin_ranking_reliability_20260524.json @@ -42,7 +42,8 @@ "follow-up period keeps margin intent", "cost-basis follow-up does not leak technical garbage", "period expansion keeps inventory margin context", - "account 41 guard does not become fixed-assets analysis" + "account 41 guard does not become fixed-assets analysis", + "selected-object and pronoun follow-ups keep the ranked item as focus_object" ], "must_not_have": [ "fixed assets leak", @@ -219,6 +220,79 @@ "банк.{0,80}(источник|достаточ|марж)", "route_id|capability_id|runtime_|debug" ] + }, + { + "step_id": "step_06_pronoun_selected_item_supplier", + "title": "Pronoun selected-item supplier follow-up keeps ranked item", + "question": "А по этой позиции кто поставщик?", + "depends_on": [ + "step_05_account_41_not_01" + ], + "node_role": "critical_child", + "paraphrase_family": "pronoun_followup", + "semantic_tags": [ + "inventory_margin_ranking", + "selected_object", + "pronoun_followup", + "supplier_followup", + "focus_object" + ], + "expected_intents": [ + "inventory_purchase_provenance_for_item" + ], + "expected_capability": "inventory_inventory_purchase_provenance_for_item", + "expected_recipe": "address_inventory_purchase_provenance_for_item_v1", + "expected_result_mode": "selected_object_purchase_provenance_or_honest_boundary", + "expected_business_answer_contract": "margin_profitability_v1", + "required_answer_shape": "direct_answer_first", + "required_state_objects": [ + "focus_object" + ], + "required_answer_patterns_any": [ + "Флаг геральдический|по этой позиции|поставщик|закуп|поступлен|не найден|не подтвержд" + ], + "forbidden_answer_patterns": [ + "амортизац", + "объект ОС", + "основн.{0,20}средств", + "route_id|capability_id|runtime_|debug" + ] + }, + { + "step_id": "step_07_ui_selected_item_purchase_document", + "title": "UI selected-object purchase document follow-up keeps ranked item", + "question": "По выбранному объекту \"{{step_outputs.step_06_pronoun_selected_item_supplier.focus_object.label}}\": каким документом подтверждена закупка?", + "depends_on": [ + "step_06_pronoun_selected_item_supplier" + ], + "node_role": "critical_child", + "paraphrase_family": "ui_selected_object", + "semantic_tags": [ + "inventory_margin_ranking", + "selected_object", + "ui_selected_object", + "purchase_document_followup", + "focus_object" + ], + "expected_intents": [ + "inventory_purchase_provenance_for_item", + "inventory_purchase_documents_for_item" + ], + "expected_result_mode": "selected_object_purchase_documents_or_honest_boundary", + "expected_business_answer_contract": "margin_profitability_v1", + "required_answer_shape": "direct_answer_first", + "required_state_objects": [ + "focus_object" + ], + "required_answer_patterns_any": [ + "Флаг геральдический|документ|поступлен|регистратор|накладн|закуп|не найден|не подтвержд" + ], + "forbidden_answer_patterns": [ + "амортизац", + "объект ОС", + "основн.{0,20}средств", + "route_id|capability_id|runtime_|debug" + ] } ] } diff --git a/llm_normalizer/data/autorun_generators/history.json b/llm_normalizer/data/autorun_generators/history.json index d816640..f640d61 100644 --- a/llm_normalizer/data/autorun_generators/history.json +++ b/llm_normalizer/data/autorun_generators/history.json @@ -1,4 +1,60 @@ [ + { + "generation_id": "gen-ag06020818-4993c6", + "created_at": "2026-06-02T08:18:38+00:00", + "mode": "saved_user_sessions", + "title": "AGENT | inventory margin ranking follow-up proof", + "count": 7, + "domain": "inventory_margin_ranking", + "questions": [ + "Какая номенклатура товара реализована с высокой прибылью, а какая с низкой?", + "май 2020", + "Покажи найденные строки себестоимостной базы.", + "Расширь до 2017 год.", + "Анализ по 41 счету, а не по 01.", + "А по этой позиции кто поставщик?", + "По выбранному объекту \"{{step_outputs.step_06_pronoun_selected_item_supplier.focus_object.label}}\": каким документом подтверждена закупка?" + ], + "generated_by": "codex_agent", + "saved_case_set_file": "assistant_autogen_saved_user_sessions_20260602081838_gen-ag06020818-4993c6.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_20260602081838_gen-ag06020818-4993c6.json", + "saved_case_set_kind": "agent_semantic_scenario", + "agent_run": true, + "agent_focus": "inventory-margin-ranking-selected-object-followups", + "architecture_phase": "assistant-stage1", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_inventory_margin_ranking_reliability_20260524.json", + "scenario_id": null, + "semantic_tags": [ + "account_family_guard", + "carryover", + "domain_purity", + "evidence_followup", + "focus_object", + "inventory_margin_ranking", + "needs_period", + "no_fixed_assets", + "period_expansion", + "period_followup", + "pronoun_followup", + "purchase_document_followup", + "selected_object", + "supplier_followup", + "ui_selected_object" + ], + "validation_status": "accepted_domain_pack_loop", + "validated_run_dir": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9", + "saved_after_validated_replay": true + } + }, { "generation_id": "gen-ag06020725-192110", "created_at": "2026-06-02T07:25:31+00:00", diff --git a/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260602081838_gen-ag06020818-4993c6.json b/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260602081838_gen-ag06020818-4993c6.json new file mode 100644 index 0000000..1dbe9df --- /dev/null +++ b/llm_normalizer/data/autorun_generators/saved_sessions/assistant_saved_session_20260602081838_gen-ag06020818-4993c6.json @@ -0,0 +1,211 @@ +{ + "saved_at": "2026-06-02T08:18:38+00:00", + "generation_id": "gen-ag06020818-4993c6", + "mode": "saved_user_sessions", + "title": "AGENT | inventory margin ranking follow-up proof", + "agent_run": true, + "questions": [ + "Какая номенклатура товара реализована с высокой прибылью, а какая с низкой?", + "май 2020", + "Покажи найденные строки себестоимостной базы.", + "Расширь до 2017 год.", + "Анализ по 41 счету, а не по 01.", + "А по этой позиции кто поставщик?", + "По выбранному объекту \"{{step_outputs.step_06_pronoun_selected_item_supplier.focus_object.label}}\": каким документом подтверждена закупка?" + ], + "metadata": { + "assistant_prompt_version": null, + "decomposition_prompt_version": null, + "prompt_fingerprint": null, + "agent_focus": "inventory-margin-ranking-selected-object-followups", + "architecture_phase": "assistant-stage1", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_inventory_margin_ranking_reliability_20260524.json", + "scenario_id": null, + "semantic_tags": [ + "account_family_guard", + "carryover", + "domain_purity", + "evidence_followup", + "focus_object", + "inventory_margin_ranking", + "needs_period", + "no_fixed_assets", + "period_expansion", + "period_followup", + "pronoun_followup", + "purchase_document_followup", + "selected_object", + "supplier_followup", + "ui_selected_object" + ], + "validation_status": "accepted_domain_pack_loop", + "validated_run_dir": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9", + "saved_after_validated_replay": true, + "save_gate": { + "schema_version": "agent_semantic_save_gate_v1", + "validation_status": "accepted_domain_pack_loop", + "validated_run_dir": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9", + "final_status": "accepted", + "loop_id": "agent_inventory_margin_ranking_reliability_20260602_p9", + "target_score": 90, + "iterations_ran": 1, + "quality_score": 93, + "repair_target_count": 0, + "repair_target_severity_counts": { + "P0": 0, + "P1": 0, + "P2": 0 + }, + "accepted_gate": true, + "effective_runtime": { + "manifest_path": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9\\effective_runtime.json", + "runner": "domain_case_loop.run-pack-loop", + "git_sha": "d77bcbe482d5091a84ae176c79bc8ef3558bbb32", + "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-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-002", + "role": "user", + "text": "май 2020", + "created_at": "2026-06-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-003", + "role": "user", + "text": "Покажи найденные строки себестоимостной базы.", + "created_at": "2026-06-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-004", + "role": "user", + "text": "Расширь до 2017 год.", + "created_at": "2026-06-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-005", + "role": "user", + "text": "Анализ по 41 счету, а не по 01.", + "created_at": "2026-06-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-006", + "role": "user", + "text": "А по этой позиции кто поставщик?", + "created_at": "2026-06-02T08:18:38+00:00", + "reply_type": null, + "trace_id": null, + "debug": null + }, + { + "message_id": "agent-user-007", + "role": "user", + "text": "По выбранному объекту \"{{step_outputs.step_06_pronoun_selected_item_supplier.focus_object.label}}\": каким документом подтверждена закупка?", + "created_at": "2026-06-02T08:18:38+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": "inventory-margin-ranking-selected-object-followups", + "architecture_phase": "assistant-stage1", + "source_spec_file": "X:\\1C\\NDC_1C\\docs\\orchestration\\agent_inventory_margin_ranking_reliability_20260524.json", + "scenario_id": null, + "semantic_tags": [ + "account_family_guard", + "carryover", + "domain_purity", + "evidence_followup", + "focus_object", + "inventory_margin_ranking", + "needs_period", + "no_fixed_assets", + "period_expansion", + "period_followup", + "pronoun_followup", + "purchase_document_followup", + "selected_object", + "supplier_followup", + "ui_selected_object" + ], + "validation_status": "accepted_domain_pack_loop", + "validated_run_dir": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9", + "saved_after_validated_replay": true, + "save_gate": { + "schema_version": "agent_semantic_save_gate_v1", + "validation_status": "accepted_domain_pack_loop", + "validated_run_dir": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9", + "final_status": "accepted", + "loop_id": "agent_inventory_margin_ranking_reliability_20260602_p9", + "target_score": 90, + "iterations_ran": 1, + "quality_score": 93, + "repair_target_count": 0, + "repair_target_severity_counts": { + "P0": 0, + "P1": 0, + "P2": 0 + }, + "accepted_gate": true, + "effective_runtime": { + "manifest_path": "artifacts\\domain_runs\\agent_inventory_margin_ranking_reliability_20260602_p9\\effective_runtime.json", + "runner": "domain_case_loop.run-pack-loop", + "git_sha": "d77bcbe482d5091a84ae176c79bc8ef3558bbb32", + "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_20260602081838_gen-ag06020818-4993c6.json b/llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260602081838_gen-ag06020818-4993c6.json new file mode 100644 index 0000000..9bf863d --- /dev/null +++ b/llm_normalizer/data/eval_cases/assistant_autogen_saved_user_sessions_20260602081838_gen-ag06020818-4993c6.json @@ -0,0 +1,46 @@ +{ + "suite_id": "assistant_saved_session_gen-ag06020818-4993c6", + "suite_version": "0.1.0", + "schema_version": "assistant_saved_session_suite_v0_1", + "generated_at": "2026-06-02T08:18:38+00:00", + "generation_id": "gen-ag06020818-4993c6", + "mode": "saved_user_sessions", + "title": "AGENT | inventory margin ranking follow-up proof", + "domain": "inventory_margin_ranking", + "scenario_count": 1, + "case_ids": [ + "SAVED-001" + ], + "cases": [ + { + "case_id": "SAVED-001", + "scenario_tag": "agent_saved_user_sessions", + "title": "AGENT | inventory margin ranking follow-up proof", + "question_type": "followup", + "broadness_level": "medium", + "turns": [ + { + "user_message": "Какая номенклатура товара реализована с высокой прибылью, а какая с низкой?" + }, + { + "user_message": "май 2020" + }, + { + "user_message": "Покажи найденные строки себестоимостной базы." + }, + { + "user_message": "Расширь до 2017 год." + }, + { + "user_message": "Анализ по 41 счету, а не по 01." + }, + { + "user_message": "А по этой позиции кто поставщик?" + }, + { + "user_message": "По выбранному объекту \"{{step_outputs.step_06_pronoun_selected_item_supplier.focus_object.label}}\": каким документом подтверждена закупка?" + } + ] + } + ] +}