ййй
This commit is contained in:
@@ -56,8 +56,8 @@ def test_invariant_inline_code_span_routes_to_code_and_extracts_symbol() -> None
|
||||
def test_invariant_docs_cyrillic_path_with_quotes() -> None:
|
||||
result = run_sequence(["Что сказано в «docs/архитектура.md»?"])[0]
|
||||
|
||||
assert_intent(result, "DOCS_QA")
|
||||
assert_sub_intent(result, "EXPLAIN")
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "COMPONENT_EXPLAIN")
|
||||
assert_domains(result, ["DOCS"])
|
||||
assert "docs/архитектура.md" in result.query_plan.normalized
|
||||
assert_has_file_path(result, "docs/архитектура.md")
|
||||
@@ -113,8 +113,92 @@ def test_invariant_open_file_sub_intent_uses_narrow_retrieval_profile() -> None:
|
||||
def test_invariant_docs_question_routes_to_docs() -> None:
|
||||
result = run_sequence(["Что сказано в документации?"])[0]
|
||||
|
||||
assert_intent(result, "DOCS_QA")
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_domains(result, ["DOCS"])
|
||||
assert_domain_layer_prefixes(result)
|
||||
assert result.query_plan.keyword_hints
|
||||
assert any(item in result.query_plan.expansions for item in result.query_plan.keyword_hints)
|
||||
|
||||
|
||||
def test_invariant_docs_flow_sub_intent_uses_workflow_layers() -> None:
|
||||
result = run_sequence(["Как работает процесс создания заказа по документации?"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "SYSTEM_FLOW_EXPLAIN")
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D4_WORKFLOW_INDEX", "D5_RELATION_GRAPH", "D1_DOCUMENT_CATALOG", "D0_DOC_CHUNKS"]
|
||||
|
||||
|
||||
def test_invariant_docs_entity_sub_intent_uses_entity_layers() -> None:
|
||||
result = run_sequence(["Что такое сущность Order в документации?"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "ENTITY_EXPLAIN")
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D3_ENTITY_CATALOG", "D5_RELATION_GRAPH", "D1_DOCUMENT_CATALOG", "D0_DOC_CHUNKS"]
|
||||
|
||||
|
||||
def test_invariant_entity_like_camel_case_prefers_entity_explain() -> None:
|
||||
result = run_sequence(["Что такое WorkerHealth?"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "ENTITY_EXPLAIN")
|
||||
|
||||
|
||||
def test_invariant_related_docs_routes_to_docs_explain() -> None:
|
||||
result = run_sequence(["Найди документацию по billing"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "RELATED_DOCS_EXPLAIN")
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D5_RELATION_GRAPH", "D1_DOCUMENT_CATALOG", "D0_DOC_CHUNKS"]
|
||||
|
||||
|
||||
def test_invariant_docs_navigation_uses_related_docs_explain() -> None:
|
||||
result = run_sequence(["Что связано с checkout документацией?"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "RELATED_DOCS_EXPLAIN")
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D5_RELATION_GRAPH", "D1_DOCUMENT_CATALOG", "D0_DOC_CHUNKS"]
|
||||
|
||||
|
||||
def test_invariant_openapi_routes_to_docs_layers_with_api_filter() -> None:
|
||||
result = run_sequence(["Сгенерируй openapi yaml для создания заказа"])[0]
|
||||
|
||||
assert_intent(result, "OPENAPI_GENERATION")
|
||||
assert_sub_intent(result, "OPENAPI_METHOD_GENERATE")
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D1_DOCUMENT_CATALOG", "D2_FACT_INDEX", "D0_DOC_CHUNKS"]
|
||||
assert result.retrieval_spec.filters.doc_type == "api_method"
|
||||
|
||||
|
||||
def test_invariant_general_qa_routes_to_generic_docs_layers() -> None:
|
||||
result = run_sequence(["Помоги разобраться"])[0]
|
||||
|
||||
assert_intent(result, "GENERAL_QA")
|
||||
assert_sub_intent(result, "GENERIC_QA")
|
||||
assert_domains(result, ["DOCS"])
|
||||
layer_ids = [item.layer_id for item in result.retrieval_spec.layer_queries]
|
||||
assert layer_ids == ["D1_DOCUMENT_CATALOG", "D0_DOC_CHUNKS"]
|
||||
|
||||
|
||||
def test_invariant_component_like_manager_routes_to_component_explain() -> None:
|
||||
result = run_sequence(["Какую роль в системе играет RuntimeManager?"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "COMPONENT_EXPLAIN")
|
||||
|
||||
|
||||
def test_invariant_cycle_query_routes_to_system_flow_explain() -> None:
|
||||
result = run_sequence(["Объясни как работает цикл отправки уведомлений"])[0]
|
||||
|
||||
assert_intent(result, "DOCUMENTATION_EXPLAIN")
|
||||
assert_sub_intent(result, "SYSTEM_FLOW_EXPLAIN")
|
||||
|
||||
|
||||
def test_invariant_overview_question_routes_to_general_qa() -> None:
|
||||
result = run_sequence(["Что вообще описано в документации по этому сервису?"])[0]
|
||||
|
||||
assert_intent(result, "GENERAL_QA")
|
||||
assert_sub_intent(result, "GENERIC_QA")
|
||||
|
||||
Reference in New Issue
Block a user