2026-04-03 08:30:56 +03:00
# Changelog
Формат: семантическое версионирование `MAJOR.MINOR.PATCH` . Git-теги `v1.0.0` , `v1.1.0` и т.д. — см. [docs/VERSIONING.md ](docs/VERSIONING.md ).
2026-04-03 08:36:35 +03:00
## [1.1.0] — 2026-04-03
Инфраструктура разработки и задел под домен IRM.
### Добавлено
- **Миграции:** Alembic (`alembic.ini` , `alembic/env.py` , ревизии в `alembic/versions/` ). Начальная схема: таблица `ingress_events` (как раньше в коде). Команда: `alembic upgrade head` . DDL при старте приложения убран — только пул asyncpg.
- **Тесты:** `pytest` , `pytest-asyncio` , моки интеграций; тесты API: `/health` , `/api/v1/status` , `POST /api/v1/ingress/grafana` (в т.ч. секрет webhook). Установка: `pip install -e ".[dev]"` .
- **Домен (задел):** пакет `onguard24/domain/` — сущности `Alert` , `Incident` , эскалация; `EventBus` / `InMemoryEventBus` , протокол `Module` для подписки на события. Описание: [docs/DOMAIN.md ](docs/DOMAIN.md ).
### Зависимости
- Прод: `sqlalchemy` , `alembic` , `psycopg[binary]` (для CLI миграций).
- Dev (optional): `pytest` , `pytest-asyncio` , `respx` .
Т е г в репозитории (после публикации): `v1.1.0` .
2026-04-03 08:30:56 +03:00
## [1.0.0] — 2026-04-03
Первый зафиксированный релиз **каркаса** (scaffold).
### Что входит
- **Backend:** FastAPI, uvicorn, конфиг из `.env` (путь к `.env` от корня репозитория).
- **БД:** PostgreSQL через asyncpg, пул, миграция `ingress_events` (сырой SQL в `onguard24/db.py` ).
- **Ingress:** `POST /api/v1/ingress/grafana` — сохранение JSON алерта в БД; опционально `X-OnGuard-Secret` + `GRAFANA_WEBHOOK_SECRET` .
- **Статус:** `GET /` , `GET /api/v1/status` — проверки database, Vault, Grafana (SA token), Forgejo (PAT + fallback без `read:user` ).
- **Модули-заглушки:** `schedules` , `contacts` , `statusboard` под префиксом `/api/v1/modules/...` .
- **Фронт:** Vite + React в `web/` (прокси на API).
- **Документация:** README, `.env.example` , `docs/ARCHITECTURE.md` .
### Н е входит (следующие версии)
- Alembic / полноценные миграции.
- Авторизация публичных API (кроме секрета webhook).
- Бизнес-логика IRM (эскалации, дежурства, светофор) — только заготовки модулей.
Т е г в репозитории: `v1.0.0` .