docs(mcp): точные описания потерь в getPage / exportPageMarkdown — конвертер канонический после #345, «LOSSY/lossless» устарели #415
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Мотивация
Описания двух тулов не соответствуют коду после #345 и искажают роутинг агентов.
packages/mcp/src/tool-specs.ts:551-557): «The Markdown conversion is LOSSY (block ids, exact table/callout structure are approximated)» — устарело. С #345 это канонический конвертер (#293/#351, инварианты P1–P2), «structure approximated» — неверно. Реальные потери — ровно три пункта: (а) block ids не видны в markdown; (б) resolved-якоря комментариев скрыты (dropResolvedCommentAnchors,client.ts:836-838); (в) ACCEPTED-атрибуты без markdown-представления (список ниже). Завышенная «lossy»-формулировка толкает агентов в лишниеgetPageJson— по замерам диалогов страница чаще всего читается именно для текстовой правки, где markdown достаточен.tool-specs.ts:730-737): «lossless» строго неверно для ACCEPTED-списка конвертера:colspan/rowspan/colwidth/backgroundColor(Name)ячеек таблиц,heading.indent/paragraph.indent,callout.icon,orderedList.type,link.internal/target/rel/class(ATTR_VALUE_FUZZ_ALLOWLIST+MARK_ATTR_ALLOWLIST,packages/prosemirror-markdown/test/generative/flat-roundtrip.property.test.ts:42-85). Для страниц с merged-ячейками round-trip «экспорт → импорт» молча теряет спаны — это молчаливая потеря данных, и она должна быть названа в описании, а не выводиться из тестов пакета.Что сделать
tool-specs.ts(единая строка для обеих поверхностей): точный, закрытый список потерь вместо «LOSSY…approximated» и «lossless» без оговорок.packages/mcp/src/index.ts:49): «Whole page → getPage (Markdown, lossy…)» → формулировка с точным списком.test/unit/server-instructions.test.mjs,README.md,README.ru.md,packages/mcp/README.md.Координация
Definition of done
server-instructions.test.mjsзелёный; README-шки не противоречат описаниям.