Skip to content

[design] /idd-edit batch mode + R5 refuse interaction — semantic decision needed (tangential from #154 plan) #158

Description

@kiki830621

Problem

Source: surfaced during /idd-plan #154 tangential sweep (Step 2.5)

/idd-edit 支援 batch mode (comment:NNN comment:MMM ... --replace --scope ...)。 #154 將加入 R5 runtime gate (refuse modifications to non-OWNER comments unless --override-user-content)。 #154 Plan fixture 11 只測 single-comment R5 refuse case,未涵蓋 batch mode + R5 partial-refuse 交互

Scenarios needing design decision

# Scenario A: All targets OWNER → all proceed (clear)
/idd-edit comment:111 comment:222 --replace --scope whole-comment --body "..."

# Scenario B: All targets non-OWNER, no override → all refuse (clear)
/idd-edit comment:111 comment:222 --replace --scope whole-comment --body "..."

# Scenario C: MIXED — comment:111=OWNER, comment:222=non-OWNER → ?
# - (i) Per-comment refuse: 111 proceeds, 222 refused, batch reports partial outcome
# - (ii) First-refuse-abort-batch: 222 refuses → 111 also not touched (transactional)
# - (iii) Pre-flight scan: scan all N comments first, refuse entire batch if ANY non-OWNER without override

Open questions

  • 哪個語意正確?(i) per-comment 對 idempotent skill 合理,(ii) transactional 對「all-or-nothing」期望符合,(iii) pre-flight 失敗最快但需 N gh API calls 前置
  • --override-user-content --reason="..." 在 batch mode 是否套用所有 targets?還是 per-target override(複雜)?
  • batch mode 既有 "per-comment confirm" UX(不允許 --yes-to-all)— R5 refuse 是否走「per-comment refuse + 繼續 batch」flow,類比現有 confirm flow?

Impact

#154 fixture 13 已涵蓋 /idd-comment errata flow auto-call to /idd-edit --prepend-note(single-target context)。 但 batch mode + R5 是另一 dimension,#154 implementation 階段一定會撞到。

Type

enhancement / edge case — semantic decision needed for batch R5 interaction

Trigger conditions

Type

enhancement / edge case design

Priority

P2 — higher than typical parking-lot (#154 implementation 必撞),但 can be deferred to #154 follow-up if Block B3 ships with single-target enforcement only + batch raises non-blocking warning

Open recommendation

Plan B3 implement single-target R5 enforcement first。 Batch + R5 interaction add fixture(tests/idd-edit/test_parser.sh fixture 14)post-#154 ship,或在 #154 EnterPlanMode revision 階段加進 plan。 本 issue 紀錄此 design question 不流失。

Refs #154 #150


Current Status

Phase: closed
Last updated: 2026-07-13 by /idd-close

Key Decisions

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