Andrey Epifancev
d71c2f5180
Доработки по финальному ревью v15: kanban без колонок, имя закрытого спринта, строгий фильтр ( #49 )
...
M-1: при ошибке чтения настроек kanban-доски kanban_backlog = null и запрос бэклога не делается.
M-2: ensure_sprint_meta с rename_to, имя которого занято только закрытым спринтом, — failed «имя занято».
M-3: sprint_state принимает только целый id > 0 и непустое строковое name, нестроковые
даты и goal дают null (как check_boards хаба).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:46:46 +04:00
Andrey Epifancev
9d3958e337
Сравнивать «готово» при закрытии спринта по id статусов, а не по именам ( #49 )
...
C-1 финального ревью: ensure_sprint_state closed определял готовые задачи по именам
через молча неполный кэш /status и мог необратимо перенести выполненные задачи.
Теперь id статусов последней колонки берутся из configuration, у задач — status.id;
пустой набор id — failed без записи, задача без status.id считается незавершённой.
В board_columns неизвестный id один раз за команду перечитывает /status, затем пишет
в лог; колонка без строкового имени пропускается с логом. Решение R-83.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:42:58 +04:00
Andrey Epifancev
3693578648
Агент v15: версия и документация спринтов, ранга и оценок ( #49 )
...
Версия 15: команды ensure_sprint_meta, ensure_sprint_state, ensure_rank,
story_points в ensure_fields, расширение refresh (rank, story_points,
sprint_ids, boards). Документация: README, ARCHITECTURE, CLAUDE.md;
решения R-64…R-75 перенесены в design.md; исправлен способ получения
смещения дат спринта (R-68). Версии 14 в тестах test_folder и test_history
подняты до 15.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:26:55 +04:00
Andrey Epifancev
5dba989015
Агент: команда ensure_rank — выше или ниже другой задачи ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:18:19 +04:00
Andrey Epifancev
33d8a1e7e3
Агент: команда ensure_sprint_state — запуск и завершение спринта с переносом ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:10:58 +04:00
Andrey Epifancev
54f5781b98
Агент: команда ensure_sprint_meta — создание и правка спринта ( #49 )
...
Команда ищет спринт доски по имени, создаёт его или записывает только
отличающиеся имя, даты (по дню), цель. Повтор после переименования
находит спринт по новому имени; оба имени заняты — ошибка без записи.
Даты проверяются первыми, доска берётся только из команды.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 19:04:39 +04:00
Andrey Epifancev
255784c858
Агент: оценка story_points в ensure_fields ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 18:57:12 +04:00
Andrey Epifancev
0ea1438b1e
Агент: колонки, kanban-бэклог и все спринты досок в первой пачке refresh ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 18:47:22 +04:00
Andrey Epifancev
9de78842b1
Агент: ранг, оценка и все спринты задачи в состоянии refresh ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 18:37:03 +04:00
Andrey Epifancev
21374bef08
Агент: поиск полей ранга, спринта и оценки с кэшем и перекрытием field_ids ( #49 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-24 18:30:55 +04:00
Andrey Epifancev
3a5bd9a109
Агент: оборванное тело — обрыв связи, перенаправления только на свой адрес, README v14 ( #43 )
...
По финальному ревью: M-1, M-4, M-6.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 14:36:29 +04:00
Andrey Epifancev
4819950738
Агент v14: команда fetch_attachment ( #43 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 14:19:50 +04:00
Andrey Epifancev
711f62e1df
Агент: скачивание байтов из Jira без чужих перенаправлений, файл хабу ( #43 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 14:15:46 +04:00
Andrey Epifancev
0d72369875
Агент v14: список вложений в состоянии refresh ( #43 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 14:10:44 +04:00
Andrey Epifancev
faed8b9c7a
Журнал: стартовая часть первой, задача в обеих выборках не теряет историю ( #39 , I-1)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 10:47:11 +04:00
Andrey Epifancev
05e3f2c114
Тест версии агента: 13 ( #39 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 10:34:43 +04:00
Andrey Epifancev
71e182a162
Агент v13: журнал изменений в refresh ( #39 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 10:31:47 +04:00
Andrey Epifancev
de2d5b5252
Разбор журнала изменений Jira и фейк журнала ( #39 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 10:27:00 +04:00
Andrey Epifancev
ced48cf9db
fix(agent): ошибка спринтов refresh называет доску, доска-канбан пропускается (I-1, M-2..M-5, #35 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 20:31:59 +04:00
Andrey Epifancev
719d4bceef
chore(agent): версия 12, README и решения агента для досок проектов ( #35 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 20:21:25 +04:00
Andrey Epifancev
9dd3dd7d9d
feat(agent): refresh по доскам проектов — тип доски, спринты со всех scrum-досок, результат boards ( #35 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 20:16:52 +04:00
Andrey Epifancev
fc87f54cf9
feat(agent): ensure_sprint по доске из команды, кэш спринтов по доскам ( #35 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 20:12:30 +04:00
Andrey Epifancev
93e5595c40
chore(agent): версия 11, README и решения агента для bug-and-attachments ( #31 )
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:55:08 +04:00
Andrey Epifancev
d75c1a5567
feat(agent): команда ensure_attachment — вложение по имени и размеру, файл у хаба с проверкой sha256 ( #31 )
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:52:03 +04:00
Andrey Epifancev
2bf87a6fa2
feat(agent): multipart-загрузка вложения в Jira и файл вложения у хаба ( #31 )
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:48:38 +04:00
Andrey Epifancev
90dc429434
feat(agent): тип задачи из issue_types с ошибкой конфигурации, тип bug ( #31 )
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:44:30 +04:00
Andrey Epifancev
cd8213b71c
fix(agent): refresh не падает на комментариях без id и на 403/404 при дочитывании (M-1, M-2 #30 , #31 )
...
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-16 01:41:24 +04:00
Andrey Epifancev
28b21e0d54
test(agent): вернуть проверки test_refresh_empty_keys, потерянные при вставке тестов комментариев (I-1, #27 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 13:14:50 +04:00
Andrey Epifancev
06375b9d90
chore(agent): версия 10, README и решения агента для комментариев ( #27 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 13:04:19 +04:00
Andrey Epifancev
f5ea74bbcd
feat(agent): комментарии задач в состоянии refresh ( #27 )
...
Поле comment в том же search; при неполном списке — дочитывание /issue/{key}/comment по 100.
Спека: jira-hub/openspec/changes/issue-card-modal/ (agent, «Чтение состояния»).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 13:01:21 +04:00
Andrey Epifancev
b57f815846
fix(agent): OSError при подтверждении версии — только лог, повтор на следующем claim (M-3)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:47:57 +04:00
Andrey Epifancev
af3e9c47c4
fix(agent): ограничить длину значений в подсказке о неполной публикации (M-4)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:36:03 +04:00
Andrey Epifancev
6b3109863d
fix(run): подтверждённая версия не откатывается после записей агента в update.json (I-1)
...
wait_child запоминает подтверждение (любое состояние update.json, кроме trial этой версии, пока агент жив),
а итоговое решение учитывает и случай, когда ok и следующая запись уложились между опросами.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:36:03 +04:00
Andrey Epifancev
69f9ffe690
feat(agent): run.py v2 — сверка update.json с файлом, ok в последний момент, код 73, OSError при подмене (M-3…M-7, M-10 #22 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:25:56 +04:00
Andrey Epifancev
fa936ba716
test(agent): фейки — project и created в поиске дубля, долгий claim хаба (M-10 #4 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:19:35 +04:00
Andrey Epifancev
b90c639eaa
fix(agent): код 73 при занятом журнале, одна строка темпа, источник ошибки хаба в refresh (M-7 #22 ; M-2, M-3, M-5, M-6 #18 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:14:58 +04:00
Andrey Epifancev
c51651717c
fix(agent): OSError при подготовке версии — временный сбой; формат agent_release (M-6, M-10 #22 )
...
Диск полон или нет прав при записи agent.py.new, selftest или update.json
больше не роняет агент трейсбеком: это временный сбой, повтор через 5 минут.
Ошибка записи update.json при отказе версии только логируется.
Неполная публикация (version не int, sha256 не 64 hex в нижнем регистре)
отбрасывается с подсказкой не чаще раза в час; таймеры подсказок разделены по видам.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:09:03 +04:00
Andrey Epifancev
47a7424eca
feat(agent): версия 9; тесты без жёстких номеров версий ( #23 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 00:03:41 +04:00
Andrey Epifancev
20b858c984
fix(agent): run.py — выход 0 без Ctrl-C как падение, сигнал перед запуском, pause без отрицательного sleep (I-1, M-1, M-2, #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:40:59 +04:00
Andrey Epifancev
866f9d7b4d
test(agent): сквозной тест самообновления; README, ARCHITECTURE, CLAUDE.md — run.py и публикация ( #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:26:53 +04:00
Andrey Epifancev
7512acb083
feat(agent): запускатель run.py — подмена версии, пробный период, откат, перезапуск ( #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:24:30 +04:00
Andrey Epifancev
3aa8823929
feat(agent): самообновление в паузе — скачивание, sha256, selftest, выход 75 ( #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:22:32 +04:00
Andrey Epifancev
140f921ce5
test(agent): версия 5 в test_folder ( #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:19:29 +04:00
Andrey Epifancev
82428ea869
feat(agent): update.json, selftest, update_state и launcher_version в claim, версия 5 ( #19 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:17:52 +04:00
Andrey Epifancev
cd2dafe487
feat(agent): prune под блокировкой журнала, версия 4, README ( #15 )
...
T2.3 (agent#4).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 12:48:23 +04:00
Andrey Epifancev
4f1b85c9c0
fix(agent): ответ папки с неверными типами — ConnectionError; лог без повтора «хаб» ( #15 )
...
M-2, O-3 (agent#8).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 12:44:15 +04:00
Andrey Epifancev
3736fb3948
fix(agent): полная пауза при времени журнала в будущем, claim без оценки из журнала ( #15 )
...
M-6, M-7 (agent#12).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 12:40:46 +04:00
Andrey Epifancev
0532b2476c
fix(agent): описание и комментарий сравниваются без различия CRLF/LF ( #15 )
...
T3.9 (agent#4).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 12:37:20 +04:00
Andrey Epifancev
552bead64b
fix(agent): ensure_sprint на задаче без спринта — ответ Agile без fields ( #13 )
...
Jira банка на GET /rest/agile/1.0/issue/{key}?fields=sprint у задачи без спринта отвечает без ключа fields;
агент падал с KeyError. Фейк Jira теперь отвечает так же.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 23:45:47 +04:00
Andrey Epifancev
058a78b0d6
fix(agent): один процесс на журнал — блокировка journal.jsonl.lock; README: остановить старый агент перед запуском (I-1, #9 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 23:11:02 +04:00