Skip to content

routing 判準:更傾向 Spectra/SDD — 規格記錄的價值應計入分流權重 #252

Description

@kiki830621

Problem

Original text:
「我在想可能在idd裡面,要更傾向走SDD一點,因為那才會有明確的規格記錄」
— Source: 使用者(Che),2026-07-10,AI4o batch triage 期間

詮釋:現行 idd-diagnose Step 3.5 的三層 routing(Simple / Plan / Spectra)把 Spectra 設計成窄門——Layer 2 必要條件是「對外 published API/protocol contract 給 future callers」,內部 refactor / 效能優化 / 行為修正即使動到多檔共享模組也只到 Plan。使用者的立場是:這道門應該再開一點——SDD 路徑的價值不只在「API contract 要 freeze」,更在 spectra 流程會產出 spec/proposal/design 的持久規格記錄,而 Plan tier 的 Implementation Plan comment 是一次性 artifact(散在 issue timeline,不進 openspec/specs/ 的 living documentation)。

實戰脈絡(觸發本 issue 的事件):同日某 repo 的 batch diagnose 中,10 筆 issue 有 8 筆被判 SDD-warranted(多為內部效能優化與行為修正,無對外 API)。依現行 SKILL.md 判準這些是 over-trigger(應為 Plan);但使用者裁決「尊重原判定走 SDD 鏈」,並隨後表達本 issue 的立場——那次「over-trigger」在使用者價值觀下其實是 desired behavior

Type

feature(routing 判準調整)

Expected

Diagnose routing 對「會沉澱出值得記錄的設計決策」的改動更傾向 Spectra,可能的方向(實作時決定,非窮舉):

  • 放寬 Layer 2:從「對外 published API contract」擴為「產生值得 freeze 的行為契約」(含內部共享模組的跨檔行為語意、效能架構決策)
  • 或新增 Layer 2 替代條件:hard-gate 命中(單一概念散佈 ≥N 檔 + 共享抽象)時預設升 Spectra 而非 Plan
  • 或 config 開關(sdd_bias: high|default)讓 repo 層級表態偏好——不同專案對「規格記錄 vs 流程重量」的取捨不同

Actual

  • Layer 2 窄門 + 「Plan-Spectra 分界:published API/protocol 就是 line」的明文規則 → 內部改動幾乎不可能進 Spectra
  • SKILL.md 的 anti-pattern 段明文把「cross-file refactor 沒對外暴露 API → 應該 Plan 不是 Spectra」列為 over-trigger——與使用者本立場直接衝突,需要修訂或加註 bias 開關

Impact

  • routing 判準是 IDD 的核心分流,改動影響所有 downstream(idd-all Phase 3 routing、idd-plan 的 Spectra 提示、idd-list 的 suggested next)
  • 取捨的另一面要誠實記錄:Spectra 三步鏈(discuss → propose → apply)單 issue 成本以小時計,偏向 SDD = 用流程重量換規格沉澱——這正是需要 spec 討論而非直接改 SKILL.md 的原因

關聯

  • rules/sdd-integration.md — 三層 routing 判準的 source of truth
  • idd-diagnose SKILL.md Step 3.5 — Layer 2/3、hard-gate、anti-pattern 段

Clarity Surface(idd-clarify run 2026-07-10T14:27:43Z)

Type Source Suggested canonical Status
ambiguity "更傾向走SDD一點" 「一點」的量級待 spec 討論定案:(a) 放寬 Layer 2 定義 (b) hard-gate 命中改升 Spectra (c) config bias 開關——三方向已列於 Expected,非本 annotation 可解 dismissed — 量級屬 spec 討論定案事項(三候選已列於 Expected);diagnose 據此 route Spectra + discuss,2026-07-17

Current Status

Phase: diagnosed
Last updated: 2026-07-17 by /idd-diagnose (attended batch)

Key Decisions

  • Complexity = Spectra(default discuss) — 量級三選一(放寬 Layer 2 / 硬閘升 Spectra / config bias)待對齊 → next /spectra-discuss

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions