auto-sync: 2026-06-02 22:40:01

This commit is contained in:
Stream
2026-06-02 22:40:01 +03:00
parent e0dbe7d613
commit 86e659c047

View File

@@ -0,0 +1,39 @@
# Dev Report: ORCH-6 multi-repo — додел хвоста (tests/docs/commit/deploy)
Дата: 2026-06-02
Статус: DONE
## Задача
Добить ORCH-6 (функционал был написан ~75%): тесты, доки, коммиты, push, PR, пересборка, финальные проверки. НЕ включать Plane-webhook.
## Сделано
- [x] tests/test_projects.py (16 тестов) — резолверы + парсинг ORCH_PROJECTS_JSON
- [x] tests/test_plane_webhook.py (4 теста, TestClient, launcher замокан) — фильтр + resolve repo + независимые префиксы
- [x] Прогон всех тестов в контейнере: 57 passed, 9 pre-existing fail (не трогал)
- [x] docs/ARCHITECTURE.md — секция реестра проектов / multi-repo
- [x] README.md — ORCH_PROJECTS_JSON в таблице конфига + «Как добавить проект»
- [x] docs/BUGFIXES_2026-06-03.md — ORCH-6 + ссылка на INCIDENT_2026-06-02
- [x] 7 коммитов (Conventional Commits), push в feature/ORCH-6-multirepo
- [x] PR #2 создан (Gitea API)
- [x] docker compose up -d --build → health ok
- [x] Финальный resolve-тест в контейнере: OK
- [x] Plane-webhook НЕ трогал (остаётся is_active=false)
## Изменённые файлы
- tests/test_projects.py (новый, 16 тестов)
- tests/test_plane_webhook.py (новый, 4 теста)
- docs/ARCHITECTURE.md, README.md, docs/BUGFIXES_2026-06-03.md
## Результат
- Тесты новые: 20 passed (16+4). Полный прогон: 57 passed, 9 pre-existing (signature 401/TypeError в test_webhooks.py — не мои).
- Resolve в живом контейнере: `RESOLVE OK: orchestrator enduro-trails | known: 2`
- Фильтр (unknown project → ignored, нет task/branch/agent) подтверждён через TestClient.
- PR: https://git.mva154.duckdns.org/admin/orchestrator/pulls/2
- Health: {"status":"ok","service":"orchestrator"}
## Проблемы и решения
- Webhook-тесты сначала падали 401 (signature secret вшит в runtime env, не сбрасывается через os.environ из-за порядка импорта settings) → замокал verify_plane_signature в фикстуре.
- test_prefixes падал только в полном прогоне (settings.db_path резолвится один раз при импорте; конфликт DB-пути с test_webhooks) → monkeypatch settings.db_path на изолированную БД в фикстуре.
- Gitea token из .env извлёкся обрезанным (28 вместо 40) → взял из `docker exec printenv ORCH_GITEA_TOKEN`.
## Следующий шаг
Стрим: ревью PR #2 → включить Plane-webhook (UPDATE webhooks SET is_active=true WHERE id='93f0c342...').