Forge
markdowndeeb25a2
1# CIDE — глоссарий v1
2
3**Статус:** living document (2026-07-12)
4**Назначение:** единый словарь продукта — чтобы не путать **steer**, **SEDM**, **intent card**, **workline** и cockpit-термины.
5
6**Норматив:** формулировки привязаны к ADR; при расхождении с кодом — ADR + issue, глоссарий обновляется вслед за ADR.
7
8**Связь:** [IOP ADR 0121](../adr/0121-intent-oriented-programming-paradigm.md) · [0172 habitat](../adr/0172-conversation-first-habitat.md) · [0173 intent card](../adr/0173-intercom-intent-card-session-decision-capture.md) · [0174 SEDM](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) · [0116 steer](../adr/0116-intercom-session-tree-and-agent-message-steering.md) · KB unified model (agent-notes `kb-cide-sedm-unified-model-v1.md`)
9
10---
11
12## Как читать
13
14| Метка | Смысл |
15|-------|--------|
16| **ADR** | Зафиксировано в Architecture Decision Record |
17| **Research** | Эмпирика из papers; не обязует UI один в один |
18| **Internal** | Внутренний spine; не обязательно в публичном manifest |
19
20**Каноническое имя** в коде, ADR и UI — **английское** (столбец «Термин»). Русские алиасы — для разговора и онбординга; см. §0.
21
22---
23
24## 0. Русские алиасы (операторский язык)
25
26| Канон (EN) | По-русски | Заметка |
27|------------|-----------|---------|
28| **Steer** | **Перехват** | «Стоп, не туда» — не передача контроля агенту |
29| **Follow-up** | **Уточнение в очередь** | После текущего хода, без прерывания |
30| **Continue from here** | **Продолжить отсюда** | Ветвление дерева, не steer |
31| **Fork branch** | **Ветка** / форк ветки | Внутри workline |
32| **Spin-off** | **Вынос** (в другую workline) | Согласованный перенос диапазона сообщений |
33| **Habitat** | **Среда сессии** / habitat | Session graph canvas, не «чат» |
34| **Workline** | **Линия работы** | Параллельная тема в одной сессии |
35| **Scope strip** | **Полоса контекста** | Workline, ветки, context card |
36| **Session graph** | **Граф сессии** | Дерево с `parent_id`; правда сессии |
37| **Flat feed** | **Лента ветки** | Проекция одной ветки, не весь граф |
38| **Intent card** | **Карточка решения** / карточка намерения | T1, не ADR |
39| **Context card** | **Карточка контекста** | T2, «зачем этот файл сейчас» |
40| **Intent tag** | **Тег намерения** | Короткий route-hint на workline |
41| **SEDM** | **Инженерное принятие решений** | Внутренний spine; аббревиатуру можно не расшифровывать в UI |
42| **Perceive** | **Восприятие** / обстановка | Фаза: что делаем, где я |
43| **Process** | **Проработка** / анализ | Фаза: альтернативы, риск |
44| **Perform** | **Действие** / исполнение | Фаза: steer, код, verify |
45| **Evaluate** | **Оценка итога** | Достаточно хорошо? checkpoint |
46| **Satisficing** | **Достаточно хорошо** | Не «идеальный» вариант |
47| **Tool backpack** | **Рюкзак инструментов** | Прыжки JIRA ↔ CI ↔ chat ↔ diff |
48| **Transfer** (harness) | **Делегирование** | Агент с границами — **≠** перехват |
49| **Materialization** | **Материализация** (в prompt) | Что из графа попало в `messages[]` |
50| **Harness** | **Обвязка агента** / harness | Оркестратор — **≠** habitat |
51| **Verification loop** | **Контур верификации** | Синтез → проверка → принятие человеком |
52| **Semantic Map** | **Семантическая карта** | Engineer reveal, не default |
53| **Correspondence (CRS)** | **Соответствие** док↔код | Drill-down; operator видит Applies |
54| **Applies** | **Применимо** (one-liner) | Какие ADR/KB относятся к файлу |
55| **Blast radius** | **Радиус поражения** / blast radius | Tao I-9, Q-blast |
56| **Checkpoint** | **Чекпоинт** | Export, handoff, KB |
57| **Decision record** | **Запись решения** (агент) | `decision_recorded`; findings + card |
58| **Stale decision** | **Устаревшее решение** | Код ушёл вперёд; re-verify, не trust |
59| **Superseded** | **Заменено** | Как в ADR; новое событие вместо старого |
60
61---
62
63## 1. Intercom и session graph
64
65| Термин | Определение | ADR |
66|--------|-------------|-----|
67| **Intercom** | Канал сессии: диалог оператора и агента, команды, topic/worklines — **не** generic messenger | [0080](../adr/0080-intercom-naming-and-multi-party-channel-model.md) |
68| **Forward** | Центральная колонка главного окна; primary work surface = Intercom или редактор | [0021](../adr/0021-pfd-mfd-cockpit-attention-model.md), [0120](../adr/0120-primary-work-surface-intercom-or-editor.md) |
69| **Session graph** | Дерево событий/сообщений с `parent_id`, ветками, head — **физическая** модель сессии | [0116](../adr/0116-intercom-session-tree-and-agent-message-steering.md), [0045](../adr/0045-agent-chat-persistence-event-log-and-projections.md) |
70| **Habitat** | Session graph canvas в Forward (scope, worklines, tree/timeline) — рабочая память сессии, не «лента чата»; **имя в глоссарии**, не ось `settings.toml` (см. `primary_work_surface`) | [0172](../adr/0172-conversation-first-habitat.md) |
71| **Workline** | Параллельная линия работы в одной сессии (индекс тем); свой head в дереве; **не** аналог Cursor New Chat | [0172](../adr/0172-conversation-first-habitat.md), [0072](../adr/0072-chat-topic-cards-intent-melody-keyboard-contract.md) |
72| **Topic / topic card** | Продуктовая «нить» с заголовком и summary; может ссылаться на поддерево workline | [0096](../adr/0096-intercom-topic-card-summary-and-product-spine.md) |
73| **Spine** | Продуктовая линия «над чем работаем в целом» (chrome-навигация) | [0127](../adr/0127-intercom-spine-and-topic-tabs-chrome-navigation.md) |
74| **Scope strip** | Полоса контекста сессии: активная workline, open items, ветки, **context card** (collapsed) | [0172](../adr/0172-conversation-first-habitat.md) |
75| **Fork branch** | Новые события как потомки выбранного узла **внутри** workline; история не переписывается | [0116](../adr/0116-intercom-session-tree-and-agent-message-steering.md) |
76| **Spin-off** | Перенос диапазона сообщений в **другую** workline (согласованное событие в log) | [0172 §11](../adr/0172-conversation-first-habitat.md) |
77| **Rewind / continue from here** | Выбор узла → новые события пишутся от него (ветвление) | [0116](../adr/0116-intercom-session-tree-and-agent-message-steering.md) |
78| **Flat feed** | Хронологическая проекция **одной ветки**; не единственная правда сессии | [0170](../adr/0170-intercom-feed-readability-mlp.md), [0172](../adr/0172-conversation-first-habitat.md) |
79| **Clarification batch** | Пакет уточняющих вопросов агента; отдельный lifecycle от intent card | [0031](../adr/0031-agent-chat-clarification-batches-and-threading.md) |
80
81### Steer, follow-up, continue — не путать
82
83| Термин | Определение | Это **не** |
84|--------|-------------|------------|
85| **Steer** (перехват) | Пока агент в `running`: оператор вставляет **новый приоритет**; после текущего tool оставшиеся tools **отменяются**, оркестратор идёт по новому intent | Передача контроля агенту; не «стоп навсегда» |
86| **Follow-up** | Сообщение в **очередь**: доставится после завершения **текущего** хода агента; ход **не** прерывается | Steer |
87| **Normal / continue** | Обычное сообщение, когда агент не в долгом tool-run | Fork ветки |
88| **Continue from here** | Смена **точки ветвления** в дереве (куда пишутся новые события) | Steer во время run |
89
90Ощущение для оператора: steer ≈ «стоп, не туда, делай X» (с оговоркой: после безопасной точки текущего tool).
91
92---
93
94## 2. IOP (Intent-Oriented Programming)
95
96| Термин | Определение | ADR |
97|--------|-------------|-----|
98| **IOP** | **Дисциплина коммуникации**: именованное намерение, верификация, эпистемический контекст — не замена ООП/кода | [0121](../adr/0121-intent-oriented-programming-paradigm.md) |
99| **Intent** | Именованная договорённость о цели/целевом состоянии; носители — Intercom, KB, `command_id`, Melody, slash | [0121](../adr/0121-intent-oriented-programming-paradigm.md) |
100| **Intent tag** | Короткий route-hint на workline (MCP/KB); **не** полный rationale | [0172](../adr/0172-conversation-first-habitat.md) |
101| **Verification loop** | Синтез → diff/диагностики/тесты → принятие или откат **человеком** | [0121](../adr/0121-intent-oriented-programming-paradigm.md) |
102| **Epistemic context** | KB, agent-notes, playbooks — ограничители смысла для агента | [0121](../adr/0121-intent-oriented-programming-paradigm.md) |
103| **Intent Melody** | Декларативная привязка интентов к UI и горячим клавишам | [0060](../adr/0060-keyboard-chord-stack-fms-tactical-strategic.md) |
104| **Slash / unified command line** | `/…` в composer → тот же `command_id`, что палитра/MCP | [0119](../adr/0119-chat-slash-commands-intercom-surface.md) |
105
106---
107
108## 3. SEDM (Software Engineering Decision Making)
109
110| Термин | Определение | ADR / KB |
111|--------|-------------|----------|
112| **SDM** | Research-имя: Software **Decision** Making — эмпирика из papers | KB `kb-cide-sdm-decision-making-research-v1` |
113| **SEDM** | Продуктовый spine: Software **Engineering** Decision Making — цикл инженерного решения в agentic-контуре | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) **Internal** v1 |
114| **Perceive** | Фаза: обстановка — workline, файл, зачем сейчас (PAVE; CRDM orientation) | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
115| **Process** | Фаза: альтернативы, blast radius, consistency, necessity (CARE) | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
116| **Perform** | Фаза: действие — steer, код, verify, checkpoint (TEAM) | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
117| **Evaluate** | Фаза: satisficing — достаточно хорошо? mitigate? export? → снова Perceive | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
118| **Information need** | Тип вопроса при решении по коду (Tao I-x, Pascarella N-x, CRDM themes) | Research KB |
119| **Q-*** | Унифицированные ID вопросов в meta-модели (Q-goal, Q-alt, Q-blast, …) | KB `kb-cide-sedm-unified-model-v1` |
120| **Tool backpack** | Фрагментация контекста между issue tracker, CI, chat, diff (CRDM) | Research |
121| **Satisficing** | «Достаточно хорошее» решение, не полный оптимум (RPD / CRDM) | Research |
122
123**IOP vs SEDM:** IOP = *что договариваем и как верифицируем*; SEDM = *как проходим решение по коду по фазам*; UX = производная SEDM × поверхность.
124
125---
126
127## 4. Артефакты (лестница T0–T4)
128
129| Tier | Термин | Определение | ADR |
130|------|--------|-------------|-----|
131| **T0** | Реплика Intercom | Сырое сообщение turn; Perceive без структуры | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
132| **T1** | **Intent card** | Сессионное решение: outcome, trigger, considered[], chosen + rationale; event `intent_card_recorded` | [0173](../adr/0173-intercom-intent-card-session-decision-capture.md) |
133| **T2** | **Context card** | Perceive-снимок для файла/attach: workline, Applies, path_hint; **не** ADR | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
134| **T3** | KB scratch | Handoff, checkpoint, внешняя память (agent-notes) | [0118](../adr/0118-agent-notes-core-2-toml-and-knowledge-path.md) |
135| **T4** | **ADR** | Долгоживущий invariant команды; кристалл из кластера T1–T3 | [0155](../adr/0155-documentation-code-correspondence-and-architectural-drift.md) |
136
137### Поля intent card (tier A)
138
139| Поле | Смысл |
140|------|--------|
141| `outcome` | **Что** должно стать правдой (не путать с goal-only) |
142| `trigger` | **Боль / зачем сейчас** |
143| `considered[]` | Отвергнутые варианты + `rejected_because` — **обязательно** при фиксации |
144| `chosen_approach` | Что выбрали (метка) |
145| `selection_rationale` | Почему это, а не others |
146| `constraints` | Ограничения коротко |
147| `validation_plan` | Как проверим |
148
149---
150
151## 5. Cockpit, VDS, инструменты
152
153| Термин | Определение | ADR |
154|--------|-------------|-----|
155| **PFD** | Primary Flight Display — зона «сейчас» (карта, health, semantic map) | [0021](../adr/0021-pfd-mfd-cockpit-attention-model.md) |
156| **MFD** | Multi-Function Display — правая колонка, страницы (терминал, build, CRS, …) | [0021](../adr/0021-pfd-mfd-cockpit-attention-model.md) |
157| **Surface** | Слой VDS: оператор читает и действует (Intercom, scope, composer) | [cide-vds-v1.md](cide-vds-v1.md) |
158| **Chrome** | Слой VDS: навигация, MFD-рамка, INDEX | [cide-vds-v1.md](cide-vds-v1.md) |
159| **Instrument** | Слой VDS: инженерный reveal (SM subgraph, health ladder) — **не** default operator UX | [cide-vds-v1.md](cide-vds-v1.md) |
160| **Semantic Map (SM)** | Process engine: subgraph, control flow — operator default = **context card path**, не hero graph | [0039](../adr/0039-workspace-navigation-affordances.md), [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
161| **Correspondence (CRS)** | Модель L0–L4 док↔код; operator UI = **Applies** one-liner + drill-down | [0155](../adr/0155-documentation-code-correspondence-and-architectural-drift.md), [0156](../adr/0156-correspondence-mfd-surface-and-reverse-code-anchors.md) |
162| **HCI / INDEX** | Гибридный поиск по коду — Perceive orientation | [0105](../adr/0105-hybrid-codebase-index-for-csharp-web.md) |
163| **AEE / verify ladder** | Perform: нативная верификация (build, test, roslyn) | [0148](../adr/0148-agent-execution-environment-verification-ladder-and-native-tooling.md) |
164| **IDS** | IDE Display System — overlay (палитра, модалки) | [0079](../adr/0079-ide-display-system-ids-overlay-pipeline.md) |
165| **CDS** | Channel → compositor → surface для приборов deck | [0036](../adr/0036-cds-channel-compositor-surface-pipeline.md) |
166| **MCP** | Протокол инструментов агента в IDE | [0008](../adr/0008-mcp-contracts-and-testable-infrastructure.md) |
167
168---
169
170## 6. Harness и агент
171
172| Термин | Определение | ADR |
173|--------|-------------|-----|
174| **Harness** | Оркестрация агента: prompt, tools, materialization, safety — **≠ habitat** | [0166](../adr/0166-agent-centric-harness-model-comfort-and-pay-per-token-economics.md) |
175| **Materialization** | Что из session graph попадает в `messages[]` и system one-liner | [0166](../adr/0166-agent-centric-harness-model-comfort-and-pay-per-token-economics.md), [0172](../adr/0172-conversation-first-habitat.md) |
176| **Transfer** (ADM TEAM) | Risk treatment: делегировать агенту **с границами** — **≠ steer** | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md), FAA ADM |
177| **`sedm_phase`** | Опциональная метка фазы в meta сессии для bias промпта | [0174](../adr/0174-sedm-software-engineering-decision-making-ux-spine.md) |
178| **`delivery_mode`** | `steer \| follow_up \| normal` в event log | [0116](../adr/0116-intercom-session-tree-and-agent-message-steering.md) |
179
180---
181
182## 7. Частые путаницы (шпаргалка)
183
184| Путают | Различие |
185|--------|----------|
186| Steer ↔ Transfer | Steer = оператор **перехватывает** ход агента; Transfer = **делегирование** агенту в рамках политики |
187| Intent ↔ Intent card ↔ Intent tag | Intent = парадигма; **card** = T1 событие; **tag** = короткий route на workline |
188| Topic card ↔ Intent card | Topic = контейнер линии; Intent card = **решение** внутри workline |
189| Intent card ↔ ADR | Card = сессия/workline; ADR = invariant команды |
190| Context card ↔ CRS | T2 = operator Perceive one-liner; CRS = drill-down L0–L4 |
191| SDM ↔ SEDM | SDM = research; SEDM = продуктовый spine |
192| Habitat ↔ Harness | Habitat = UI/память сессии; Harness = оркестратор агента |
193| Session graph ↔ Flat feed | Graph = правда; feed = проекция одной ветки |
194| SM default ↔ Context card | Moat = T2 на scope strip; SM = engineer reveal |
195
196---
197
198## 8. История
199
200| Дата | Изменение |
201|------|-----------|
202| 2026-07-12 | v1: консолидация handbook §7, ADR 0121 §4, SEDM/habitat 0172–0174, steer 0116 |
203| 2026-07-12 | Habitat: glossary canvas name, не ось `settings.toml` |
204
205---
206
207*Предложения по терминам — PR в `docs/design/cide-glossary-v1.md`; при принятии решения — ссылка из соответствующего ADR.*
208
View only · write via MCP/CIDE