Агент v14: список вложений в refresh, команда fetch_attachment (#43) #44
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/43-attachment-fetch"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #43. Хаб и спека — aep/jira-hub#83 (change
attachment-fetchв jira-hub).Что сделано (агент v14)
refresh: полеattachmentвsearch, у задачиattachments(id,filename,size,mime_type,author,created) без содержимого.fetch_attachment: читает вложение у задачи, качает содержимое с<base_url>/secure/attachment/<id>/<имя>(предел 10 МБ, при неизвестном размере чтение обрывается), отдаёт хабуPOST /agent/files; в Jira не пишет; содержимое не попадает в журнал и лог.Authorizationтуда не уходит.План —
docs/superpowers/plans/2026-10-22-attachment-fetch-agent.md; решения агента —openspec/changes/agent-v14-attachment-fetch/design.md.Проверка
/usr/bin/python3 -W error::ResourceWarning -m unittest discover -s tests -t .— 329 тестов OK (Python 3.9.6). Финальное ревью (opus): Critical/Important нет; M-1, M-4, M-6 подняты по эффекту и исправлены (3a5bd9a).Rulings I made
filenameотбрасывается с логом, как безid(хаб требует непустое имя). Цена: такое вложение не видно в мосту.sizeне целое / отрицательное /bool→null. Цена: нет.HubClient.upload_fileвместоput_fileиз плана. Цена: нет.upload_fileчерез папку — вtests/test_folder.py. Цена: нет.ConnectionError(повтор). Цена: нет.Deferred (в follow-up при закрытии)
M-2 (
Locationс нечисловым портом —ValueErrorнаружу), M-3 (перенаправление на свой хост считается одним вызовом), M-5 (308 и цикл перенаправлений — непонятная ошибка), M-7 (нет сквозного теста журнала дляfetch_attachment), M-8 (отрицательныйsizeвdo_fetch_attachment, текст «не целиком» приlen > size, неиспользуемая ветка_fmt_size(None)).Выкатка
После merge —
uv run --project ../jira-hub jira-hub agent publish src/agent.py;min_agent_versionне поднимать (хаб сам отвечает 409 агенту ниже v14).🤖 Generated with Claude Code