9.6 KiB
Методология kzntsv
Методология — опциональный поведенческий слой зоны (не канон): проект выбирает ≤1. Выбор = свойство проекта (поле methodology в реестре, canon/index «Методология проекта — где искать»); агент узнаёт её из mappa (projects_list), НЕ из файла (канон Г1+Г9). Без выбора (methodology: null) действует только канон.
Центр: методология управляет последовательной работой агентов — предпочтительно вся работа в master, таски идут цепочкой (blocked_by: следующая заблокирована предыдущей). Параллельные ветки/worktree — второстепенный вариант (только для коллизионных зон / изоляции от интерактива).
Зоны ролей (двери boss/ops) — intent:2
Карта зон: zones/index (shared-вики). Зоны — wiki-холдеры (НЕ entity-тип),
сессионное состояние session.zone = boss|ops (отдельное поле от mode).
Вход/выход — MCP session.enter_zone / session.exit_zone (тонкая обвязка,
конфиг MCP НЕ мутирует). Доступно всем, всегда (это дверь — иначе
курица-яйцо); гейтится только спец-контент (доки + гранты зоны).
zone:boss— брейншторм/дистилляция/промоут (zones/boss/index). Проект-зона.workshop(реестр role: boss-зона).zone:ops— деплой/прод/секреты (zones/ops/index). Проект-зона.admin(реестр role: ops-зона).- Вики зон: project-scope вики
.workshop/.admin(AGENTS-каноны wiki:2656 / wiki:2608); грант-мапы — zones/boss/grants / zones/ops/grants. - Грант = ПРАВИЛО, не контракт (brainstorm:181): инструменты настроены у всех; зона — состояние, агент сверяет сам. Секреты = реальный забор (креды/токен, значения мимо mappa, канон Г6).
- Семантика enter/exit: вход =
session.zoneвыставляется в boss|ops (колонка); выход = NULL. Зона — гигиена контекста и разделение ролей, а не технический лок.
Исполнение: интерактив или поллер (гейт)
На старте работы оценить, как она исполняется, и предложить выбор. Босс оценивает и предлагает; оператор решает, куда идёт работа («рекомендую, не мени»). От этого выбора — структура исполнения (последовательность в master / ветки).
- ПОЛЛЕР (agensyn,
pool:runner) — атомарная, явный done-критерий, независимая или цепочно-зависимая (blocked_by), не коллизионная зона (§11.4: нет общих файлов/миграций/инфра; «клиенты не отвалятся» — не свойство системы), не требует человеческого суждения. - ИНТЕРАКТИВ (human-in-loop / босс-сессия) — коллизионная зона, кросс-каттинг, «клиенты не отвалятся» = свойство системы, требует человеческого суждения/refinement/дизайна.
Ветки (второстепенный вариант)
Предпочтительный путь: вся работа в master + таски последовательно (следующая заблокирована предыдущей, blocked_by-цепочка).
Ветки (worker/<slug> + git worktree) — второстепенный вариант, только когда нужна изоляция: коллизионная зона (§11.4), интерактив сидит на master, надо изолировать прогоны.
- Кластер = одна интеграционная линия
worker/<slug>(не «куча в пул», §11.2) — ПРИ использовании веток. - Зависимые —
blocked_by-цепочкой; мерж по одной — следующая стартует поверх смёрженного (§11.1, §11.3). - Экзекутор пушит в свою линию (
origin==HEAD), не в master — ПРИ ветках. - Merge в master — босс+человек отдельным шагом (§11.5; НЕ агentsyn, НЕ экзекутор).
- Disk-проекция: ветка = рабочее дерево (папка). Параллельные ветки = отдельные
git worktree→ отдельные связки/сессии; клейм по(repo,branch)уникален (одна ветка = одно извлечение). Команды/детали — runbooks/session.
Сессии
- Идентичность: связка {project, runtime, machine, folder}, ключ —
sourceRef;project— единственный кросс-агентный ключ. concepts/session-live-ingest - Клейм
(repo, branch)— ≤1 живая сессия (409 при занятости); detached HEAD → вне клейма. - Параллельные worktree на разные ветки = разные сессии/клеймы.
Ритуалы сессии
- Старт (orient): pull --ff-only → handoff → инбокс (raise+обработка) → liveness одной строкой → welcome по запросу. Не диг.
- Финиш (closing): handoff-write + PROPOSE wiki-ingest + PROPOSE закрытия тасок; мутации после подтверждения человека.
Шторм-методика (дивергенция → конвергенция)
- Буфер шторма — mappa brainstorm-сущность (crash-safe).
- Дивергенция: вопросы по одному → подходы с трейд-оффами → дизайн; HARD-GATE до импла.
- Конвергенция (grilling): номерные вопросы с рекомендованным ответом; фронт пуст = shared understanding.
- Зрелость — по критерию, не по ощущению.
- Промоут: intent-слой →
intent(concepts/entity-intent, гейт оператора); НИЖЕ ПО ПОТОКУ НЕЛЬЗЯ безapprovedintent — одобрить ДО создания requirements/plan/task (operator approval, source:admin); импл-контент → requirements; этапы → plan; durable → wiki. Refinement issue→task — concepts/issue-task-refinement. Исполнение через agensyn — concepts/agensyn-work-regulations.
Роли и ревью
- Ревью — отдельная роль, не имплементер; вердикт письмом (канон Г2).
- Каждая импл-таска несёт
**Review:**(subagent|next-session|none). Делегирование = таска + сопроводительное письмо. - Кластер импл из одного шторма → зонтичный review.
Дисциплина
- commit/push free (no local gate) · semver: фича = MINOR. Поиск — только
rg;grep -r/findпо деревьям с node_modules запрещены. Инфра-правки верифицируются в живой сессии после reload. Правила зоны — в AGENTS.md / wiki-сущности AGENTS; обновление — self-authoring при триггерах.
Выбор
Проект задаёт methodology: kzntsv (свойство реестра); контент — shared-вики methodology/kzntsv/index. Агент читает на старте из mappa (после канона). ≤1 (конкурент — methodology/anthropic-sdlc).
Связано
canon/index · canon/gates · runbooks/index · brainstorm:182 · zones/index · intent:2 · concepts/session-live-ingest (wiki:2604) · concepts/agensyn-work-regulations (wiki:3454) · concepts/entity-intent (wiki:3442) · concepts/issue-task-refinement (wiki:3453) · concepts/buffer-completion-criteria (wiki:3188) · methodology/anthropic-sdlc/index (wiki:3457) · concepts/methodology-adaptation (wiki:3458)