ОРРКЕСТРАЦИЯ - Усилить agent loop object-centric аудитом и добить pronoun follow-up по документам закупки
This commit is contained in:
@@ -41,9 +41,9 @@
|
||||
"buyer_candidate": "Департамент капитального ремонта города Москвы"
|
||||
},
|
||||
"question_pool": {
|
||||
"total_questions": 20,
|
||||
"total_questions": 21,
|
||||
"core_questions_total": 17,
|
||||
"followup_checkpoints_total": 3,
|
||||
"followup_checkpoints_total": 4,
|
||||
"questions": [
|
||||
{
|
||||
"question_id": "Q01",
|
||||
@@ -224,6 +224,15 @@
|
||||
"role": "critical_child",
|
||||
"wording_family": "ui_selected_object_colloquial",
|
||||
"semantic_goal": "проверить selected-object follow-up в закупочные документы без ручного переписывания item"
|
||||
},
|
||||
{
|
||||
"question_id": "Q21",
|
||||
"text": "покажи документы по этой позиции",
|
||||
"layer": "selected_item_provenance",
|
||||
"node_id": "N05_selected_item_purchase_documents",
|
||||
"role": "critical_child",
|
||||
"wording_family": "pronoun_followup",
|
||||
"semantic_goal": "проверить короткий местоименный follow-up по активному товару без съезда в counterparty drilldown"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -247,6 +256,10 @@
|
||||
{
|
||||
"family_id": "followup_date_carryover",
|
||||
"description": "follow-up с фразой `на эту дату` или `на ту дату`, где дата обязана тянуться из предыдущего шага"
|
||||
},
|
||||
{
|
||||
"family_id": "pronoun_followup",
|
||||
"description": "короткий follow-up по активному объекту через местоимение или указатель типа `по ней`, `по этой позиции`, `ее`"
|
||||
}
|
||||
],
|
||||
"scenario_tree": {
|
||||
@@ -277,8 +290,8 @@
|
||||
"covers_question_ids": ["Q06", "Q19"],
|
||||
"expected_intents": ["inventory_purchase_provenance_for_item"],
|
||||
"expected_answer_shape": "direct_supplier_answer_first_then_evidence",
|
||||
"required_wording_families": ["canonical", "colloquial", "ui_selected_object", "ui_selected_object_colloquial"],
|
||||
"required_carryover_invariants": ["selected_object", "date_scope", "warehouse_scope", "organization_scope"],
|
||||
"required_wording_families": ["canonical", "colloquial", "ui_selected_object", "ui_selected_object_colloquial", "pronoun_followup"],
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "warehouse_scope", "organization_scope", "reusable_bundle"],
|
||||
"children": ["N04_selected_item_purchase_date", "N05_selected_item_purchase_documents", "N09_old_purchase_aging"]
|
||||
},
|
||||
{
|
||||
@@ -293,11 +306,11 @@
|
||||
{
|
||||
"node_id": "N05_selected_item_purchase_documents",
|
||||
"title": "Закупочные документы выбранного товара",
|
||||
"covers_question_ids": ["Q10", "Q20"],
|
||||
"covers_question_ids": ["Q10", "Q20", "Q21"],
|
||||
"expected_intents": ["inventory_purchase_documents_for_item"],
|
||||
"expected_answer_shape": "document_list_for_selected_item",
|
||||
"required_wording_families": ["canonical", "ui_selected_object", "ui_selected_object_colloquial"],
|
||||
"required_carryover_invariants": ["selected_object", "date_scope", "warehouse_scope"]
|
||||
"required_wording_families": ["canonical", "ui_selected_object", "ui_selected_object_colloquial", "pronoun_followup"],
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "warehouse_scope", "reusable_bundle", "followup_action_resolution"]
|
||||
},
|
||||
{
|
||||
"node_id": "N09_old_purchase_aging",
|
||||
@@ -381,7 +394,7 @@
|
||||
"to_node": "N05_selected_item_purchase_documents",
|
||||
"transition_type": "selected_object_deeper_trace",
|
||||
"primary_user_path": true,
|
||||
"required_carryover_invariants": ["selected_object", "date_scope"],
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "reusable_bundle", "followup_action_resolution"],
|
||||
"failure_means": "сломано углубление из поставщика в документы закупки"
|
||||
},
|
||||
{
|
||||
@@ -527,13 +540,13 @@
|
||||
{
|
||||
"scenario_id": "inventory_selected_item_provenance",
|
||||
"title": "Selected-item supplier provenance",
|
||||
"question_ids": ["Q02", "Q06", "Q09", "Q10", "Q19", "Q20"],
|
||||
"question_ids": ["Q02", "Q06", "Q09", "Q10", "Q19", "Q20", "Q21"],
|
||||
"node_ids": ["N01_stock_snapshot", "N03_selected_item_supplier", "N04_selected_item_purchase_date", "N05_selected_item_purchase_documents"],
|
||||
"acceptance_canon": {
|
||||
"root_step_id": "step_01_snapshot_historical",
|
||||
"primary_user_path": ["step_01_snapshot_historical", "step_02_selected_item_supplier_colloquial", "step_05_selected_item_documents_ui"],
|
||||
"required_paraphrase_families": ["canonical", "colloquial", "ui_selected_object", "ui_selected_object_colloquial"],
|
||||
"required_carryover_invariants": ["selected_object", "date_scope", "warehouse_scope", "organization_scope", "answer_shape"]
|
||||
"primary_user_path": ["step_01_snapshot_historical", "step_02_selected_item_supplier_colloquial", "step_06_selected_item_documents_pronoun"],
|
||||
"required_paraphrase_families": ["canonical", "colloquial", "ui_selected_object", "ui_selected_object_colloquial", "pronoun_followup"],
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "warehouse_scope", "organization_scope", "answer_shape", "reusable_bundle", "followup_action_resolution"]
|
||||
},
|
||||
"steps": [
|
||||
{
|
||||
@@ -606,10 +619,26 @@
|
||||
"source": "binding_target_date_historical"
|
||||
},
|
||||
"expected_capability": "inventory_purchase_documents_for_item",
|
||||
"required_carryover_invariants": ["selected_object", "date_scope"]
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "reusable_bundle", "followup_action_resolution"]
|
||||
},
|
||||
{
|
||||
"step_id": "step_06_selected_item_documents_canonical",
|
||||
"step_id": "step_06_selected_item_documents_pronoun",
|
||||
"question_id": "Q21",
|
||||
"node_id": "N05_selected_item_purchase_documents",
|
||||
"node_role": "critical_child",
|
||||
"paraphrase_family": "pronoun_followup",
|
||||
"title": "Selected item purchase documents pronoun follow-up",
|
||||
"question": "покажи документы по этой позиции",
|
||||
"depends_on": ["step_01_snapshot_historical", "step_02_selected_item_supplier_colloquial"],
|
||||
"analysis_context": {
|
||||
"as_of_date": "2019-03-31",
|
||||
"source": "binding_target_date_historical"
|
||||
},
|
||||
"expected_capability": "inventory_purchase_documents_for_item",
|
||||
"required_carryover_invariants": ["selected_object", "focus_object", "date_scope", "reusable_bundle", "followup_action_resolution"]
|
||||
},
|
||||
{
|
||||
"step_id": "step_07_selected_item_documents_canonical",
|
||||
"question_id": "Q10",
|
||||
"node_id": "N05_selected_item_purchase_documents",
|
||||
"node_role": "critical_child",
|
||||
@@ -841,10 +870,18 @@
|
||||
"business_utility_required": true,
|
||||
"state_continuity_required": true,
|
||||
"selected_object_memory_required": true,
|
||||
"focus_object_required": true,
|
||||
"pronoun_followup_resolution_required": true,
|
||||
"followup_action_resolution_required": true,
|
||||
"bundle_reuse_required": true,
|
||||
"field_truth_checks": [
|
||||
"supplier_vs_organization",
|
||||
"buyer_vs_organization"
|
||||
],
|
||||
"required_state_objects": [
|
||||
"focus_object",
|
||||
"provenance_bundle"
|
||||
],
|
||||
"reusable_answer_object_expectations": [
|
||||
"current_item",
|
||||
"current_as_of_date",
|
||||
@@ -857,6 +894,7 @@
|
||||
"do_not_accept_if": [
|
||||
"работает только root snapshot, но ломается critical selected-object edge",
|
||||
"работает только canonical wording, но ломается colloquial или ui_selected_object wording",
|
||||
"работает только quoted selected-object wording, но ломается короткий местоименный follow-up по активной позиции",
|
||||
"теряется date_scope на follow-up с `на эту дату` или `на ту дату`",
|
||||
"ответ меняет business object, например вместо item-level ответа отдаёт dump документов",
|
||||
"нарушается ordering semantics, например `старые закупки` идут не oldest-first"
|
||||
@@ -866,11 +904,14 @@
|
||||
"critical edges on primary_user_paths",
|
||||
"canonical coverage on critical nodes",
|
||||
"colloquial coverage on critical nodes",
|
||||
"ui_selected_object coverage where UI supports object selection"
|
||||
"ui_selected_object coverage where UI supports object selection",
|
||||
"pronoun_followup coverage where the UX already established an active selected object"
|
||||
],
|
||||
"required_defect_classes": [
|
||||
"semantic_understanding_gap",
|
||||
"edge_carryover_gap",
|
||||
"followup_action_resolution_gap",
|
||||
"bundle_reuse_gap",
|
||||
"answer_shape_mismatch",
|
||||
"ordering_semantics_mismatch",
|
||||
"runtime_capability_gap",
|
||||
@@ -903,6 +944,16 @@
|
||||
"pattern_id": "F05_oldest_first_violation",
|
||||
"symptom": "`старые закупки` are listed newest-first or in another non-business order",
|
||||
"defect_class": "ordering_semantics_mismatch"
|
||||
},
|
||||
{
|
||||
"pattern_id": "F06_pronoun_item_documents_misroute",
|
||||
"symptom": "short follow-up like `покажи документы по этой позиции` drifts into `documents_by_counterparty` instead of selected-item purchase documents",
|
||||
"defect_class": "followup_action_resolution_gap"
|
||||
},
|
||||
{
|
||||
"pattern_id": "F07_provenance_bundle_not_reused",
|
||||
"symptom": "supplier/date/document lookup was already resolved for the selected item but adjacent follow-up recomputes broadly or loses the reusable bundle",
|
||||
"defect_class": "bundle_reuse_gap"
|
||||
}
|
||||
],
|
||||
"legacy_references": [
|
||||
|
||||
@@ -16,6 +16,10 @@
|
||||
"state_continuity_score",
|
||||
"answer_shape_score",
|
||||
"evidence_clarity_score",
|
||||
"focus_object_continuity_ok",
|
||||
"bundle_reuse_ok",
|
||||
"followup_action_resolution_ok",
|
||||
"recommended_state_objects",
|
||||
"loop_decision",
|
||||
"requires_user_decision",
|
||||
"user_decision_type",
|
||||
@@ -78,6 +82,21 @@
|
||||
"minimum": 0,
|
||||
"maximum": 100
|
||||
},
|
||||
"focus_object_continuity_ok": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"bundle_reuse_ok": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"followup_action_resolution_ok": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"recommended_state_objects": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"loop_decision": {
|
||||
"type": "string",
|
||||
"enum": ["accepted", "continue", "partial", "blocked", "needs_exact_capability"]
|
||||
@@ -121,6 +140,8 @@
|
||||
"runtime_capability_gap",
|
||||
"edge_carryover_gap",
|
||||
"object_memory_gap",
|
||||
"followup_action_resolution_gap",
|
||||
"bundle_reuse_gap",
|
||||
"field_mapping_gap",
|
||||
"answer_shape_mismatch",
|
||||
"ordering_semantics_mismatch",
|
||||
@@ -170,6 +191,8 @@
|
||||
"semantic_understanding_gap",
|
||||
"edge_carryover_gap",
|
||||
"object_memory_gap",
|
||||
"followup_action_resolution_gap",
|
||||
"bundle_reuse_gap",
|
||||
"field_mapping_gap",
|
||||
"answer_shape_mismatch",
|
||||
"ordering_semantics_mismatch",
|
||||
|
||||
Reference in New Issue
Block a user