tester(ET): auto-commit from tester run_id=154
This commit is contained in:
79
docs/work-items/ORCH-048/13-test-report.md
Normal file
79
docs/work-items/ORCH-048/13-test-report.md
Normal file
@@ -0,0 +1,79 @@
|
||||
---
|
||||
type: test-report
|
||||
work_item_id: ORCH-048
|
||||
result: 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): `/health` 200 ok, `/status` 200 (ORCH-048 в stage=testing), `/queue` 200 (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.
|
||||
Reference in New Issue
Block a user