776 B
776 B
awg_api — control plane
Непривилегированный процесс: FastAPI + REST API v1 + WebSocket + отдача статики UI.
| Модуль | Ответственность | Задача |
|---|---|---|
app.py |
lifespan, конфиг, логирование, error model, статика | #31 |
routers/ |
эндпоинты по OpenAPI (status, config, routing, devices, logs, auth) | #32 |
ws/ |
/api/v1/metrics/stream |
#33 |
security/ |
токен, CSRF, rate limit, маскировка секретов | #34 |
store/ |
SQLite (WAL), миграции, audit log, apply/rollback | #20 |
Контракт — docs/openapi.yaml (задача #19), TS-клиент генерируется в ui/src/api/generated/.