feat(mt-core)!: a.md/h.md — YAML-фронтматер замість markdown-секцій - #23
Merged
Conversation
Відкрите питання #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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Відкрите питання #2 — закрито
Ні голий YAML (як показувала спека), ні markdown-секції (як робив код), а фронтматер у markdown: файл має розширення
.md, тож це узгоджено з рештою артефактів вузла, дає один код-шлях парсингу, рендериться при рев'ю і лишає місце для прози в тілі. Спеку уточнено паралельним PR: nitra/mt#65.Жорсткий перехід зроблено безпечним
Старий формат не читається як порожній — це підмінило б
model_tier/agent_cliдефолтами, тобто вузол тихо виконався б не тим виконавцем на не тій моделі. Замість цього preflight падає до claim із вказівкою наgraph.md, окремо розрізняючи «markdown-секційний формат» і «файл без frontmatter».Парсер: дві відсутні конструкції
Форма зі спеки використовує inline flow-масиви (
skills: [bash, write-files]) і списки мап (retry_ladder: - {} / - strategy: diagnose-first) — жодної з них хендмейд-парсер не вмів. Додано обидві, з рядками продовження для багатопольових щаблів. Кома в лапках не розрізає елемент;- http://xлишається скаляром, а не стає мапою. Серіалізатор не чіпано — байт-парність із JS збережена, наявні тести парсера проходять без змін.Побічний ефект:
retry_ladderтепер приймає і рядок, і мапу зstrategy/model_tier_delta. Раніше секційний формат зводив щабель до одного рядка, тож багатопольові щаблі були невиразні в принципі — саме тому markdown і не міг виразити спеку.Міграція
19 файлів dogfood-графа.
created_atузято з дати додавання файлу в git, а не «зараз»; per-node значення збережені (перевірено наm0-dogfood-smoke:model_tier: MIN+agent_cli: codex).Тести
7 на парсер (inline flow, списки мап, багаторядкові щаблі, двокрапка у значенні, повна форма
a.md), 2 на відхилення старого формату, 2 на форму прапорівa.md/h.md. 158 passed уmt-core,cargo test --workspaceзелений (19/19 наборів), clippy чистий.Лишається одне відкрите питання — невидалений
mt-napi.🤖 Generated with Claude Code