ARCH: зафиксировать накопленные артефакты и replay-спеки

This commit is contained in:
2026-04-22 22:02:39 +03:00
parent 8a0a4f0922
commit aa0e4ec37e
21 changed files with 13623 additions and 273 deletions
@@ -0,0 +1,77 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase23_broad_eval_short_followup",
"domain": "address_phase23_broad_eval_short_followup",
"title": "Phase 23 broad evaluation short follow-up replay",
"description": "Targeted AGENT replay for the seam where a broad business evaluation must not erase the last grounded MCP discovery context before a short year-switch follow-up.",
"bindings": {},
"steps": [
{
"step_id": "step_01_net_flow_2020",
"title": "Grounded net-flow answer seeds reusable discovery context",
"question": "какое нетто по деньгам с Группа СВК за 2020 год: сколько получили и сколько заплатили?",
"allowed_reply_types": [
"partial_coverage",
"factual_with_explanation"
],
"required_answer_patterns_all": [
"(?i)свк",
"(?i)получил|входящ|поступ",
"(?i)заплат|исходящ|списан|плат[её]ж",
"(?i)нетто|сальдо|разниц",
"(?i)2020|период",
"(?i)руб"
],
"criticality": "critical",
"semantic_tags": [
"counterparty_net_cash_flow",
"grounded_discovery_seed"
]
},
{
"step_id": "step_02_broad_business_evaluation",
"title": "Broad business evaluation reframes without erasing the grounded context",
"question": "Как ты оценишь деятельность компании?",
"required_answer_patterns_all": [
"(?i)коротко|оценк|частичн",
"(?i)1с|подтвержд|контекст",
"(?i)денежн|долг|ндс|контрагент"
],
"forbidden_answer_patterns": [
"(?i)активных заказчиков",
"(?i)последняя активность",
"(?i)^\\s*1\\."
],
"criticality": "critical",
"semantic_tags": [
"broad_business_evaluation",
"context_reframe"
]
},
{
"step_id": "step_03_short_year_switch_after_broad_eval",
"title": "Short year-switch follow-up still revives the last net-flow contour",
"question": "а теперь за 2021?",
"allowed_reply_types": [
"partial_coverage",
"factual_with_explanation"
],
"required_answer_patterns_all": [
"(?i)свк",
"(?i)2021|период",
"(?i)получил|входящ|поступ|заплат|исходящ|нетто|сальдо|разниц",
"(?i)руб|не удалось|не подтвержд|лимит"
],
"forbidden_answer_patterns": [
"(?i)активных заказчиков",
"(?i)последняя активность",
"(?i)уточните контрагент"
],
"criticality": "critical",
"semantic_tags": [
"broad_eval_followup_continuity",
"year_switch_after_reframe"
]
}
]
}
@@ -0,0 +1,84 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase24_metadata_lane_choice_loop",
"domain": "address_phase24_metadata_lane_choice_loop",
"title": "Phase 24 metadata lane-choice clarification loop replay",
"description": "Targeted AGENT replay for the metadata ambiguity seam where a mixed metadata surface must stay ambiguous on a neutral follow-up, ask the user to choose a lane, and then continue the same bounded chain after the user says 'по движениям'.",
"bindings": {},
"steps": [
{
"step_id": "step_01_metadata_ambiguity_surface",
"title": "Mixed metadata surface is surfaced honestly for the VAT domain",
"question": "какие объекты 1С есть по НДС?",
"allowed_reply_types": [
"partial_coverage",
"factual_with_explanation"
],
"required_answer_patterns_all": [
"(?i)metadata|метадан",
"(?i)ндс",
"(?i)документ|регистр"
],
"forbidden_answer_patterns": [
"(?i)получили",
"(?i)заплатили",
"(?i)нетто"
],
"criticality": "critical",
"semantic_tags": [
"metadata_surface",
"mixed_ambiguity"
]
},
{
"step_id": "step_02_neutral_followup_requires_lane_choice",
"title": "Neutral downstream follow-up keeps ambiguity and explicitly asks for a lane choice",
"question": "давай дальше",
"allowed_reply_types": [
"clarification_required",
"partial_coverage"
],
"required_answer_patterns_all": [
"(?i)документ",
"(?i)движени|регистр",
"(?i)уточн|выб(ери|рать)|какой контур"
],
"forbidden_answer_patterns": [
"(?i)получили",
"(?i)заплатили",
"(?i)нетто",
"(?i)документные строки найдены",
"(?i)строки денежных движений найдены"
],
"criticality": "critical",
"semantic_tags": [
"metadata_lane_choice_clarification",
"neutral_followup"
]
},
{
"step_id": "step_03_choose_movement_lane",
"title": "Short user choice continues the same metadata-born chain into movement evidence",
"question": "по движениям",
"allowed_reply_types": [
"partial_coverage",
"factual_with_explanation"
],
"required_answer_patterns_any": [
"(?i)движени",
"(?i)операц",
"(?i)проводк",
"(?i)денежн"
],
"forbidden_answer_patterns": [
"(?i)уточните, в какой контур",
"(?i)документные строки найдены"
],
"criticality": "critical",
"semantic_tags": [
"lane_choice_reuse",
"movement_lane_after_clarification"
]
}
]
}
@@ -0,0 +1,97 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase30_value_flow_to_movements_chain",
"domain": "address_phase30_value_flow_to_movements_chain",
"title": "Phase 30 grounded value-flow to movement evidence replay",
"description": "Targeted AGENT replay for Big Block C where a grounded counterparty and carried period must survive a pivot from value-flow answers into movement evidence without forcing the user to restate the resolved name.",
"bindings": {},
"steps": [
{
"step_id": "step_01_resolve_counterparty_alias",
"title": "Entity resolution grounds the checked 1C counterparty from a loose alias",
"question": "найди в 1С контрагента СВК",
"allowed_reply_types": ["factual", "factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": ["(?i)свк", "(?i)контрагент"],
"required_answer_patterns_any": [
"(?i)группа\\s+свк",
"(?i)каталог",
"(?i)найден",
"(?i)наиболее вероятн"
],
"forbidden_answer_patterns": [
"(?i)получили",
"(?i)заплатили",
"(?i)нетто",
"(?i)оборот",
"(?i)выручк",
"(?i)сумм(а|ы)"
],
"criticality": "critical",
"semantic_tags": ["entity_resolution", "alias_grounding", "followup_anchor"]
},
{
"step_id": "step_02_incoming_by_resolved_entity",
"title": "Incoming value-flow follow-up reuses the resolved counterparty anchor",
"question": "сколько получили по нему за 2020 год",
"allowed_reply_types": ["factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": ["(?i)2020", "(?i)получил|входящ|поступ", "(?i)руб"],
"required_answer_patterns_any": ["(?i)группа\\s+свк", "(?i)свк"],
"forbidden_answer_patterns": [
"(?i)не найден контрагент",
"(?i)уточните, какого контрагента",
"(?i)по какому контрагенту"
],
"criticality": "critical",
"semantic_tags": ["entity_resolution", "incoming_value_flow", "followup_reuse"]
},
{
"step_id": "step_03_payout_switch_by_resolved_entity",
"title": "Outgoing payment follow-up keeps the same grounded counterparty and checked year",
"question": "а теперь сколько заплатили?",
"allowed_reply_types": ["factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": ["(?i)2020", "(?i)заплатил|исходящ|списан|платеж", "(?i)руб"],
"required_answer_patterns_any": ["(?i)группа\\s+свк", "(?i)свк"],
"forbidden_answer_patterns": [
"(?i)не найден контрагент",
"(?i)уточните, какого контрагента",
"(?i)по какому контрагенту",
"(?i)за какой год"
],
"criticality": "critical",
"semantic_tags": ["entity_resolution", "payout_switch", "followup_reuse", "date_carryover"]
},
{
"step_id": "step_04_year_switch_on_payout",
"title": "Short year switch keeps the payout contour and grounded counterparty",
"question": "а за 2021?",
"allowed_reply_types": ["factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": ["(?i)2021", "(?i)заплатил|исходящ|списан|платеж", "(?i)руб"],
"required_answer_patterns_any": ["(?i)группа\\s+свк", "(?i)свк"],
"forbidden_answer_patterns": [
"(?i)не найден контрагент",
"(?i)уточните, какого контрагента",
"(?i)по какому контрагенту"
],
"criticality": "critical",
"semantic_tags": ["entity_resolution", "payout_year_switch", "followup_reuse"]
},
{
"step_id": "step_05_movements_after_value_flow",
"title": "Movement evidence follow-up keeps the same grounded counterparty after the money answer",
"question": "а по движениям?",
"allowed_reply_types": ["factual", "factual_with_explanation", "partial_coverage"],
"required_answer_patterns_all": ["(?i)движени|операц|платеж|списан|поступ"],
"required_answer_patterns_any": ["(?i)группа\\s+свк", "(?i)свк", "(?i)2021"],
"forbidden_answer_patterns": [
"(?i)не найден контрагент",
"(?i)уточните, какого контрагента",
"(?i)по какому контрагенту",
"(?i)сколько получили",
"(?i)сколько заплатили",
"(?i)нетто"
],
"criticality": "critical",
"semantic_tags": ["entity_resolution", "movement_evidence", "value_flow_pivot", "followup_reuse"]
}
]
}
@@ -0,0 +1,43 @@
{
"schema_version": "domain_truth_harness_spec_v1",
"scenario_id": "address_truth_harness_phase31_entity_ambiguity_probe",
"domain": "address_phase31_entity_ambiguity_probe",
"title": "Phase 31 entity ambiguity probe",
"description": "Probe whether raw counterparty wording creates a stable real ambiguity loop for MCP entity-resolution in the current 1C data.",
"bindings": {},
"steps": [
{
"step_id": "step_01_probe_ambiguous_counterparty_search",
"title": "Probe raw entity search wording for an ambiguity-capable live response",
"question": "найди в 1С контрагента СВК",
"allowed_reply_types": [
"factual_with_explanation",
"partial_coverage"
],
"required_answer_patterns_all": [
"(?i)свк",
"(?i)контрагент"
],
"required_answer_patterns_any": [
"(?i)каталог",
"(?i)1с",
"(?i)наш[её]л",
"(?i)найден"
],
"forbidden_answer_patterns": [
"(?i)получили",
"(?i)заплатили",
"(?i)нетто",
"(?i)оборот",
"(?i)выручк",
"(?i)сумм(а|ы)"
],
"criticality": "critical",
"semantic_tags": [
"entity_resolution",
"ambiguity_probe",
"bounded_autonomy"
]
}
]
}