1.8 KiB
1.8 KiB
Контекст для доработок (агент / разработчик)
Кратко, что нужно знать перед изменениями в репозитории onGuard24.
Продукт
- onGuard24 — сервис класса IRM (дежурства, эскалации, инциденты), модульный монолит.
- v1.0.0 — только каркас: API, БД, webhook Grafana, заглушки модулей, страница статусов.
Стек
- Python ≥3.11, FastAPI, asyncpg, httpx, pydantic-settings.
- Фронт опционально: Vite + React в
web/.
Правила
- Секреты — только
.env(gitignore). В репо —.env.exampleбез значений. - Версия — синхронизировать:
pyproject.toml,onguard24/__init__.py, тег git,CHANGELOG.md. - Новые модули — пакет
onguard24/modules/, роутер подключать вmain.pyс префиксом/api/v1/modules/<имя>. - Миграции БД — пока правки в
onguard24/db.py(константа SQL); не ломать таблицуingress_eventsбез миграционного плана. - Статус интеграций — логика в
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. Теги v1.0.0, v1.1.0, …