42 lines
3.8 KiB
Markdown
42 lines
3.8 KiB
Markdown
# Backend router
|
||
|
||
Репозиторий самостоятельный: обязательные инструкции и проверки используют
|
||
только его файлы и предоставленные публичные контракты. Перед работой прочитай
|
||
[порядок работы](.ai/conventions/engineering.md#граница-и-порядок-работы), затем
|
||
объединяй triggers задачи и путей; читай активированные темы до решения.
|
||
До edits найди/создай подходящую Gitea Issue, проверь AC и ветку; чтение
|
||
допускается без Issue. Общий маршрут — [Engineering Workflow](https://git.personal.ksv741.ru/WealthLedger/main/src/commit/59e0831ad28d6990416e651f55d783b8d2ac98c2/.ai/conventions/engineering-workflow.md)
|
||
(main#28; после merge — актуальная версия `develop`).
|
||
|
||
| Решение / сигнал | Читать |
|
||
| --- | --- |
|
||
| Устройство/data flow, module/layer/public API/DI/suffix, owner | [Architecture](.ai/architecture.md) |
|
||
| TS vocabulary, domain literals, magic values | [Types/values](.ai/architecture.md#domain-literals-and-magic-values) |
|
||
| Controller/DTO/validation, route/status/response, OpenAPI | [HTTP API](.ai/conventions/http-api.md) |
|
||
| Application/domain/HTTP error, exception, code | [Errors](.ai/conventions/error-handling.md) |
|
||
| Repository/Prisma/query, transaction, migration, atomic write | [Data](.ai/conventions/data.md) |
|
||
| Tests или behavior с regression risk | [Testing](.ai/conventions/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/integrations.md) |
|
||
| Logging/context/levels, sensitive logs | [Observability](.ai/conventions/observability.md); sensitive data также Security |
|
||
| Изменение публичного wire contract / Swagger metadata | [HTTP API](.ai/conventions/http-api.md#источник-контракта) |
|
||
| Helper/dependency/новый pattern, refactor/scope | [Change scope](.ai/conventions/engineering.md#change-scope), для пакета — [Dependencies](.ai/conventions/engineering.md#dependencies) |
|
||
| Выбор gate, tooling, завершение | [Проверки](.ai/conventions/engineering.md#проверки-и-завершение) |
|
||
|
||
Новый endpoint обычно требует HTTP API + Testing; Data/Security добавляются
|
||
по persistence/access trigger. Auth refresh активирует Security + Data + Testing.
|
||
Перед завершением повтори routing по новым и изменённым файлам. Для Git/release
|
||
прочитай [Git и релизы](.ai/conventions/engineering.md#git-и-релизы).
|
||
|
||
## Источники
|
||
|
||
| Вопрос | Локальный источник |
|
||
| --- | --- |
|
||
| HTTP errors/DTO/wire shape | [HTTP API](.ai/conventions/http-api.md), генерация `npm run openapi:generate`, configured HTTP tests |
|
||
| Auth/session, account access, secrets | [Security](.ai/conventions/security-auth.md) и auth/access tests |
|
||
| Prisma/data ownership | [Data](.ai/conventions/data.md), Prisma schema/migrations |
|
||
| T-Bank/cache/logging | [Integrations](.ai/conventions/integrations.md), [Observability](.ai/conventions/observability.md) |
|
||
| Money и финансовые расчёты | [Data](.ai/conventions/data.md#деньги-и-точность), domain source и tests владельца |
|
||
| Поведение области | Module source и tests; неясное ожидание уточни до изменения |
|
||
| Versions/scripts/check scope | Manifest/lockfile, ESLint/TypeScript/Jest/Prisma configs |
|