Skip to content

feat: специфікація читабельна в проєкті через npm-залежність @7n/mt - #2

Merged
vitaliytv merged 1 commit into
mainfrom
claude/docs-npm-dep
Jul 23, 2026
Merged

feat: специфікація читабельна в проєкті через npm-залежність @7n/mt#2
vitaliytv merged 1 commit into
mainfrom
claude/docs-npm-dep

Conversation

@vitaliytv

Copy link
Copy Markdown
Member

Що це

Альтернатива до #1 (Rust-крейт mt-protocol-check, лишається відкритим на розгляд) — простіший канал доступу до специфікації протоколу для LLM-агентів, що працюють у цьому репозиторії: без Rust/include_dir/cargo, чиста npm-залежність.

Зміни

  • package.json: @7n/mt (сам пакет-специфікація, docs-only, публікується з nitra/mt з версії 0.29.0) доданий як devDependency ^0.30.1.
  • Після bun install специфікація лежить на диску як звичайні md-файли: node_modules/@7n/mt/docs/index.md — жодного окремого клонування чи git-інструментарію не потрібно.
  • README.md: виправлено застарілу згадку "npm-пакет @7n/mt = тонкий JS-клієнт" — це ім'я тепер належить специфікації (з 0.29.0); код CLI живе в nitra/mt-js і наразі не публікується. Додано короткий розділ про новий канал.
  • .cspell.json: додано відсутні словоформи (бампом, бінарниками), які спливли, коли делта-лінт вперше перевірив орфографію всього README.md.

Верифікація

  • bun install — резолвиться, node_modules/@7n/mt/docs/index.md читається
  • bun run test — 12 файлів, 116 тестів, усі зелені
  • npx @7n/rules lint --no-fix — залишкові 3 порушення (js/check oxlintrc-drift, npm-module/package_structure, npm-module/root_package_json) підтверджено пре-екзистуючі: ідентичні на чистому main без цього діффу

Не мерджити

Чекає рішення власника, чи цей канал замінює #1, чи обидва лишаються паралельно.

🤖 Generated with Claude Code

Замість окремого Rust-крейта (nitra/mt#62, лишається відкритим на
розгляд) — простіший канал: @7n/mt (сам пакет-специфікація, docs-only,
з 0.29.0) як звичайна devDependency. Після bun install доступна на
диску без окремого клонування: node_modules/@7n/mt/docs/index.md.

README: виправлено застарілу згадку "@7n/mt = тонкий JS-клієнт" — це
ім'я тепер належить специфікації; код CLI живе в nitra/mt-js і наразі
не публікується.

.cspell.json: додано відсутні словоформи (бампом, бінарниками), які
спливли при делта-лінті зміненого README.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vitaliytv
vitaliytv merged commit 25f66e1 into main Jul 23, 2026
1 of 4 checks passed
vitaliytv added a commit that referenced this pull request Aug 9, 2026
)

Відкрите питання #2 з docs/conformance.md закрито: ні голий YAML (як
показувала спека), ні markdown-секції (як робив код), а фронтматер у
markdown — файл має розширення .md, тож це узгоджено з рештою
артефактів вузла, дає один код-шлях парсингу, рендериться при рев'ю і
лишає місце для прози в тілі. Спеку уточнено: nitra/mt#65.

Жорсткий перехід — старий формат НЕ читається як порожній (це підмінило
б model_tier/agent_cli дефолтами, тобто вузол тихо виконався б не тим
виконавцем), а валить preflight до claim із вказівкою на graph.md.

Парсер: додано дві конструкції, потрібні для форми зі спеки й раніше
відсутні — inline flow-масиви (skills: [bash, write-files]) і списки
мап (retry_ladder: - {} / - strategy: diagnose-first, з рядками
продовження). Кома в лапках не розрізає елемент; «- http://x» лишається
скаляром. Серіалізатор не чіпано — JS-байт-парність збережена.

retry_ladder тепер приймає і рядок, і мапу зі strategy/model_tier_delta;
раніше секційний формат зводив щабель до стрічки й багатопольові щаблі
були невиразні в принципі.

Міграція: 19 файлів dogfood-графа, created_at узято з дати додавання
файлу в git, per-node значення (MIN/MAX, agent_cli: codex) збережені.

Тести: 7 на парсер, 2 на відхилення старого формату, 2 на форму
прапорів. 158 passed у mt-core, cargo test --workspace зелений (19/19
наборів), clippy чистий.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant