docs: рулинги R-11…R-13

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014Typ5sXWNMFirr2va2uL8o
This commit is contained in:
Andrey Epifancev 2026-10-11 23:06:24 +04:00
parent e221a18b46
commit 3c37e851e9

View File

@ -74,3 +74,6 @@ Non-goals — см. proposal.md.
| 2026-10-11 | R-8: T6.16 считается закрытой по формам тела; недостижимая ветка `except ValueError` в `h_settings_put` и широкое имя теста — minor, правятся в финальной волне | protected-ключи отсекаются предпроверкой, `settings.set_` значения не валидирует | введённое в заблуждение имя теста; ввод невалидных значений настроек (T6.22) остаётся возможным |
| 2026-10-11 | R-9: повторный импорт CSV передаёт в `set_note` только непустые значения; пустая ячейка не затирает существующее поле заметки | иначе повторный запуск `jira-hub import` молча стирает правки владельца, внесённые в хабе | поле заметки нельзя очистить повторным импортом (очистка — через `notes_set`) |
| 2026-10-11 | R-10: зависимость `mcp>=1.2,<2` (закреплена исполнителем Task 8) | `uv` ставит mcp 2.3.0, где `mcp.server.fastmcp` удалён (FastMCP стал MCPServer); код плана написан под FastMCP | позже нужна миграция на MCPServer; пока ограничение исключает неожиданный ломающий апгрейд |
| 2026-10-11 | R-11 (заменяет R-3): `ensure_issue` не подтверждается по состоянию, пока автор («мы») неизвестен — `check_confirmed` возвращает `(False, None)` при `reporter is None`; настройка `reporter` не вводится | логин Jira в настройках хаба запрещён спекой data-model; без фильтра по автору подтверждение находило чужую задачу с той же темой (запись в чужую задачу Jira) | потерянный отчёт по `ensure_issue` не лечится сверкой, только восстановлением агента по журналу; follow-up: агент передаёт `jira_user` в `claim` |
| 2026-10-11 | R-12: инструменты ожидания MCP (`batch_wait`, `refresh`) — `async`, ожидание через `asyncio.sleep`, HTTP через `asyncio.to_thread`; `refresh` по умолчанию `wait=False` | синхронный `time.sleep` до 60 минут блокирует event loop FastMCP (отмена, ping) | сменилось умолчание `refresh` в MCP |
| 2026-10-11 | R-13: в выдаче команда, ждущая stale `ensure_issue` (claimed старше 10 минут), пропускается вместе с остатком своего пакета, выдача идёт к следующему пакету | иначе один потерянный отчёт останавливает всю очередь, выход только отменой человеком | пакет с зависшим определителем висит до подтверждения или отмены человеком |