From 06375b9d907bea404c2ed3b7e894bb4514d2baad Mon Sep 17 00:00:00 2001 From: Andrey Epifancev Date: Thu, 15 Oct 2026 13:04:19 +0400 Subject: [PATCH] =?UTF-8?q?chore(agent):=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8?= =?UTF-8?q?=D1=8F=2010,=20README=20=D0=B8=20=D1=80=D0=B5=D1=88=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B0=D0=B3=D0=B5=D0=BD=D1=82=D0=B0=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B5=D0=BD=D1=82=D0=B0?= =?UTF-8?q?=D1=80=D0=B8=D0=B5=D0=B2=20(#27)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- CLAUDE.md | 2 +- README.md | 3 +++ .../changes/agent-v10-comments/.openspec.yaml | 2 ++ openspec/changes/agent-v10-comments/design.md | 16 ++++++++++++++++ src/agent.py | 2 +- tests/test_folder.py | 2 +- 6 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 openspec/changes/agent-v10-comments/.openspec.yaml create mode 100644 openspec/changes/agent-v10-comments/design.md diff --git a/CLAUDE.md b/CLAUDE.md index a1e449d..eebf1ec 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -48,7 +48,7 @@ ## Первая подсистема Исполнитель команд и цикл агента (спека `agent/spec.md`, `commands/spec.md`) — реализованы целиком: все типы команд, журнал, восстановление после перезапуска, CLI `run|check|selftest|prune`, самообновление через `run.py`. -Последний change — `../jira-hub/openspec/changes/archive/2026-10-15-agent-v9-hardening/` (решения агента — `openspec/changes/archive/2026-10-15-agent-v9-hardening/design.md`), план — `docs/superpowers/plans/2026-10-14-agent-v9-hardening-agent.md`. +Последний change — `../jira-hub/openspec/changes/issue-card-modal/` (агент v10: комментарии в состоянии; решения агента — `openspec/changes/agent-v10-comments/design.md`), план — `docs/superpowers/plans/2026-10-15-agent-v10-comments.md`. План и спека живут в `jira-hub`: `openspec/changes/bridge-core/` и `docs/superpowers/plans/2026-10-11-bridge-core-hub.md`; план агента лежит здесь: `docs/superpowers/plans/2026-10-11-bridge-core-agent.md`. ## Выкатка новой версии diff --git a/README.md b/README.md index 489d724..f2502ab 100644 --- a/README.md +++ b/README.md @@ -235,6 +235,9 @@ python3 agent.py prune 4. **Особенности `refresh`.** В `result.issues` попадают только запрошенные задачи, соседи по связям — в `result.neighbors`. Если `jql` вернул пустую выдачу, состояние в хаб не отправляется (`pages = 0`). Отсутствующие ключи при `refresh` по `keys` попадают в `result.missing` (не больше 50). + С v10 у каждой задачи состояния есть `comments` — все комментарии задачи (автор — отображаемое имя, иначе логин; время + и текст — как в Jira). Они приходят тем же `search`; если Jira отдала не все, агент дочитывает их через + `/issue/{key}/comment`. 5. **Сравнение текстов без различия переводов строк.** Описание и тело комментария сравниваются после замены `\r\n` на `\n` (Jira хранит правленное в UI с `\r\n`); отправляется текст команды как есть. Прочие различия (пробелы, завершающий перевод строки) — изменение. diff --git a/openspec/changes/agent-v10-comments/.openspec.yaml b/openspec/changes/agent-v10-comments/.openspec.yaml new file mode 100644 index 0000000..a216797 --- /dev/null +++ b/openspec/changes/agent-v10-comments/.openspec.yaml @@ -0,0 +1,2 @@ +schema: spec-driven +created: 2026-10-15 diff --git a/openspec/changes/agent-v10-comments/design.md b/openspec/changes/agent-v10-comments/design.md new file mode 100644 index 0000000..352ca8e --- /dev/null +++ b/openspec/changes/agent-v10-comments/design.md @@ -0,0 +1,16 @@ +# agent-v10-comments — решения агента + +Спека и дизайн изменения — в `jira-hub/openspec/changes/issue-card-modal/` (issue aep/jira-hub#37, aep/jira-agent#27). +Агентская часть — решения 1–4 дизайна хаба (поле `comment` в `search`, дочитывание, форма комментария, версия и выкатка) +и требование `agent` «Чтение состояния». + +Решения владельца 15.10.2026 (brainstorming jira-hub#37): комментарии задачи нужны в карточке веб-приложения; два change +по репозиториям, сначала агент; автор — отображаемое имя, как в Jira над комментарием. + +## Decisions made without discussion + +Рулинги R-1…R-5 записаны в `jira-hub/openspec/changes/issue-card-modal/design.md` +(раздел «Decisions made without discussion»); здесь — только решения, принятые при исполнении агентской части. + +| Маркер | Дата | Решение | Обоснование | Цена ошибки | +|---|---|---|---|---| diff --git a/src/agent.py b/src/agent.py index 1d7bb50..0b36f3d 100644 --- a/src/agent.py +++ b/src/agent.py @@ -33,7 +33,7 @@ import uuid from datetime import datetime, timezone from typing import Any, Dict, List, Optional -AGENT_VERSION = 9 +AGENT_VERSION = 10 EXIT_LOCKED = 73 # «журнал занят другим процессом»: для run.py это не сбой версии (design 8) EXIT_UPDATE = 75 # «обновление готово»: run.py подменит agent.py на agent.py.new HERE = os.path.dirname(os.path.abspath(__file__)) diff --git a/tests/test_folder.py b/tests/test_folder.py index 59f928f..2018c31 100644 --- a/tests/test_folder.py +++ b/tests/test_folder.py @@ -158,7 +158,7 @@ class FolderIntegrationTest(unittest.TestCase): return jira_cfg(self.fake, hub_url="folder:" + self.root, hub_token=self.hub.token) def test_version_is_9(self): - self.assertEqual(agent.AGENT_VERSION, 9) + self.assertEqual(agent.AGENT_VERSION, 10) def test_runner_through_folder(self): self.fake.add("AURORA-1", duedate="2026-10-20")