docs: refine backend conventions and routing
Backend security / security (push) Successful in 8s
Backend verify / verify (push) Successful in 2m12s
Conventional commits / commits (pull_request) Successful in 25s
Backend security / security (pull_request) Successful in 7s
Backend verify / verify (pull_request) Successful in 2m3s

This commit is contained in:
2026-09-15 05:42:16 +03:00
parent 660b250ecd
commit 9810d47e42
12 changed files with 201 additions and 131 deletions
+24 -27
View File
@@ -1,30 +1,27 @@
# Backend
# Backend router
NestJS API; общие правила работы — в root `AGENTS.md`.
До backend-решения прочитай [router](.ai/CONVENTIONS.md) и
[sources](.ai/SOURCES.md), затем только применимые документы/разделы.
Общие инструкции — [workspace AGENTS](../AGENTS.md). Объединяй triggers задачи,
путей и обнаруженных boundaries; читай только нужные темы до решения.
[Sources](.ai/SOURCES.md) выбирает факты/spec/ADR по возникшему вопросу.
## Проверка
| Решение / сигнал | Читать |
| --- | --- |
| Первое знакомство, data flow, общая архитектура | [Mental model](.ai/architecture.md) |
| Module/layer/public API/DI/suffix, owner, перенос responsibility | [Modules/application](.ai/conventions/backend-architecture.md) |
| TS vocabulary, domain literals, magic values | [Types/values](.ai/conventions/backend-architecture.md#domain-literals-and-magic-values) |
| Controller/DTO/validation, route/status/response, OpenAPI | [HTTP API](.ai/conventions/backend-http-api.md) |
| Application/domain/HTTP error, exception, code | [Errors](.ai/conventions/backend-error-handling.md) |
| Repository/Prisma/query, transaction, migration, atomic write | [Data](.ai/conventions/backend-data.md) |
| Tests или behavior с regression risk | [Testing](.ai/conventions/backend-testing.md) |
| JWT/cookie/session/guard/access, encryption, secrets | [Security](.ai/conventions/security-auth.md) |
| External client/gateway/SDK/proto, retry/rate limit/cache | [Integrations](.ai/conventions/backend-integrations.md) |
| Logging/context/levels, sensitive logs | [Observability](.ai/conventions/backend-observability.md); sensitive data также Security |
| Изменение публичного wire contract / Swagger metadata | HTTP API + [HTTP contract source](../docs/architecture/http-api.md#источник-контракта) |
| Helper/dependency/новый pattern, refactor/scope | [Code health](../.ai/conventions/code-health.md), для пакета — [Dependencies](../.ai/conventions/dependencies.md) |
| Выбор gate, tooling, завершение | [Guardrails](../.ai/conventions/guardrails.md) |
Перед Node-командами: `nvm use --silent` по `.nvmrc`.
После lockfile install `npm ci` полный gate — `npm run verify`:
zero-warning ESLint, application/test TypeScript, Jest и build.
`lint:fix`/`format` пишут файлы и запускаются отдельно от доказательства проверки.
`test:cov` — диагностика без общего threshold; scripts принадлежат `package.json`.
HTTP contract changes сохраняют [направление контракта](../docs/architecture/http-api.md#источник-контракта)
и проходят contract check. Общий e2e запускается на отдельных временных DB;
применимость и маршрут проверки
описаны в [backend testing](.ai/conventions/backend-testing.md).
Generated Prisma client не редактируется вручную. Credentials, авторизация
доступа к счетам и внешние интеграции остаются server-side.
ESLint/TypeScript не доказывают правильность domain boundaries, security или
денежных вычислений: для них нужны semantic review и risk-based tests.
## Ветки и релизы
Работа — в отдельной ветке от `develop`, затем PR в `develop`; в `main` напрямую
не пушить. Release/hotfix и синхронизация веток — по [root README](../README.md#релизы-и-ветки).
Commits и заголовки PR — Conventional Commits; для спецификаций допустим `spec:`.
Перед подготовкой релиза прочитай root README; версии вручную не повышать.
Новый endpoint обычно требует HTTP API + Testing; Data/Security добавляются
по persistence/access trigger. Auth refresh активирует Security + Data + Testing.
Повтори routing по итоговому diff, включая новые файлы. Migration backlog
читается только при соответствующем finding через
[plan](../.ai/migrations/conventions-v1/plan.md).