740fd2d7bd
repository map zavoz
5.2 KiB
5.2 KiB
Карта репозитория
1. Точки входа
- Backend root: src/backend
- Django settings: src/backend/config/settings
- URL root: src/backend/config/urls.py
- API wiring: src/backend/api/urls.py
- API v1 роутер: src/backend/api/v1/router.py
- Команды и проверки: src/backend/justfile
- Файлы конфигурации деплоя: deploy
- Файлы конфигурации для сервисов: infrastructure/configs
2. Основные доменные модули (src/backend/apps)
- flags - feature flags и типизация значений.
- experiments - жизненный цикл эксперимента, варианты.
- reviews - группы аппруверов, дефолтная политика апрува.
- decision - логика выбора варианта для флага (детерминизм, таргетинг, лимиты участия).
- events - обработка эвентов: валидация, дедуп, атрибуция, pending events.
- metrics - каталог и правила вычисления метрик.
- reports - отчёты по экспериментам в разрезе вариантов/периода.
- guardrails - safety правила, триггеры, авто пауза/ролбек.
- conflicts - домены конфликтов между экспериментами.
- notifications - enqueue/flush уведомлений по системным событиям.
- learnings - библиотека выводов/знаний по экспериментам.
- users - роли, auth, RBAC.
- core - базовые модели/общие вспомогательные элементы.
3. API слой (src/backend/api/v1)
- src/backend/api/v1/decision/endpoints.py -
POST /api/v1/decide - src/backend/api/v1/events/endpoints.py -
POST /api/v1/events, CRUD event types - src/backend/api/v1/reports/endpoints.py -
GET /api/v1/reports/{experiment_id} - src/backend/api/v1/guardrails/endpoints.py - check/list/create/update/delete guardrails
- src/backend/api/v1/experiments/endpoints.py - lifecycle и CRUD экспериментов/вариантов
- src/backend/api/v1/reviews/endpoints.py - review settings и approver groups
flags,users,metrics,conflicts,notifications,learnings- соответствующие доменные API
4. Критичный поток
-
Decide
-
Events/Attribution
-
Reports/Guardrails
5. Интеграционные тесты
- Happy path: src/backend/tests/integration/test_happy_path.py
- API contract flow: src/backend/tests/integration/test_api_contract.py
- Events edge-cases: src/backend/tests/integration/test_events.py
- Guardrails e2e: src/backend/tests/integration/test_guardrails.py
- Негативные сценарии: src/backend/tests/integration/test_negative.py
6. Наблюдаемость и эксплуатация
- Health/readiness endpoints: src/backend/api/urls.py
- Prometheus middleware/logging config: src/backend/config/settings.py
- Structured logs: src/backend/config/settings.py
- CI/CD config: .gitlab-ci.yml