Andrey Epifancev ba0fd2a299 docs(openspec): R-7, R-8 — решения при исполнении Task 5 (#23)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:26:10 +04:00

21 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# agent-v9-hardening — решения агента
Спека и дизайн изменения — в `jira-hub/openspec/changes/agent-v9-hardening/` (issue aep/jira-hub#26, aep/jira-agent#23).
Агентская часть — решения 1–7 дизайна хаба (запускатель `run.py` v2), 8–14 (агент v9), 15–17 (фейки и тесты),
18 (выкатка).
Решения владельца 14.10.2026: один пакет — #22 (M-3…M-7, M-10), #18 (M-2, M-3, M-5, M-6), #4 (M-10, точность фейков);
устаревший `trial` → `rolled_back`; `OSError` при подмене в запускателе → `rejected` без повтора; `run.py` v2 владелец
ставит вручную после самообновления до v9.
## Decisions made without discussion
Рулинги R-1…R-5 записаны в `jira-hub/openspec/changes/agent-v9-hardening/design.md`
(раздел «Decisions made without discussion»); здесь — только решения, принятые при исполнении агентской части.
| Маркер | Дата | Решение | Обоснование | Цена ошибки |
|---|---|---|---|---|
| R-6 | 2026-10-15 | В test_hub_4xx_in_refresh_not_retryable токен «неверный» заменён на «wrong-token» (ASCII) | Кириллица в заголовке Authorization даёт UnicodeEncodeError (latin-1) ещё до запроса, тест не проверял бы 401; проверка (текст «хаб: HTTP 401», retryable=False) не изменилась | Нет: только данные теста; поведение при не-ASCII токене в agent.json — наблюдение O-2 |
| R-7 | 2026-10-15 | В run.py пустой/None sha256 в update.json (state=trial) считается устаревшим пробным периодом: условие `not sha or sha256_file(agent) != sha` в reconcile и in_trial (в плане — только `!= sha`) | Если agent.py не читается, sha256_file даёт None и совпал бы с отсутствующим sha — пробный период признан бы живым; пункты 1–2 Review Focus плана требуют обратного | Нет: усиление проверки; худший случай — лишний rolled_back при повреждённом update.json |
| R-8 | 2026-10-15 | В README фраза про код 73 добавлена в конец абзаца «Остановка…» (якорь плана «и перезапускается.» в тексте — «перезапускается).») | Якорь плана не совпал с текстом README; смысл и текст предложения сохранены | Нет: размещение предложения в документации |