$npx -y skills add TserenTserenov/FMT-exocortex-template --skill verifyВерификация артефакта по эталону из Pack. Загружает роль VR.R.001 (Верификатор) с context isolation — проверяет результат, а не процесс создания.
| 1 | # Верификация артефакта |
| 2 | |
| 3 | > **Роль:** VR.R.001 Верификатор (PACK-verification) |
| 4 | > **Принцип:** Context isolation (VR.SOTA.002) — проверяю результат по эталону, НЕ процесс создания. |
| 5 | > **Архитектура:** Ядро (Pack, фиксированное) + Контекст (переменный) — AS.D.004. |
| 6 | |
| 7 | Аргументы: $ARGUMENTS |
| 8 | |
| 9 | ## When to use |
| 10 | |
| 11 | Верификация артефакта по эталону из Pack. Загружает роль VR.R.001 (Верификатор) с context isolation — проверяет результат, а не процесс создания. |
| 12 | |
| 13 | ## Algorithm |
| 14 | |
| 15 | ## Шаг 0. Определить тип проверки |
| 16 | |
| 17 | | Аргумент | Тип | Что проверяет | |
| 18 | |----------|-----|---------------| |
| 19 | | `code` | Проверка кода | Качество кода: логика, edge cases, безопасность, coupling | |
| 20 | | `archgate` | Проверка реализации АрхГейта | Код соответствует ЭМОГССБ-оценке, принципы воплощены | |
| 21 | | `capture` | Проверка capture-candidate | UL, полнота, непротиворечивость с Pack | |
| 22 | | `pack` | Проверка Package-адекватности | Проверяет 11 координат E.4.DPF.DA seed-пакета (Ф1-Ф3 артефакты): SoTA, decision-record, seed-маркер, их достаточность. Используется из `/verify pack` или `pack-creator` Шаг 4 | |
| 23 | | `wp` | Приёмка рабочего продукта | Критерии done из WP context file | |
| 24 | | `chain` | Data flow check | Прочитаны ли downstream consumers? Контракты совпадают? (CoVe stage 3) | |
| 25 | | `adversarial` | Scope & bias check | Scope определён анализом или выводом? Что НЕ прочитано? (Pre-mortem) | |
| 26 | | `subsection` | Проверка подраздела руководства (SS) | 🔴 v4-lint + 🟡 нарратив/дуга/практика/аналогия (G-L) по CHECKLIST-subsection-v1.md | |
| 27 | | `section` | Проверка раздела руководства (S) | 🔴 v4-lint section + 🟡 связность SS, дуга по ступеням, охват темы (D-H) по CHECKLIST-section-v1.md | |
| 28 | | `guide` | Проверка руководства целиком | 🔴 v4-lint guide + 🟡 целостность объекта, дуга, охват узлов мастерства, эпилог (E-I) по CHECKLIST-guide-v1.md | |
| 29 | | `auto` или пусто | Автоопределение | По типу файла и контексту сессии | |
| 30 | |
| 31 | **Автоопределение:** |
| 32 | - Был АрхГейт в текущей сессии → `archgate` |
| 33 | - Указан путь к .py/.ts/.sh файлу → `code` |
| 34 | - Указан путь к Pack-сущности → `capture` |
| 35 | - Указан путь к WP context → `wp` |
| 36 | - Изменения >1 файла + cross-component → предложить `chain` |
| 37 | - После АрхГейта + код → предложить `adversarial` |
| 38 | - Путь содержит `subsection_id: PD.GUIDE.N.SX.SSY` во frontmatter, или один файл подраздела руководства → `subsection` |
| 39 | - Путь — папка раздела (`S{N}-*/`) или указан `section_id` во frontmatter → `section` |
| 40 | - Путь — `structure-guide-N.md` или папка руководства целиком → `guide` |
| 41 | - Не определился → спросить пользователя |
| 42 | |
| 43 | **Триггеры от пилота:** «проверь подраздел X» / «проверь раздел S{N}» / «проверь руководство N» → соответственно `subsection` / `section` / `guide`. |
| 44 | |
| 45 | ## Шаг 1. Запустить sub-agent Верификатора |
| 46 | |
| 47 | Запустить Agent tool с context isolation: |
| 48 | |
| 49 | **Для `code`:** |
| 50 | - Прочитать `git diff` (или указанные файлы) |
| 51 | - Прочитать `CLAUDE.md` затронутого репо |
| 52 | - Передать sub-agent'у: diff + CLAUDE.md + чеклист code |
| 53 | - Модель sub-agent'а: Sonnet |
| 54 | |
| 55 | **Для `archgate`:** |
| 56 | - Найти ЭМОГССБ-таблицу из текущей сессии (или запросить) |
| 57 | - Прочитать изменённые файлы реализации |
| 58 | - Прочитать DP.ARCH.001 §7 (21 принцип) |
| 59 | - Передать sub-agent'у: файлы + таблица + принципы + чеклист archgate |
| 60 | - Модель sub-agent'а: Opus |
| 61 | |
| 62 | **Для `capture`:** |
| 63 | - Прочитать capture-candidate |
| 64 | - Прочитать manifest целевого Pack |
| 65 | - Передать sub-agent'у: candidate + manifest + чеклист capture |
| 66 | - Модель sub-agent'а: Sonnet |
| 67 | |
| 68 | **Для `pack`:** |
| 69 | - Прочитать WP-контекст пакета (WP-474.md или папка пакета) |
| 70 | - Прочитать файлы артефактов Ф1-Ф3: |
| 71 | - `06-sota/{slug}-sota-sheet.md` (Ф1: SoTA-лист) |
| 72 | - `.pfad-decision.md` (Ф2: decision record) |
| 73 | - `01B-distinctions.md` с маркером `**Maturity:** seed` (Ф3: seed-маркер + mature-lite чек-лист) |
| 74 | - Передать sub-agent'у промпт: `verify-pack-adequacy-subsection.md` + данные из контекста |
| 75 | - Модель sub-agent'а: Sonnet |
| 76 | - **Verdict**: PASS/CONDITIONAL/FAIL по координатам D1-D11 (WP-474 §4) |
| 77 | |
| 78 | **Для `wp`:** |
| 79 | - Прочитать WP context file (`{{GOVERNANCE_REPO}}/inbox/WP-{N}-*.md`) |
| 80 | - Прочитать артефакт РП |
| 81 | - Передать sub-agent'у: артефакт + критерии done + чеклист wp |
| 82 | - Модель sub-agent'а: по verification_class |
| 83 | |
| 84 | **Для `chain` (CoVe — Chain-of-Verification, Meta ACL 2024):** |
| 85 | - Прочитать `git diff` изменённых файлов |
| 86 | - Для каждого изменённого output: `grep` по codebase — найти все файлы, которые import/require/вызывают изменённые функции |
| 87 | - Прочитать каждый downstream consumer |
| 88 | - Передать sub-agent'у: diff + consumers + чеклист chain |
| 89 | - Моде |