Ревью, раунд 1
По задаче почти всё закрыто. Несколько мест поправил сам коммитом 3aad670, чтобы не гонять…
Выполнено в PR #130 (merge 6f2cf1a), архив OpenSpec — #131 (f09d857). Отложенное — в follow-up issue.
PR #130 (merge 6f2cf1a), архив #131: закрыты T2.2 и M-6 — 5dc96dd (в начале publish прерванная прошлая публикация восстанавлива…
PR #130 (merge 6f2cf1a), архив #131: закрыта «выкатка» — fd13770, e20977e (base_jql и board_id — устаревшие ключи: удаляются из setting…
PR #130 (merge 6f2cf1a), архив #131: закрыт T3.2 — 75b1559 (пустой SDLC_HUB_HOME равен незаданному: данные в ~/.local/share/sdlc-hub). Остаются…
PR #130 (merge 6f2cf1a), архив #131: закрыт T8.1 — f1dae5a (POST /wiki/sync с project не строкой — 422 bad_request). Остальные маркеры открыты…
PR #130 (merge 6f2cf1a), архив #131: закрыт T2.1 — f1dae5a, e20977e (POST /agent/state с issues неверной формы — 422 bad_state, а не 500). Остальные…
PR #130 (merge 6f2cf1a), архив #131: закрыт F.1 — 4a6855d (цифровые id и версия агента — только ASCII 0-9 через core/http.is_digits, «²»…
PR #130 (merge 6f2cf1a), архив #131: закрыты M-3 — 75b1559, e20977e (нечитаемый файл или каталог на месте файла — «файла нет» с…