From 4faf7884adc5ab4fba0800083d4bf06c65522ee2 Mon Sep 17 00:00:00 2001 From: Andrey Epifancev Date: Sat, 24 Oct 2026 02:12:31 +0400 Subject: [PATCH] =?UTF-8?q?docs(openspec):=20wiki-module=20=E2=80=94=20?= =?UTF-8?q?=D1=80=D0=B5=D1=88=D0=B5=D0=BD=D0=B8=D1=8F=20Task=206=20(#91)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- openspec/changes/wiki-module/design.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/openspec/changes/wiki-module/design.md b/openspec/changes/wiki-module/design.md index b7bfd38..1c2c75d 100644 --- a/openspec/changes/wiki-module/design.md +++ b/openspec/changes/wiki-module/design.md @@ -539,3 +539,20 @@ jira безвреден. исполнителя (3, 5–9, 11–12 отчёта): `paths.root` на базе без файла бросает `RuntimeError`, `_drop_copy` его ловит; очистка FTS по rowid страницы; строгая валидация настроек и команд (bool не целое); `wiki_project.failed_at` пока не пишется. Цена ошибки: правка одной строки в соответствующем месте. + +Решения исполнителя Task 6 (2026-10-24; HTML Eva недоверенный): + +51. Вложения дедуплицируются по `url`: миниатюра и файл — одно вложение, если агент шлёт одинаковый `url`. Цена ошибки: + при разных `url` в eva-agent появятся две ссылки; проверяется по первой живой синхронизации. +52. Картинка внутри `` на вложение выдаёт только ссылку ``. Цена ошибки: при разных `ref` показана одна ссылка. +53. Небезопасные ссылки (`javascript:`, `data:`, `vbscript:` после удаления управляющих символов и пробелов) дают только + текст, у картинок пусто; ссылки и картинки автора со схемой `attachment:` — текст/пусто. Цена ошибки: видимый + текст без ссылки. +54. Ссылку вложения порождает только конвертер: приватный маркер U+E000/U+E001, авторские U+E000/U+E001 из HTML + удаляются; любое авторское `attachment:@` нейтрализуется вставкой U+200C между `:` и `@`; `fill_ids` заменяет + только `](attachment:@N)`, индекс вне списка — `ValueError` (вызывающий Task 7 превращает в `failed`). Цена + ошибки: невидимый символ в сыром `.md` при авторском «attachment:@»; лишние PUA-символы удаляются. +55. Текст `<` вне кода выводится `<` (сырых тегов нет); внутри ``/`
` не меняется. Имя вложения
+    экранирует `\ [ ] <` и `_`/`*` на границе слова. `@` не экранируется. Цена ошибки: сырой `.md` с `<`.
+56. Известные края (отложены): вложение в `` страницы/внешней ссылки, вложенный `` между `` и ``,
+    хвостовой `\` в тексте ссылки, пробелы/скобки во внешнем href, дубликаты `ref` (побеждает последний).