Skip to content

feat(idd-issue): bundle flags — --parent / --blocked-by / --bundle-mode for ordered/unordered issue bundles #21

@kiki830621

Description

@kiki830621

Problem

idd-issue v2.51.0 已支援文件來源批次建 issue + 自動 milestone(Step 4.5)、跨 repo groups 機制(primary + tracking + cross-link)、sister sweep(Step 4.7),但同 repo 內的 parent-child + ordering 沒有 first-class 支援。

當 N 個 issue 之間存在 dependency(schema 在 API 之前、phase 1 在 phase 2 之前),目前要手動兩步:先建 children → 再建 parent + 編 task list + 逐個加 Blocked-by 標註。失敗模式三:

  1. 漏連結 — children 建好後忘了寫進 parent task list
  2. 漏 dependency — Blocked-by 標註要逐個手動加
  3. 使用者放棄 epic — 結果 N 個 issue 變孤兒

Type

feature(enhancement)

Solution

新增 3 個 flag 到 idd-issue(v2.52.0):

  • --parent <N>:child 建完後 PATCH parent #N body 加進 task list(idempotent via #N reference scan)
  • --blocked-by <M>[,<M2>...]:三層 fallback chain(GraphQL native dep + body blockquote + parent annotation)
  • --bundle-mode <ordered|unordered>:單次 invocation 建 1 epic + N children,ordered 加 Blocked-by 鏈

## Ordered Bundle Pattern 段落到 SKILL.md;加 canonical reference references/bundle-flags.md

正交於既有 milestone / group / sister sweep 機制,backward compatible。

Spectra Change

完整設計、specs、tasks 在 openspec/changes/add-bundle-flags-to-idd-issue/(本 issue 的 anchor)。

Acceptance

  • 三個 flag 行為符合 spec(openspec/changes/add-bundle-flags-to-idd-issue/specs/idd-issue-bundle/spec.md)
  • Idempotency: --parent 重複呼叫不重複加 entry
  • Graceful degradation: GraphQL 失敗 → warning + body blockquote 仍存在
  • Cross-repo refuse: --parent <N> 跨 repo → abort + 指引 groups
  • Mutual exclusion: --bundle-mode + group mode 同時 set → refuse
  • Backward compat: 不帶 flag 的 invocation 行為完全不變

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions