docs: make project documentation self-contained
This commit is contained in:
+46
-41
@@ -1,78 +1,83 @@
|
||||
# Project knowledge index
|
||||
|
||||
Открывай раздел по конкретному вопросу, затем только нужный source.
|
||||
Это карта фактов, не обязательное чтение всего docs. Текущий wire contract
|
||||
генерируется backend; устаревший ADR/пример кода не переопределяет его.
|
||||
Карта проектных знаний по вопросам читателя. Все необходимые объяснения
|
||||
находятся внутри документации. Для первого знакомства откройте
|
||||
[главную страницу](README.md), для конкретного сценария —
|
||||
[карту возможностей](features/README.md).
|
||||
|
||||
## HTTP API
|
||||
|
||||
| Trigger | Source |
|
||||
| Вопрос | Документ |
|
||||
| --- | --- |
|
||||
| Endpoint, DTO, validation, status, exception/error shape | [HTTP semantics](architecture/http-api.md) |
|
||||
| Изменение публичного wire contract, snapshot/generated types | [Contract workflow](development/runtime-openapi-verification.md) |
|
||||
| Почему Nest — источник OpenAPI | [ADR 002](adr/002-nest-generated-openapi-contract.md) |
|
||||
| Как API проверяет запрос, подтверждает доступ и сообщает об ошибках? | [HTTP semantics](architecture/http-api.md) |
|
||||
| Как сохраняется согласованность публичного контракта frontend и backend? | [Contract workflow](development/runtime-openapi-verification.md) |
|
||||
| Почему backend является источником OpenAPI? | [ADR 002](adr/002-nest-generated-openapi-contract.md) |
|
||||
|
||||
## Security
|
||||
|
||||
| Trigger | Source |
|
||||
| Вопрос | Документ |
|
||||
| --- | --- |
|
||||
| Login/session/logout, cookie/access storage | [Authentication](features/authentication.md) |
|
||||
| Concurrent/superseded refresh | [ADR 009](adr/009-concurrent-refresh-rotation-policy.md), [термины](architecture/domain-glossary.md#concurrent-refresh-attempt) |
|
||||
| T-Bank token encryption, connection generation/cache | [Connection](features/tbank-connection.md), [ADR 004](adr/004-encrypted-per-user-tbank-token.md) |
|
||||
| Как работают вход, восстановление сессии, cookie и logout? | [Authentication](features/authentication.md) |
|
||||
| Что происходит при конкурентном refresh или повторном предъявлении заменённого token? | [ADR 009](adr/009-concurrent-refresh-rotation-policy.md), [термины](architecture/domain-glossary.md#concurrent-refresh-attempt) |
|
||||
| Как защищён T-Bank token и что меняется при замене подключения? | [Connection](features/tbank-connection.md), [ADR 004](adr/004-encrypted-per-user-tbank-token.md) |
|
||||
|
||||
## Data
|
||||
|
||||
Persistence source — [Prisma schema](../backend/prisma/schema.prisma),
|
||||
[migrations](../backend/prisma/migrations/). [ADR 001](adr/001-prisma-sqlite-local-mvp.md)
|
||||
описывает исторический выбор SQLite, не текущий список таблиц.
|
||||
Transaction/ownership/migration decisions — [backend data guide](../backend/.ai/conventions/backend-data.md).
|
||||
Локальная база хранит пользователей, сессии и зашифрованные подключения.
|
||||
Брокерские счета и финансовые снимки не сохраняются как долговременная история.
|
||||
Принадлежность данных и границы хранения описаны в
|
||||
[обзоре системы](architecture/system-overview.md#хранимые-данные).
|
||||
Причина выбора локальной базы — [ADR 001](adr/001-prisma-sqlite-local-mvp.md).
|
||||
Точность и валюты — [Money](architecture/domain-glossary.md#money).
|
||||
Сохранение данных при обновлении — [локальное окружение](development/local-workspace.md#подготовка-backend).
|
||||
|
||||
## Integrations
|
||||
|
||||
T-Bank/proto/TLS/retry/limits — [connection configuration](features/tbank-connection.md#конфигурация-и-ограничения)
|
||||
T-Bank, TLS, повторные попытки и лимиты —
|
||||
[ограничения подключения](features/tbank-connection.md#конфигурация-и-ограничения)
|
||||
и [server-side boundary](adr/003-tbank-server-side-grpc-boundary.md).
|
||||
Cache generation — [connection cache](features/tbank-connection.md#граница-финансового-кэша).
|
||||
Logging — [ADR 008](adr/008-pino-backend-logging.md) и
|
||||
[реальный logger boundary](../backend/.ai/conventions/backend-architecture.md#logging).
|
||||
MOEX/НКР и происхождение показателей — [облигации](features/bond-detail.md#содержание)
|
||||
и [внешние системы](architecture/system-overview.md#контекст-системы).
|
||||
Смена подключения и финансовый кэш — [connection cache](features/tbank-connection.md#граница-финансового-кэша).
|
||||
Логирование выполняется на инфраструктурной границе backend: события связываются
|
||||
с HTTP-запросом, а секреты и полные запросы не попадают в журнал.
|
||||
Принятые ограничения описаны в [ADR 008](adr/008-pino-backend-logging.md).
|
||||
|
||||
## Domain
|
||||
|
||||
Начинай с точного термина в [глоссарии](architecture/domain-glossary.md):
|
||||
Определения и различия понятий — в [глоссарии](architecture/domain-glossary.md):
|
||||
[Money](architecture/domain-glossary.md#money),
|
||||
[Portfolio Position](architecture/domain-glossary.md#portfolio-position),
|
||||
[Client Cached Snapshot](architecture/domain-glossary.md#client-cached-snapshot),
|
||||
[Ledger](architecture/domain-glossary.md#account-ledger),
|
||||
[Realized Income](architecture/domain-glossary.md#realized-income-analytics).
|
||||
Cross-area topology — [system overview](architecture/system-overview.md).
|
||||
Связи понятий и подсистем — [system overview](architecture/system-overview.md#предметная-модель).
|
||||
|
||||
## Features
|
||||
|
||||
| Предмет задачи | Current behavior |
|
||||
| Предмет вопроса | Текущее поведение |
|
||||
| --- | --- |
|
||||
| Счета и их сводки | [Brokerage accounts](features/brokerage-accounts.md) |
|
||||
| Счета и сводки | [Brokerage accounts](features/brokerage-accounts.md) |
|
||||
| Общий портфель и разделы по всем счетам | [All accounts](features/all-accounts.md) |
|
||||
| Страница акции, поиск, график и история одной бумаги | [Stock detail](features/stock-detail.md) |
|
||||
| Страница облигации, поиск, купоны и переходы из портфеля | [Bond detail](features/bond-detail.md) |
|
||||
| Источники кредитных рейтингов облигаций | [Исследование источников](research/bond-credit-ratings.md) |
|
||||
| Позиции/суммы портфеля, backend cache | [Portfolio](features/portfolio-view.md) |
|
||||
| Операции/фильтры/cursor | [Account ledger](features/brokerage-account-ledger.md) |
|
||||
| Поиск, график и история акции | [Stock detail](features/stock-detail.md) |
|
||||
| Поиск, купоны и показатели облигации | [Bond detail](features/bond-detail.md) |
|
||||
| Покрытие источников кредитных рейтингов | [Исследование источников](research/bond-credit-ratings.md) |
|
||||
| Позиции, суммы портфеля и свежесть данных | [Portfolio](features/portfolio-view.md) |
|
||||
| Операции, фильтры и пагинация | [Account ledger](features/brokerage-account-ledger.md) |
|
||||
| Будущие выплаты | [Upcoming events](features/brokerage-account-upcoming-events.md) |
|
||||
| Реализованные доходы/периоды | [Income analytics](features/brokerage-account-income-analytics.md) |
|
||||
| UI recovery/error boundaries | [Frontend resilience](features/frontend-ui-resilience.md) |
|
||||
|
||||
Behavioral requirements при необходимости — через [specs index](../specs/AI_INDEX.md).
|
||||
Это не запускает SDD lifecycle.
|
||||
| Реализованные доходы и периоды | [Income analytics](features/brokerage-account-income-analytics.md) |
|
||||
| Восстановление после ошибок интерфейса | [Frontend resilience](features/frontend-ui-resilience.md) |
|
||||
|
||||
## UI
|
||||
|
||||
Theme/tokens/reuse — [design system](development/design-system.md).
|
||||
Существующие components/stories и ограничения — [UI catalog](development/ui-catalog.md).
|
||||
Query freshness/focus policy — [ADR 007](adr/007-react-query-fetch-policy.md).
|
||||
Визуальные роли и общие состояния — [дизайн-система](development/design-system.md).
|
||||
Примеры экранов и ограничения их проверки — [UI-каталог](development/ui-catalog.md).
|
||||
Обновление данных при возвращении в окно — [ADR 007](adr/007-react-query-fetch-policy.md).
|
||||
|
||||
## Engineering
|
||||
|
||||
Scope/abstraction/dependency/testing — [общие правила](development/engineering-governance.md).
|
||||
Routing/recovery — [context discipline](development/agent-token-efficiency.md).
|
||||
Commands — [frontend](development/frontend-workflow.md) / [backend](development/backend-workflow.md).
|
||||
Известный Audit ID — найденная запись [registry](development/audit-remediation.md);
|
||||
читай её evidence только для этого вопроса. Historical audits не являются live rules.
|
||||
Принципы изменения и проверки системы — [engineering governance](development/engineering-governance.md).
|
||||
Ведение знаний и разрешение расхождений — [документация](development/documentation.md).
|
||||
Локальное окружение и диагностика — [local workspace](development/local-workspace.md).
|
||||
Служебные материалы сопровождения и исторические результаты отделены от
|
||||
описания системы в [разделе разработки](development/README.md).
|
||||
|
||||
Reference in New Issue
Block a user