Forge
markdowne8ad0934
1# Scope contour map (template)
2
3**Назначение:** white-label карта «личный scope → каталог в group KB» для org, где maintainer ведёт **personal** канон с **своими** именами `work/projects/<scope>/`, а участники читают **group** clone с **нейтральными** префиксами.
4
5**Экземпляр maintainer'а** (конкретные строки): `knowledge/work/org/scope-contour-map-v1.md` — **не** в kb-public (`work/` режется); каталог `work/org/` копируется в **group KB** при `seed-org-kb.ps1`.
6
7**Механика в контурах:** [`domains/agent-operations/map-kb-three-contours-v1.md`](../../domains/agent-operations/map-kb-three-contours-v1.md) § «Scope contour map».
8
9---
10
11## Не путать с другими картами
12
13| Карта | Где | Вопрос |
14|-------|-----|--------|
15| `workspace-scope-map-v1` | personal `work/local/` | `путь на диске` → **slice** (`<personal-scope>`) |
16| `scope-alias-map-v1` | personal `work/local/` | короткий токен → **тот же** slice |
17| **Scope contour map** (этот шаблон) | `work/org/` → group | personal **scope** → **имя каталога в group** + label |
18
19---
20
21## Файл экземпляра (maintainer)
22
23**Путь:** `knowledge/work/org/scope-contour-map-v1.md` (каталог **`work/org/`** — см. [`work/org/README.md`](../../work/org/README.md)).
24
25**Формат таблицы** (заполнить и поддерживать):
26
27| Personal scope (канон) | Group KB каталог | Label (для людей) | В group KB? |
28|------------------------|------------------|-------------------|-------------|
29| `<personal-scope-1>` | `<group-scope-dir-1>` | кратко: что за контур (продукты org, open stack, …) | да |
30| `<personal-scope-2>` | — | (почему не в org) | нет (`group-kb.ignore`) |
31
32**Правила заполнения:**
33
341. **Personal scope** — как в `work/projects/<scope>/` и в MCP `active_scope` (личный канон).
352. **Group KB каталог** — верхний префикс под `work/projects/` в **group**-репо после seed (может отличаться от personal).
363. **Label** — 3–8 слов для onboarding; без внутренних шуток и имён дисков.
374. **В group KB?** — `да` / `нет`; «нет» = scope в `knowledge/group-kb.ignore` или не экспортируется.
38
39---
40
41## Правила поведения (норма)
42
431. **`project-id` не обязан = scope-каталог.** Допустимо: `work/projects/<group-scope-dir>/<hub-project-id>/README.md` при seed-rename только **верхнего** префикса.
442. **`seed-org-kb.ps1`** — копирует `work/projects/` с фильтром `group-kb.ignore`; опционально **переименование** первого сегмента пути по этой таблице (реализация в скрипте maintainer'а).
453. **PR в group** — пути как в **group**-клоне (`<group-scope-dir>/`), не personal slug.
464. **Импорт org → personal** — вручную; обратный mapping по таблице.
475. **MCP:** `active_scope` и primary paths — **personal**; `knowledge_root_id=group` — пути из **group**-таблицы, не угадывать personal prefix.
48
49---
50
51## Чеклист maintainer (перед seed)
52
53- [ ] Таблица заполнена для всех scope, уходящих в group
54- [ ] `group-kb.ignore` согласован с колонкой «В group KB?»
55- [ ] Санитизация карточек: [`work/org/checklist-sanitize-paths-for-org-v1.md`](../../work/org/checklist-sanitize-paths-for-org-v1.md) (в group после seed; в kb-public не копируется)
56- [ ] Если rename при seed — smoke: один файл под `work/projects/<group-scope-dir>/…`
57
58---
59
60## Related
61
62- [`template-project-card-v1.md`](template-project-card-v1.md)
63- [`work/projects/README.md`](../../work/projects/README.md) (в каноне)
64- [`playbook-org-kb-white-label-v1.md`](../../domains/agent-operations/playbook-org-kb-white-label-v1.md)
65
66
View only · write via MCP/CIDE