feat(issue-skill): batch issue creation by one subagent #27

Closed
opened 2026-08-08 13:43:57 +03:00 by slaid098 · 0 comments
Owner

Контекст

Зачем: схема работы «план → декомпозиция → батч ишусов одним агентом → /run-pipeline на каждом» уже живёт в spec/SKILL.md (Template I, Phase 8: один subagent создаёт N issues последовательно через create-issue, возвращает список [{number, url, title}]) и в audit/SKILL.md (для каждой проблемы последовательно delegate task(general) с Template ISSUE_CREATE, НЕ параллельно — Linear Execution). Но в .opencode/skills/issue/SKILL.md батч-механизма нет — скилл описывает только создание одного issue по команде юзера.

Контекст: в AGENTS.md (секция ## Linear Execution, строка 55) есть единственное упоминание: «Issues are created by ONE agent at a time (batch creation), not parallel agents» — без описания процедуры батча. Дополнительно в issue/SKILL.md накопились 2 устаревшие ссылки:

  • строка 77: ссылка на «run-pipeline skill (Phase 0: "через subagent с issue skill")» — Phase 0 удалена из run-pipeline в PR#42 (docs/handoff/pr-42-orchestration-switch.md);
  • строка 180: ссылка на «AGENTS.md (Development Workflow)» — секция Development Workflow удалена из AGENTS.md в PR#91 (docs/handoff/pr-91-agents-md-consolidation.md, секции слиты в ## Pipeline).

Задача

  1. В .opencode/skills/issue/SKILL.md после раздела «Использование subagent для создания issue» (после строки 77) добавить раздел «Батчевое создание» со следующей процедурой:
    • при плане на N независимых задач (декомпозиция уже сделана) один subagent (general type) создаёт N ишусов последовательно — каждый через create-issue({ title, body, labels }) tool, НЕ параллельно (Linear Execution из AGENTS.md: «Issues are created by ONE agent at a time»);
    • subagent возвращает список [{number, url, title}] для всех созданных ишусов;
    • после батча — /run-pipeline на каждом ишусе по очереди (линейно, один пайплайн за раз, нельзя запустить второй до завершения первого — см. AGENTS.md ## Linear Execution);
    • если create-issue валидация упала на одном ишусе → subagent сообщает ошибку, continue к следующему (паттерн из audit/SKILL.md:50-53).
  2. Починить 2 устаревшие ссылки в .opencode/skills/issue/SKILL.md:
    • строка 77: убрать упоминание удалённой «Phase 0», заменить на актуальную ссылку — run-pipeline skill Template A (implement_issue);
    • строка 180: убрать «AGENTS.md (Development Workflow)», заменить на актуальную — AGENTS.md ## Pipeline.
  3. В AGENTS.md (секция ## Pipeline, после строки 29 с pipeline-status/merge-pr) добавить 2-3 строки, фиксирующие порядок: «план → декомпозиция → батч ишусов одним агентом (последовательно, через create-issue tool) → /run-pipeline на каждом». Декомпозицию отдельно не описывать (модель справляется сама — не фиксировать критерии дробления в AGENTS.md).

Контракты

  • Батч-процедура в issue/SKILL.md: один subagent, последовательное создание, create-issue tool, возврат списка, /run-pipeline на каждом
  • Все ишусы батча самодостаточны (8 headings, валидация create-issue)
  • Тексты разделов скилла — на русском (язык скилла)

Инварианты

  • Ишусы создаются ТОЛЬКО через create-issue tool (raw curl к Forgejo API заблокирован deny)
  • Создание ишусов — строго последовательно (НЕ параллельно)
  • /run-pipeline на каждом ишусе — строго последовательно (один пайплайн за раз)
  • Нет изменений в поведении существующих тулов/скриптов (это чисто доку-правка скиллов + AGENTS.md)

Граничные случаи

  • create-issue упал на одном ишусе (валидация/API) → subagent сообщает ошибку, продолжает со следующим, в итоговом списке помечает failed ишус
  • Метки (labels) в батче — выбираются по типу задачи каждого ишуса (правило из скилла: enhancement/bug/refactor/...)

Влияние на связанные компоненты

  • .opencode/skills/spec/SKILL.md Template I (Phase 8) и .opencode/skills/audit/SKILL.md — уже содержат батч-паттерн, их поведение не меняется (только синхронизация формулировок при необходимости)
  • AGENTS.md ## Pipeline — новая строка с порядком
  • .opencode/skills/run-pipeline/SKILL.md — не меняется (только ссылка на Template A в issue/SKILL.md)

Вне scope

  • ❌ Изменение поведения spec/audit скиллов (их батч-механика уже работает)
  • ❌ Описание критериев декомпозиции в AGENTS.md
  • ❌ Изменение create-issue tool
  • ❌ Правка других устаревших ссылок вне указанных строк

Критерии приемки

  • В issue/SKILL.md есть раздел «Батчевое создание»: один subagent, последовательно, create-issue tool, возврат списка [{number, url, title}], /run-pipeline на каждом
  • Строка 77 issue/SKILL.md больше не ссылается на Phase 0 (актуальная ссылка — Template A)
  • Строка 180 issue/SKILL.md больше не ссылается на Development Workflow (актуальная — ## Pipeline)
  • В AGENTS.md ## Pipeline зафиксирован порядок «план → декомпозиция → батч ишусов одним агентом (последовательно) → /run-pipeline на каждом»
  • Нет изменений в поведении существующих тулов/скриптов (diff — только .md файлы)
## Контекст Зачем: схема работы «план → декомпозиция → батч ишусов одним агентом → /run-pipeline на каждом» уже живёт в spec/SKILL.md (Template I, Phase 8: один subagent создаёт N issues последовательно через create-issue, возвращает список [{number, url, title}]) и в audit/SKILL.md (для каждой проблемы последовательно delegate task(general) с Template ISSUE_CREATE, НЕ параллельно — Linear Execution). Но в `.opencode/skills/issue/SKILL.md` батч-механизма нет — скилл описывает только создание одного issue по команде юзера. Контекст: в `AGENTS.md` (секция `## Linear Execution`, строка 55) есть единственное упоминание: «Issues are created by ONE agent at a time (batch creation), not parallel agents» — без описания процедуры батча. Дополнительно в `issue/SKILL.md` накопились 2 устаревшие ссылки: - строка 77: ссылка на «run-pipeline skill (Phase 0: "через subagent с issue skill")» — Phase 0 удалена из run-pipeline в PR#42 (docs/handoff/pr-42-orchestration-switch.md); - строка 180: ссылка на «AGENTS.md (Development Workflow)» — секция Development Workflow удалена из AGENTS.md в PR#91 (docs/handoff/pr-91-agents-md-consolidation.md, секции слиты в `## Pipeline`). ## Задача 1. В `.opencode/skills/issue/SKILL.md` после раздела «Использование subagent для создания issue» (после строки 77) добавить раздел «Батчевое создание» со следующей процедурой: - при плане на N независимых задач (декомпозиция уже сделана) один subagent (general type) создаёт N ишусов последовательно — каждый через `create-issue({ title, body, labels })` tool, НЕ параллельно (Linear Execution из AGENTS.md: «Issues are created by ONE agent at a time»); - subagent возвращает список `[{number, url, title}]` для всех созданных ишусов; - после батча — `/run-pipeline` на каждом ишусе по очереди (линейно, один пайплайн за раз, нельзя запустить второй до завершения первого — см. AGENTS.md `## Linear Execution`); - если `create-issue` валидация упала на одном ишусе → subagent сообщает ошибку, continue к следующему (паттерн из audit/SKILL.md:50-53). 2. Починить 2 устаревшие ссылки в `.opencode/skills/issue/SKILL.md`: - строка 77: убрать упоминание удалённой «Phase 0», заменить на актуальную ссылку — run-pipeline skill Template A (implement_issue); - строка 180: убрать «AGENTS.md (Development Workflow)», заменить на актуальную — `AGENTS.md` `## Pipeline`. 3. В `AGENTS.md` (секция `## Pipeline`, после строки 29 с pipeline-status/merge-pr) добавить 2-3 строки, фиксирующие порядок: «план → декомпозиция → батч ишусов одним агентом (последовательно, через create-issue tool) → /run-pipeline на каждом». Декомпозицию отдельно не описывать (модель справляется сама — не фиксировать критерии дробления в AGENTS.md). ## Контракты - Батч-процедура в issue/SKILL.md: один subagent, последовательное создание, create-issue tool, возврат списка, /run-pipeline на каждом - Все ишусы батча самодостаточны (8 headings, валидация create-issue) - Тексты разделов скилла — на русском (язык скилла) ## Инварианты - Ишусы создаются ТОЛЬКО через `create-issue` tool (raw `curl` к Forgejo API заблокирован deny) - Создание ишусов — строго последовательно (НЕ параллельно) - /run-pipeline на каждом ишусе — строго последовательно (один пайплайн за раз) - Нет изменений в поведении существующих тулов/скриптов (это чисто доку-правка скиллов + AGENTS.md) ## Граничные случаи - `create-issue` упал на одном ишусе (валидация/API) → subagent сообщает ошибку, продолжает со следующим, в итоговом списке помечает failed ишус - Метки (labels) в батче — выбираются по типу задачи каждого ишуса (правило из скилла: enhancement/bug/refactor/...) ## Влияние на связанные компоненты - `.opencode/skills/spec/SKILL.md` Template I (Phase 8) и `.opencode/skills/audit/SKILL.md` — уже содержат батч-паттерн, их поведение не меняется (только синхронизация формулировок при необходимости) - `AGENTS.md` `## Pipeline` — новая строка с порядком - `.opencode/skills/run-pipeline/SKILL.md` — не меняется (только ссылка на Template A в issue/SKILL.md) ## Вне scope - ❌ Изменение поведения spec/audit скиллов (их батч-механика уже работает) - ❌ Описание критериев декомпозиции в AGENTS.md - ❌ Изменение create-issue tool - ❌ Правка других устаревших ссылок вне указанных строк ## Критерии приемки - [ ] В issue/SKILL.md есть раздел «Батчевое создание»: один subagent, последовательно, create-issue tool, возврат списка [{number, url, title}], /run-pipeline на каждом - [ ] Строка 77 issue/SKILL.md больше не ссылается на Phase 0 (актуальная ссылка — Template A) - [ ] Строка 180 issue/SKILL.md больше не ссылается на Development Workflow (актуальная — ## Pipeline) - [ ] В AGENTS.md ## Pipeline зафиксирован порядок «план → декомпозиция → батч ишусов одним агентом (последовательно) → /run-pipeline на каждом» - [ ] Нет изменений в поведении существующих тулов/скриптов (diff — только .md файлы)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
slaid098/opencode-config#27
No description provided.