docs(tooling): apply 9-attribute template to §4.1-§4.9 (ADR-011 A3 sub-batch 1)
+ §0.1 row template (one-time, ADR-011 mandated). + Атрибуты block for phase-0 nodes #1-#9. #1 PostgreSQL MCP dormant (replaced by #10 Boost in phase 1). Per spec §4.1, plan Task A3 sub-batch 1. Tooling header v2.16 remains; final v2.17 bump after all 6 sub-batches. NB: file-layout adaptation — phase-0 nodes #1-#9 live in §2 tables (not §4.X subsections); Атрибуты blocks placed in new §2.4 subsection. Plan-template "§4.1..§4.9" referenced the abstract node-index, not file headings; subsequent sub-batches will follow same pattern (§3.5 for phase-1 nodes #10-#18, etc.). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -88,6 +88,30 @@
|
||||
|
||||
**КАНОН СЧЁТЧИКОВ.** Числовые счётчики формализованных позиций и off-phase подкатегорий тулчейна каноничны здесь — в Прил. Н §0. CLAUDE.md, Pravila §13.2 и PSR_v1 R10.1 ссылаются сюда формулировкой «реестр и счётчики — Tooling Прил. Н §0» и не дублируют числа. Введено SYSTEM-аудитом 18.05.2026 (finding 3) для устранения класса «арифметический дрейф счётчиков» (ловился аудитами v1.85/v1.86).
|
||||
|
||||
### §0.1 Row template (v2.17+ — per ADR-011)
|
||||
|
||||
Every row §4.X (а также вынесенные блоки §2.4 для phase-0, §3.5 для phase-1 и т.д. — где узлы зафиксированы таблицами, а не отдельными подсекциями) MUST include 9 obligatory attributes in a structured block at the top of the section:
|
||||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---|---|---|---|
|
||||
| `id` | `#NN` | yes | Unique number (matches Прил. Н TOC) |
|
||||
| `name` | string | yes | Canonical tool name |
|
||||
| `kind` | enum | yes | `plugin` / `skill` / `mcp` / `hook` / `vendored-skill` / `composer-dep` / `npm-dep` / `agent` / `binary-dep` |
|
||||
| `phase` | enum | yes | `0` / `1` / `2` / `3` / `off-phase` |
|
||||
| `subcategory` | string | optional | Off-phase subcategory (absent for phase-active) |
|
||||
| `triggers` | string | yes | Keywords/task-types that route to this node |
|
||||
| `boundaries` | string | yes | ADR-cross-ref OR explicit «no neighbor» |
|
||||
| `dormant` | boolean | yes | `false` (active) / `true` (artefacts kept, runtime disabled) |
|
||||
| `last-touched` | ISO date | yes | Date of last registry update |
|
||||
|
||||
Block format (markdown table inside the §4.X section, immediately after the section heading):
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #NN | <name> | <kind> | <phase> | <subcat or —> | «<triggers>» | <ADR-NNN or none> | false | 2026-05-19 |
|
||||
|
||||
Existing prose follows the table.
|
||||
|
||||
**Ключевой принцип фазирования:** не активируем фазу N+1, пока не закрыт триггер фазы N. Без `composer create-project` Boost не работает; без Vuetify-приложения Histoire бесполезен.
|
||||
|
||||
---
|
||||
@@ -132,6 +156,84 @@
|
||||
| 8 | **gitleaks** | GitHub Releases (`gitleaks_<v>_windows_x64.zip`) | Pre-commit hook: поиск телефонов, email, токенов, ИНН, КЭП в diff. Правило §5.2 правил Claude |
|
||||
| 9 | **Pa11y** | `npm i -D pa11y pa11y-ci` | WCAG 2.1 AA проверка прототипов. Требование брендбука §3.4. Единственный источник истины по a11y во всём проекте |
|
||||
|
||||
### 2.4. Атрибуты узлов фазы 0 (per ADR-011)
|
||||
|
||||
Структурированные блоки 9-атрибутного шаблона §0.1 для phase-0 узлов #1–#9. Шаблон введён ADR-011 (Task A3 sub-batch 1, 19.05.2026). Существующие таблицы §2.1/§2.2/§2.3 сохраняются как human-readable дескрипция; блоки ниже — machine-friendly реестр атрибутов.
|
||||
|
||||
#### #1 PostgreSQL MCP
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #1 | PostgreSQL MCP | mcp | 0 | — | «SQL validation, schema check, dev DB introspection» | none (заменён #10 Laravel Boost в фазе 1 — см. §3.1) | true | 2026-05-19 |
|
||||
|
||||
Прим.: dormant=true — узел исторически замещён #10 Boost при переходе в фазу 1; артефакт реестра сохраняется как historic slot (CLAUDE.md §3.1 row #1).
|
||||
|
||||
#### #2 Playwright MCP
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #2 | Playwright MCP | mcp | 0 | — | «HTML prototype, screenshot, interaction smoke» | none | false | 2026-05-19 |
|
||||
|
||||
#### #3 GitHub MCP
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #3 | GitHub MCP | mcp | 0 | — | «issues, PR, commits, открытые вопросы» | none | false | 2026-05-19 |
|
||||
|
||||
#### #4 markdownlint-cli2
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #4 | markdownlint-cli2 | npm-dep | 0 | — | «lint .md, markdown style, заголовки/таблицы» | none | false | 2026-05-19 |
|
||||
|
||||
#### #5 cspell
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #5 | cspell | npm-dep | 0 | — | «орфография ru/en, кастомный словарь» | none | false | 2026-05-19 |
|
||||
|
||||
#### #6 lychee
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #6 | lychee | binary-dep | 0 | — | «проверка ссылок .md, кросс-ссылки архива» | none | false | 2026-05-19 |
|
||||
|
||||
#### #7 Stylelint
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #7 | Stylelint | npm-dep | 0 | — | «CSS lint, Vue SFC style» | none | false | 2026-05-19 |
|
||||
|
||||
#### #8 gitleaks
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #8 | gitleaks | binary-dep | 0 | — | «секреты в diff, pre-commit hook» | none | false | 2026-05-19 |
|
||||
|
||||
#### #9 Pa11y
|
||||
|
||||
**Атрибуты:**
|
||||
|
||||
| id | name | kind | phase | subcategory | triggers | boundaries | dormant | last-touched |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| #9 | Pa11y | npm-dep | 0 | — | «a11y WCAG 2.1 AA, прототипы, технический SoT» | none | false | 2026-05-19 |
|
||||
|
||||
---
|
||||
|
||||
## 3. Фаза 1 — старт Laravel (+9 новых, −1 заменён, итого 17 активных)
|
||||
|
||||
Reference in New Issue
Block a user