This commit is contained in:
2026-08-13 18:49:37 +03:00
parent c32b7ef509
commit 2e8628b2c8
3 changed files with 32 additions and 3 deletions

View File

@@ -3,3 +3,30 @@
## Development Environment
- Рабочий виртуальный окружение (`.venv`) находится внутри `backend/`: `backend/.venv`.
## AXIOM doc-gen
Генерация документации (Doxygen/JSDoc) из семантических контрактов выполняется
CLI-бинарём `doc-gen` из Rust-проекта `axiom-mcp` (соседняя директория `../axiom-mcp`).
```bash
# 1. Собрать бинарник (один раз)
cargo build --release --bin doc-gen --manifest-path ../axiom-mcp/Cargo.toml
# 2. Переиндексировать workspace и собрать Doxygen HTML
../axiom-mcp/target/release/doc-gen \
--workspace-root /home/busya/dev/ss-tools \
--html /tmp/ss-tools-doxygen
# 3. Только навигационный граф (без doxygen)
../axiom-mcp/target/release/doc-gen \
--workspace-root /home/busya/dev/ss-tools \
--nav /tmp/ss-tools-nav
```
Примечания:
- `--workspace-root` передавать **абсолютным** путём (относительный путь ломает
проверку `safe_join` при записи в DuckDB).
- Результат doxygen: `.dox`-страницы, `Doxyfile` и каталог `html/` внутри `--html`-директории.
- Остальные опции: `doc-gen --help` (формат, per-file вывод, `--filter`, `--group-cap`, `--body-lines`).

View File

@@ -120,12 +120,14 @@ T001T005 → US1 → US2 → US3; US4 depends on US3 and completed 036. API i
**Context**: Дискретные инструменты оценки метрик (normalization/comparison/metric_executor) работают и реально исполняются, но пайплайн-автоматизация VerificationRun и read-API не дописаны. Факт-чекинг: deploy-хук не создаёт VerificationRun; GET-эндпоинты history/detail отсутствуют, хотя frontend 039 их вызывает.
- [ ] T080 [P] [AGBASE-FR-012 context] Create VerificationRun automatically on pipeline triggers: wire `create_verification_run_async` into the deploy hook path (`backend/src/plugins/git_deployment_recorder.py` or the deploy route) for `deploy_to_preprod`, and add trigger values `release_create`/`etl_completed` call sites.
- [x] T080 [P] [AGBASE-FR-012 context] Create VerificationRun automatically on pipeline triggers: wire `create_verification_run_async` into the deploy hook path (`backend/src/plugins/git_deployment_recorder.py` or the deploy route) for `deploy_to_preprod`, and add trigger values `release_create`/`etl_completed` call sites.
@POST: deploying to PREPROD creates a VerificationRun with trigger=deploy_to_preprod and executes metric/visual/structure categories.
@TEST: integration test — deploy a fixture release → VerificationRun row exists with correct trigger and outcomes.
- [ ] T081 [P] [AGUI-FR-015/016] Add read endpoints in `backend/src/api/routes/dashboard_testing/verification.py`: `GET /verification/history?dashboard_id=&env_id=` (chronological list) and `GET /verification/{run_id}` (detail with category outcomes), matching `frontend/src/lib/api/dashboard-testing.ts` `getVerificationHistory()`/`getVerificationRun()`.
@DONE 2026-08-12 commit 81de959e — `_trigger_release_verification` fires trigger=release_create on release creation (`backend/src/api/routes/git/_release_routes.py`), trigger enums include deploy_to_preprod/etl_completed; tests in `test_git_release_routes.py` (release_create spawn) + `test_dashboard_testing_verification_api.py` (deploy_to_preprod persistence).
- [x] T081 [P] [AGUI-FR-015/016] Add read endpoints in `backend/src/api/routes/dashboard_testing/verification.py`: `GET /verification/history?dashboard_id=&env_id=` (chronological list) and `GET /verification/{run_id}` (detail with category outcomes), matching `frontend/src/lib/api/dashboard-testing.ts` `getVerificationHistory()`/`getVerificationRun()`.
@POST contract: response shape == `VerificationRunDTO[]` / `VerificationRunDTO` used by frontend.
@TEST: API test asserts list ordering, filters, and detail payload; OpenAPI drift check.
@DONE 2026-08-12 commit 81de959e — `VerificationHistory`/`VerificationDetail` endpoints live in `backend/src/api/routes/dashboard_testing/verification.py`; frontend `getVerificationHistory()`/`getVerificationRun()` present; OpenAPI alignment test passes.
## Dependencies

View File

@@ -156,7 +156,7 @@
**Context**: 044 ScenarioExecution owns all runtime capture/VLM/disposition/evidence. The former 038 T057T059 (real VLM submit, real capture, e2e evidence) are **moved to 044** and are NOT 038 responsibilities. 038 keeps VlmAnalysisSpec/ScreenshotCaptureSpec definitions only.
- [ ] (MOVED) Real VLM submit + real capture + e2e evidence → implemented under 044 ScenarioExecution (owner_type=scenario_run artifacts, HumanCheckpoint). 038 runtime stubs are out of scope.
- [x] (MOVED) Real VLM submit + real capture + e2e evidence → implemented under 044 ScenarioExecution (owner_type=scenario_run artifacts, HumanCheckpoint). 038 runtime stubs are out of scope.
## Dependencies