Stage 2 завершён: problem-first ответы и follow-up continuity - ассистент переведён от entity-heavy логики к problem-first ответам с problem-unit слоем, удержанием контекста в follow-up и очисткой пользовательского ответа от сырых технических ссылок.
This commit is contained in:
@@ -0,0 +1,175 @@
|
||||
{
|
||||
"suite_id": "assistant_stage2_canonical",
|
||||
"suite_version": "0.1.0",
|
||||
"schema_version": "assistant_stage2_suite_v0_1",
|
||||
"scenario_count": 9,
|
||||
"case_ids": [
|
||||
"S2-51-WRONG-CLOSE-TYPE",
|
||||
"S2-60-SUPPLIER-TAILS",
|
||||
"S2-97-LIFECYCLE-ANOMALY",
|
||||
"S2-OS-CARD-VS-CHARGES",
|
||||
"S2-VAT-CROSS-DOMAIN-CONTRADICTION",
|
||||
"S2-PERIOD-CLOSE-IMPACT",
|
||||
"S2-MULTI-INTENT",
|
||||
"S2-TRANSLIT-QUERY",
|
||||
"S2-FOLLOWUP-INVESTIGATION"
|
||||
],
|
||||
"cases": [
|
||||
{
|
||||
"case_id": "S2-51-WRONG-CLOSE-TYPE",
|
||||
"scenario_tag": "51_wrong_closure_type",
|
||||
"question_type": "direct",
|
||||
"broadness_level": "low",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Проверь счет 51 за 2020-06: где закрытие выполнено неверным типом документа и как это влияет на риск закрытия периода?"
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "factual_with_explanation",
|
||||
"expected_degraded_to": null,
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["document_conflict", "period_risk_cluster"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-60-SUPPLIER-TAILS",
|
||||
"scenario_tag": "60_supplier_tails",
|
||||
"question_type": "direct",
|
||||
"broadness_level": "medium",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Покажи хвосты поставщиков по счету 60 за 2020-06 и сгруппируй, где это уже разрыв цепочки документов."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "partial_coverage",
|
||||
"expected_degraded_to": "partial",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["unresolved_settlement_cluster", "broken_chain_segment"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-97-LIFECYCLE-ANOMALY",
|
||||
"scenario_tag": "97_lifecycle_anomaly",
|
||||
"question_type": "direct",
|
||||
"broadness_level": "medium",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Найди по счету 97 за 2020-06 зависшие узлы жизненного цикла и неполные переходы списания."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "partial_coverage",
|
||||
"expected_degraded_to": "partial",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["lifecycle_anomaly_node", "broken_chain_segment"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-OS-CARD-VS-CHARGES",
|
||||
"scenario_tag": "os_card_vs_charges",
|
||||
"question_type": "direct",
|
||||
"broadness_level": "medium",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "По ОС за 2020-06 сравни карточку объекта и начисления, где нарушена связность между документом и проводкой."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "partial_coverage",
|
||||
"expected_degraded_to": "partial",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["document_conflict", "cross_branch_inconsistency_cluster"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-VAT-CROSS-DOMAIN-CONTRADICTION",
|
||||
"scenario_tag": "vat_cross_domain_contradiction",
|
||||
"question_type": "broad",
|
||||
"broadness_level": "high",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Проверь НДС за июнь 2020: где есть противоречия между документами, проводками и регистрами с риском отчетности."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "clarification_required",
|
||||
"expected_degraded_to": "clarification",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["cross_branch_inconsistency_cluster", "document_conflict"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-PERIOD-CLOSE-IMPACT",
|
||||
"scenario_tag": "period_close_impact",
|
||||
"question_type": "broad",
|
||||
"broadness_level": "high",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Что из текущих аномалий сильнее всего ударит по закрытию периода, если оставить как есть?"
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "clarification_required",
|
||||
"expected_degraded_to": "clarification",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["period_risk_cluster", "broken_chain_segment"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-MULTI-INTENT",
|
||||
"scenario_tag": "multi_intent_question",
|
||||
"question_type": "multi_intent",
|
||||
"broadness_level": "high",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Проверь 60 и 62 за июнь 2020, отдельно риски по НДС и влияние на закрытие периода."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "clarification_required",
|
||||
"expected_degraded_to": "clarification",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["broken_chain_segment", "period_risk_cluster", "cross_branch_inconsistency_cluster"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-TRANSLIT-QUERY",
|
||||
"scenario_tag": "translit_query",
|
||||
"question_type": "direct",
|
||||
"broadness_level": "medium",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Prover schet 60 za 2020-06, gde taili postavshikov i gde est razryv mezhdu oplatoy i dokumentami."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "partial_coverage",
|
||||
"expected_degraded_to": "partial",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["unresolved_settlement_cluster", "broken_chain_segment"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"case_id": "S2-FOLLOWUP-INVESTIGATION",
|
||||
"scenario_tag": "followup_investigation",
|
||||
"question_type": "followup",
|
||||
"broadness_level": "medium",
|
||||
"turns": [
|
||||
{
|
||||
"user_message": "Разложи хвосты по поставщикам: где разрыв между оплатой и документами выглядит системным."
|
||||
},
|
||||
{
|
||||
"user_message": "Сузь до периода 2020-06 и счета 60, оставь только кластеры с максимальным риском закрытия."
|
||||
}
|
||||
],
|
||||
"expected_hints": {
|
||||
"expected_reply_type": "partial_coverage",
|
||||
"expected_degraded_to": "partial",
|
||||
"expected_problem_first": true,
|
||||
"expected_problem_unit_types": ["unresolved_settlement_cluster", "period_risk_cluster"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,173 @@
|
||||
{
|
||||
"suite_id": "assistant_stage2_duplicate_probe",
|
||||
"suite_version": "0.1.0",
|
||||
"schema_version": "assistant_stage2_duplicate_probe_v0_1",
|
||||
"scenario_count": 1,
|
||||
"case_ids": [
|
||||
"S2-DUP-COLLAPSE-PROBE-01"
|
||||
],
|
||||
"cases": [
|
||||
{
|
||||
"case_id": "S2-DUP-COLLAPSE-PROBE-01",
|
||||
"scenario_tag": "duplicate_collapse_probe",
|
||||
"route": "hybrid_store_plus_live",
|
||||
"expected_duplicate_collapses_min": 1,
|
||||
"input": {
|
||||
"result_type": "chain",
|
||||
"summary": {
|
||||
"semantic_profile": {
|
||||
"relation_patterns": [
|
||||
"failed_edge:payment_to_settlement"
|
||||
],
|
||||
"anomaly_patterns": [
|
||||
"tail_risk"
|
||||
]
|
||||
}
|
||||
},
|
||||
"risk_factors": [
|
||||
"tail_risk"
|
||||
],
|
||||
"raw_entities": [
|
||||
{
|
||||
"source_entity": "Document",
|
||||
"source_id": "DOC-1",
|
||||
"relation_pattern_hits": [
|
||||
"failed_edge:payment_to_settlement"
|
||||
],
|
||||
"anomaly_patterns": [
|
||||
"tail_risk"
|
||||
]
|
||||
}
|
||||
],
|
||||
"evidence": [
|
||||
{
|
||||
"evidence_id": "ev-1",
|
||||
"claim_ref": "requirement:R1",
|
||||
"source_type": "retrieval_item",
|
||||
"source_ref": {
|
||||
"schema_version": "evidence_source_ref_v1",
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-1",
|
||||
"period": "2020-06",
|
||||
"canonical_ref": "evidence_source_ref_v1|snapshot_2020|document|doc-1|2020-06"
|
||||
},
|
||||
"pointer": {
|
||||
"fragment_id": "F1",
|
||||
"route": "hybrid_store_plus_live",
|
||||
"source": {
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-1",
|
||||
"period": "2020-06"
|
||||
},
|
||||
"locator": {
|
||||
"field_path": "risk_score",
|
||||
"item_index": 0
|
||||
}
|
||||
},
|
||||
"evidence_kind": "mechanism_link",
|
||||
"mechanism_note": "failed_edge=payment_to_settlement",
|
||||
"confidence": "medium",
|
||||
"limitation": null,
|
||||
"payload": {
|
||||
"source_entity": "Document",
|
||||
"source_id": "DOC-1",
|
||||
"relation_pattern_hits": [
|
||||
"failed_edge:payment_to_settlement"
|
||||
],
|
||||
"anomaly_patterns": [
|
||||
"tail_cluster_a"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"evidence_id": "ev-2",
|
||||
"claim_ref": "requirement:R1",
|
||||
"source_type": "retrieval_item",
|
||||
"source_ref": {
|
||||
"schema_version": "evidence_source_ref_v1",
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-1",
|
||||
"period": "2020-06",
|
||||
"canonical_ref": "evidence_source_ref_v1|snapshot_2020|document|doc-1|2020-06"
|
||||
},
|
||||
"pointer": {
|
||||
"fragment_id": "F1",
|
||||
"route": "hybrid_store_plus_live",
|
||||
"source": {
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-1",
|
||||
"period": "2020-06"
|
||||
},
|
||||
"locator": {
|
||||
"field_path": "risk_score",
|
||||
"item_index": 1
|
||||
}
|
||||
},
|
||||
"evidence_kind": "mechanism_link",
|
||||
"mechanism_note": "failed_edge=payment_to_settlement",
|
||||
"confidence": "medium",
|
||||
"limitation": null,
|
||||
"payload": {
|
||||
"source_entity": "Document",
|
||||
"source_id": "DOC-1",
|
||||
"relation_pattern_hits": [
|
||||
"failed_edge:payment_to_settlement"
|
||||
],
|
||||
"anomaly_patterns": [
|
||||
"tail_cluster_b"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"evidence_id": "ev-3",
|
||||
"claim_ref": "requirement:R2",
|
||||
"source_type": "retrieval_item",
|
||||
"source_ref": {
|
||||
"schema_version": "evidence_source_ref_v1",
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-2",
|
||||
"period": "2020-06",
|
||||
"canonical_ref": "evidence_source_ref_v1|snapshot_2020|document|doc-2|2020-06"
|
||||
},
|
||||
"pointer": {
|
||||
"fragment_id": "F1",
|
||||
"route": "hybrid_store_plus_live",
|
||||
"source": {
|
||||
"namespace": "snapshot_2020",
|
||||
"entity": "Document",
|
||||
"id": "DOC-2",
|
||||
"period": "2020-06"
|
||||
},
|
||||
"locator": {
|
||||
"field_path": "risk_score",
|
||||
"item_index": 2
|
||||
}
|
||||
},
|
||||
"evidence_kind": "anomaly_signal",
|
||||
"mechanism_note": null,
|
||||
"confidence": "low",
|
||||
"limitation": {
|
||||
"reason_code": "missing_mechanism",
|
||||
"note": null
|
||||
},
|
||||
"payload": {
|
||||
"source_entity": "Document",
|
||||
"source_id": "DOC-2",
|
||||
"relation_pattern_hits": [
|
||||
"failed_edge:payment_to_settlement"
|
||||
],
|
||||
"anomaly_patterns": [
|
||||
"tail_cluster_c"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user