defaults:
  runner: runtime
  mode: full_chain
  input:
    rag_session_id: "7d11da21-faa0-4cea-aede-aeabe069164c"

cases:
  - id: plba-v3-open-file-runtime
    query: "Открой файл src/app_runtime/core/runtime.py"
    notes: "Representative OPEN_FILE case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: OPEN_FILE
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        path_scope_contains: ["src/app_runtime/core/runtime.py"]
        layers_include: ["C0_SOURCE_CHUNKS"]
      llm:
        non_empty: true

  - id: plba-v3-explain-runtime-manager
    query: "Объясни как работает класс RuntimeManager"
    notes: "Representative EXPLAIN case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: EXPLAIN
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        symbol_candidates_contain: ["RuntimeManager"]
        layers_include: ["C1_SYMBOL_CATALOG", "C0_SOURCE_CHUNKS", "C2_DEPENDENCY_GRAPH"]
      llm:
        non_empty: true
        excludes: ["ряд аргументов", "основные службы"]

  - id: plba-v3-explain-local-http-channel
    query: "Почему в файле src/app_runtime/control/http_channel.py класс HttpControlChannel устроен так?"
    notes: "Representative EXPLAIN_LOCAL case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: EXPLAIN_LOCAL
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        path_scope_contains: ["src/app_runtime/control/http_channel.py"]
        symbol_candidates_contain: ["HttpControlChannel"]
        layers_include: ["C1_SYMBOL_CATALOG", "C0_SOURCE_CHUNKS", "C2_DEPENDENCY_GRAPH"]
      llm:
        non_empty: true

  - id: plba-v3-find-tests-runtime-manager
    query: "Где тесты для RuntimeManager?"
    notes: "Representative FIND_TESTS case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: FIND_TESTS
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        symbol_candidates_contain: ["RuntimeManager"]
        layers_include: ["C1_SYMBOL_CATALOG", "C2_DEPENDENCY_GRAPH", "C0_SOURCE_CHUNKS"]
      llm:
        non_empty: true

  - id: plba-v3-find-entrypoints-health-endpoint
    query: "Где health endpoint?"
    notes: "Representative FIND_ENTRYPOINTS case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: FIND_ENTRYPOINTS
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        layers_include: ["C3_ENTRYPOINTS", "C0_SOURCE_CHUNKS"]
      llm:
        non_empty: true
        contains_all: ["GET /health"]
        excludes: ["нет явных неподтвержденных кандидатов", "кандидаты на health-endpoint"]

  - id: plba-v3-trace-flow-runtime-start
    query: "Покажи поток выполнения при запуске RuntimeManager"
    notes: "Representative TRACE_FLOW case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: TRACE_FLOW
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        symbol_candidates_contain: ["RuntimeManager"]
        layers_include: ["C2_DEPENDENCY_GRAPH", "C3_ENTRYPOINTS", "C0_SOURCE_CHUNKS"]
      llm:
        non_empty: true

  - id: plba-v3-architecture-runtime-manager
    query: "Какие компоненты участвуют в RuntimeManager?"
    notes: "Representative ARCHITECTURE case copied from full_chain_plba_code_subintents_v2.yaml"
    expected:
      router:
        intent: CODE_QA
        sub_intent: ARCHITECTURE
        graph_id: CodeQAGraph
        conversation_mode: START
      retrieval:
        non_empty: true
        symbol_candidates_contain: ["RuntimeManager"]
        layers_include: ["C4_SEMANTIC_ROLES", "C2_DEPENDENCY_GRAPH", "C0_SOURCE_CHUNKS"]
      llm:
        non_empty: true
