3.8 KiB
3.8 KiB
type, work_item_id, result
| type | work_item_id | result |
|---|---|---|
| test-report | ORCH-048 | PASS |
Test Report — ORCH-048
Title: staging B6 check reads registry from host worktree, not staging container Stage: testing Branch: feature/ORCH-048-staging-b6-check-reads-registr
Окружение
- Python: 3.12.13
- pytest: 8.3.3
- Дата: 2026-06-06T07:06Z
- Prod API (8500):
/health200 ok,/status200 (ORCH-048 в stage=testing),/queue200 (breaker closed, preflight ok)
Результаты
| TC ID | Тип | Описание | Результат |
|---|---|---|---|
| TC-01 | unit | known={SANDBOX} → B6 PASS, detail sandbox=YES/prod-ET=NO/prod-ORCH=NO |
PASS |
| TC-02 | unit | known={SANDBOX,PROD_ET} → B6 FAIL, prod-ET помечен нарушением |
PASS |
| TC-03 | unit | known={SANDBOX,PROD_ORCH} → B6 FAIL, prod-ORCH помечен нарушением |
PASS |
| TC-04 | unit | known=set() (нет sandbox) → детерминированный FAIL без исключения |
PASS |
| TC-05 | unit | known={SANDBOX,PROD_ET,PROD_ORCH} → B6 FAIL |
PASS |
| TC-06 | unit | Нет host-path хака /repos/orchestrator; реестр строится не локальным импортом в произвольном process-env |
PASS |
| TC-07 | unit | Деградация источника реестра → детерминированный FAIL с понятным detail (не ложный PASS, не необработанное исключение) | PASS |
| TC-08 | unit | Регрессия src/projects.py (16 тестов) зелёные — реестр не изменён |
PASS |
| TC-09 | integration | python -m pytest tests/ -q → exit 0 |
PASS |
| TC-10 | integration | Живой staging-прогон B6 на 8501 | DEFERRED — выполняется деплоером на стадии deploy-staging (см. 04-test-plan TC-10) |
Доп. покрытие: test_run_b6_records_pass_for_clean_registry (happy-path wiring _run_b6).
Покрытие критериев приёмки
| AC | Подтверждение | Статус |
|---|---|---|
| AC-1 | B6 PASS на чистом реестре (TC-01), источник — окружение инстанса, host-path хак удалён (TC-06) | PASS |
| AC-2 | Оба исхода покрыты: clean→PASS (TC-01), polluted→FAIL (TC-02/03/05), без sandbox→FAIL (TC-04) | PASS |
| AC-3 | git diff origin/main...HEAD НЕ содержит src/projects.py / .env*; блоки A/B4/B5/C не тронуты |
PASS |
| AC-4 | pytest tests/ -q → exit 0, 470 passed |
PASS |
| AC-5 | STAGING_CHECK.md, deployer.md, CHANGELOG.md, ADR-001 обновлены в том же PR (подтверждено review) | PASS |
Проверка scope (AC-3)
Изменённые файлы ветки vs origin/main:
.openclaw/agents/deployer.md
CHANGELOG.md
docs/operations/STAGING_CHECK.md
docs/work-items/ORCH-048/* (артефакты задачи)
scripts/staging_check.py
tests/test_staging_check_b6.py
Forbidden-path check: OK — src/projects.py и .env* НЕ затронуты.
Вывод pytest
Полный прогон:
470 passed, 1 warning in 9.07s
pytest exit code: 0
(warning — PydanticDeprecatedSince20 в src/config.py, предсуществующий, к ORCH-048 не относится.)
B6 suite:
tests/test_staging_check_b6.py ......... [9 passed]
9 passed, 1 warning in 0.29s
projects-регрессия (TC-08):
16 passed, 1 warning in 0.31s
Итог
PASS — все unit/integration тесты зелёные (470 passed, exit 0), smoke API prod исправен, scope-инвариант AC-3 соблюдён. Живой staging-прогон B6 (TC-10) выполняется деплоером на стадии deploy-staging.