Forge
markdowndeeb25a2
1# ADR 0077: TECH — центр принципов (связный текст из канона)
2
3**Статус:** Proposed
4**Дата:** 2026-04-20
5
6**Назначение:** один **входной** ADR для читателя: **как мы думаем про технику** — границы модулей, контракты с внешним миром, агент, отладку и инфраструктуру репозитория — без обхода десятков записей. Детали и таблицы исключений — в исходных ADR и в [architecture-policy.md](../architecture-policy.md).
7
8**Канон текста** ниже — файлы в [`snippets/tech/`](snippets/tech/README.md); правки формулировок делаются там, этот ADR задаёт структуру и статус **Proposed/Accepted** для «центра» TECH.
9
10## Связанные ADR
11
12| ADR | Роль |
13|-----|------|
14| [0006](0006-presentation-layers-and-feature-slices.md) | слои и срезы |
15| [0008](0008-mcp-contracts-and-testable-infrastructure.md) | Стабильные контракты MCP и тестируемая инфраструктура |
16
17### Вне ADR
18
19| Документ | Роль |
20|----------|------|
21| [TECH/README.md](TECH/README.md) | указатель `TECH/` |
22| [TECH/principles.md](TECH/principles.md) | TECH/principles |
23**Сборка:** в GitHub сырые `{{ INCLUDE }}` не раскрываются — для чтения «как книга»: `dotnet script build-adr.csx` (развёрнутый `0077` попадёт в общую книгу) или точечно собери HTML из корня `docs/adr` после включения 0077 в свой `adr-book.md`.
24
25---
26
27## Введение
28
29Цель — **не «всё в одном монолите»** и не «каждый сам по себе»: **согласованные границы** между UI, сценариями и внешним миром, плюс **честный** контур для человека и агента (отладка, транспорт, контракты). Ниже — два блока: **контракты и инфраструктура**, затем **агент, отладка и наблюдаемость**.
30
31{{ INCLUDE: snippets/tech/0077-boundaries-contracts-and-infra.md }}
32
33{{ INCLUDE: snippets/tech/0077-agent-debug-and-observability.md }}
34
35---
36
37## Последствия
38
39- Онбординг и ревью могут ссылаться **«начни с [0077](0077-tech-principles-hub.md)»**, затем переходить по ссылкам в полные ADR.
40- Расширение «центра» — новые секции в `snippets/tech/` + новые `INCLUDE` здесь; дублировать длинный текст в нескольких ADR без нужды не требуется.
41
42---
43
44## Отклонённые альтернативы
45
46- **Только таблица ссылок** — недостаточно для читателя, который хочет **один связный текст** (см. [TECH/principles.md](TECH/principles.md) как карту, не как замену этого ADR).
47- **Дублировать норматив целиком** из 0008/0002 в этом файле — рассинхрон; канон остаётся в исходных ADR + сниппетах.
48
View only · write via MCP/CIDE