# Контекст для доработок (агент / разработчик) Кратко, что нужно знать перед изменениями в репозитории **onGuard24**. ## Продукт - **onGuard24** — сервис класса **IRM** (дежурства, эскалации, инциденты), модульный монолит. - **v1.0.0** — только каркас: API, БД, webhook Grafana, заглушки модулей, страница статусов. ## Стек - Python **≥3.11**, **FastAPI**, **asyncpg**, **httpx**, **pydantic-settings**. - Фронт опционально: **Vite + React** в `web/`. ## Правила 1. **Секреты** — только `.env` (gitignore). В репо — `.env.example` без значений. 2. **Версия** — синхронизировать: `pyproject.toml`, `onguard24/__init__.py`, тег git, `CHANGELOG.md`. 3. **Новые модули** — пакет `onguard24/modules/`, роутер подключать в `main.py` с префиксом `/api/v1/modules/<имя>`. 4. **Миграции БД** — пока правки в `onguard24/db.py` (константа SQL); не ломать таблицу `ingress_events` без миграционного плана. 5. **Статус интеграций** — логика в `status_snapshot.py` и `integrations/*`. ## Точки входа в код | Задача | Файл | |--------|------| | Новый эндпоинт | `main.py` или `modules/*.py` | | Настройки | `config.py` | | Webhook Grafana | `ingress/grafana.py` | | Проверка Vault/Grafana/Forgejo | `status_snapshot.py`, `integrations/` | | HTML главной | `root_html.py` | ## Откат См. [VERSIONING.md](VERSIONING.md). Теги `v1.0.0`, `v1.1.0`, …