5.4 KiB
5.4 KiB
result, work_item, stage, author_agent, status, created_at, model_used, type, work_item_id
| result | work_item | stage | author_agent | status | created_at | model_used | type | work_item_id |
|---|---|---|---|---|---|---|---|---|
| PASS | ORCH-118 | testing | tester | pass | 2026-06-16 | claude-opus-4-8 | test-report | ORCH-118 |
Test Report — ORCH-118
Машинный вердикт читается ТОЛЬКО из
result:во frontmatter.PASS→ задача переходит наdeploy-staging.
Окружение
- Python: 3.12.13
- pytest: 8.3.3 (plugins: cov-5.0.0, anyio-4.13.0, asyncio-0.23.8)
- Worktree:
/repos/_wt/orchestrator/feature_ORCH-118-orch-replace-avoidable-llm-con(веткаfeature/ORCH-118-orch-replace-avoidable-llm-con) - Дата: 2026-06-16
Предусловия
- Review-вердикт (
12-review.md): APPROVED (verdict читается из frontmatter). ✔ - Скоуп ORCH-118 — inventory-first, docs + tests only:
git diff origin/main...HEAD -- src/пусто (рантайм не тронут).
Smoke API (read-only)
GET /health→{"status":"ok","service":"orchestrator"}✔GET /status→ активная задача ORCH-118 на стадииtesting✔GET /queue→ присутствует блокserial_gate(ORCH-088:orchestrator.active_task = ORCH-118/testing, не frozen) ✔; присутствует блокauto_labels✔; breakerclosed, preflight OK. Смок-регресса нет.
Результаты (покрытие 04-test-plan.yaml → 03-acceptance-criteria.md)
| TC ID | Описание | AC | Результат |
|---|---|---|---|
| TC-01 | Единственный ТРАНСПОРТ LLM-консультации = launcher._spawn (CLAUDE_BIN + --system-prompt + Popen) |
AC-1/AC-6a | PASS |
| TC-02 | Детерминированные leaf-модули не консультируют LLM (дискриминатор «консультирует LLM», не «спавнит subprocess») | AC-3/AC-6b | PASS |
| TC-03 | Анти-дрейф промптов: карта ↔ .openclaw/agents/ (6 файлов, двусторонняя сверка) |
AC-1/AC-6c | PASS |
| TC-04 | Тотальность классификации (4 класса) + согласованность с осью C/P | AC-2/AC-6d | PASS |
| TC-05 | keep-LLM требует названного суждения; C-keep (reviewer) фиксирует не-деривируемость | AC-2 | PASS |
| TC-06 | Capability ≠ consultation: deploy-finalizer/post-deploy-monitor перехвачены до _spawn |
AC-3/AC-6e | PASS |
| TC-07 | Полнота roadmap + ровно один first_slice=yes (deployer) |
AC-4 | PASS |
| TC-08 | Политика LLM нормативна + определение «avoidable LLM control path» | AC-5/AC-10 | PASS |
| TC-09 | Скоуп-гард: снимок ролей STAGE_TRANSITIONS и имён QG_CHECKS не изменился |
AC-7 | PASS |
| TC-10 | Полный регресс pytest tests/ -q зелёный |
AC-6/AC-7 | PASS (2081 passed) |
| TC-11 | Анти-фабрикация follow-up Plane-ID (кандидаты по роли) | AC-9 | PASS |
| TC-12 | Отсутствие иного LLM-транспорта (нет anthropic/openai SDK, прямого HTTP, второго model-subprocess) | AC-1/AC-6f | PASS |
| TC-13 | Control-path-ось C/P согласована с фактическим потребителем в src/qg/checks.py |
AC-10/AC-6g | PASS |
| TC-14 | Avoidable-набор зафиксирован = {tester, deployer}; reviewer=C-keep; analyst/architect/developer=P | AC-10/AC-6h | PASS |
Все 14 TC выполнены и сопоставлены с критериями приёмки. Пропусков нет.
Вывод pytest
Целевые тесты ORCH-118:
tests/test_llm_call_site_inventory.py::test_tc01_single_llm_transport PASSED
tests/test_llm_call_site_inventory.py::test_tc12_no_alternative_llm_transport PASSED
tests/test_llm_call_site_inventory.py::test_tc02_deterministic_modules_no_llm_consultation PASSED
tests/test_llm_call_site_inventory.py::test_tc03_prompt_files_match_map PASSED
tests/test_llm_call_site_inventory.py::test_tc04_classification_total_and_axis_consistent PASSED
tests/test_llm_call_site_inventory.py::test_tc05_keep_llm_named_judgment PASSED
tests/test_llm_call_site_inventory.py::test_tc06_capability_not_consultation PASSED
tests/test_llm_call_site_inventory.py::test_tc09_runtime_contract_snapshot PASSED
tests/test_llm_call_site_inventory.py::test_tc13_control_path_axis_correct PASSED
tests/test_llm_call_site_inventory.py::test_tc14_avoidable_set_fixed PASSED
tests/test_llm_determinization_docs.py::test_tc07_roadmap_completeness_and_first_slice PASSED
tests/test_llm_determinization_docs.py::test_tc08_policy_normative_and_defines_avoidable PASSED
tests/test_llm_determinization_docs.py::test_tc11_no_fabricated_followup_ids PASSED
======================== 13 passed, 1 warning in 0.41s =========================
Полный регресс (TC-10):
2081 passed, 1 warning in 89.94s (0:01:29)
(Единственный warning — PydanticDeprecatedSince20 в src/config.py:8, предсуществующий, не связан с ORCH-118.)
Итог
PASS — все 14 тест-кейсов зелёные, полный регресс tests/ зелёный (2081 passed), smoke API (/health, /status, /queue с блоками serial_gate + auto_labels) — без регресса. Задача готова к переходу на deploy-staging.