Problem
原始脈絡(逐字):
「順便說 ,有沒有issue說遇到剩下的問題太容易residual而不是開後續issue了」
— Source: /spectra-discuss(#298 actionability gate),2026-08-14。該提問指向 #304;本 issue 是同場自審中從一段 ### Residue 拆出來的可執行部分。
IDD 有兩個機制會把 issue 移出視線,但沒有任何機制會把它移回來:
| 機制 |
把 issue 移出視線 |
誰負責移回來 |
parking-lot label(6 個 open issue 在用) |
✓ |
無人 |
### Blocking 區塊(#84 Blocked 分組) |
✓ |
無人 |
### Complexity 的 when triggered 限定詞 |
✓ |
無人 |
parked issue 的 trigger 條件全是關於未來世界狀態的散文命題(「等 ≥3 instances」「首次 trace-stale 實害事故」「≥1 個 plugin 要求 terminology extension」)。這類條件成立時不會發出事件 —— 沒有 webhook、沒有 CI 訊號、沒有任何東西會通知 repo。唯一能發現「trigger 已成立」的路徑是人主動回頭讀,而目前沒有任何機制促成這件事。
既有文件已假設這個機制存在,但它不存在
references/ic-r011-checkpoint.md:74 逐字:
Net effect: only (a) avoids filing. (b) and (c) preserve the parking lot — periodic backlog grooming can grep blocker:infeasible or blocker:waiting to revisit when conditions change.
這句話有兩個問題:
periodic backlog grooming 沒有任何實作 —— 沒有 skill、沒有 script、沒有 cron。整份 IC_R011 設計把「parking lot 不會爛掉」的責任外包給一個不存在的機制。
- 它 grep 的 label 沒人用 ——
blocker:infeasible / blocker:waiting 目前各 0 個 issue;實際在用的是 parking-lot(6 個)。即使 grooming 存在,也會掃到空集合。
這是本 repo 第三次出現同一個形狀:規格寫下來、從未接上(前兩次:parking-lot label 的 description 寫「/idd-list filter candidate」但 idd-list 不讀它,見 #298;blocker:* 慣例寫在文件但 0 使用)。
與 #298 的關係(配套,非額外功能)
#298 會讓 gate 正確地把 parked issue 從 Suggested-next 藏起來。藏得越乾淨,越沒人回頭看 —— 若沒有配套的回訪機制,#298 會讓這個問題變嚴重而不是變好。兩者應一併考慮。
Type
feature
Expected
一個把 parked issue 帶回視線的機制。形狀待 diagnose,候選:
- A.
/idd-list 顯示 parked 時長 —— ⏸ parked 47d,超過門檻加視覺標記。零新指令,成本最低。
- B.
/idd-list --parked 專用檢視 —— 列出全部 parked + 各自 trigger 條件 + 停留時長,供人定期掃。
- C. 週期性 grooming skill(
/idd-groom 或併入既有 skill)—— 逐一提示「這個 parked 47 天了,trigger 成立了嗎?」,回答 yes → unpark。
- D. 只把
ic-r011-checkpoint.md:74 那句改成誠實敘述 —— 明說「目前無自動 grooming,靠人主動」,不做任何實作。
D 是誠實下限(至少不再宣稱有一個不存在的機制);A 是成本最低的實質改善。
Actual
Impact
| 面向 |
影響 |
references/ic-r011-checkpoint.md |
:74 的宣稱與現實不符,需改為誠實敘述或補上實作 |
skills/idd-list/SKILL.md |
候選 A / B 的落點;與 #298 同檔 |
| #298 |
配套關係 —— #298 把 parked 藏得更乾淨,會放大本問題 |
| 6 個現有 parked issue |
目前無人知道它們各自停了多久、trigger 是否已成立 |
Acceptance criteria
Source
Carved out from a ### Residue I wrote in #298 的 diagnosis(2026-08-14)。原文把兩件事混在一起:
自審動機來自 #304(residue 的預設應為 file-as-follow-up)。本 issue 即是對該問題的一次實地應用:Residue 因為便宜,會把旁邊真的能做的東西一起吸進去。
Refs #298, #304, #84
Clarity Surface(idd-clarify run 2026-08-13T21:26:08Z)
| Type |
Source |
Suggested canonical |
Status |
| missing-context |
「parked issue 的停留時長可見」(Acceptance criteria) |
「停留時長」的起算點與資料來源未指定。 parking-lot label 的貼上時間不在 gh issue view --json 的任何欄位裡 —— 需查 issue timeline events API(gh api repos/:o/:r/issues/N/timeline 找 labeled event)。候選起算點:(a) label 貼上時間(需 timeline API,每 issue 一次額外請求)、(b) 最後一則 Diagnosis comment 時間(現成,但與 park 動作不同時)、(c) updatedAt(現成但會被任何編輯重置,語意錯) |
surfaced |
| ambiguity |
「停留時長可見」(同上) |
呈現位置未定,且依候選 A/B/C 而異:A = 併進 /idd-list 既有列;B = 專用 --parked 檢視;C = grooming skill 的互動提示。三者對 idd-list 的改動幅度差很多 |
surfaced |
| ambiguity |
「超過門檻加視覺標記」(候選 A) |
門檻值未定。且門檻本身可能不該是固定天數 —— 不同 trigger 條件的合理等待期差異極大(「等 ≥3 instances」可能合理等一年;「等 PR #247 merge」等一週就該問) |
surfaced |
Problem
IDD 有兩個機制會把 issue 移出視線,但沒有任何機制會把它移回來:
parking-lotlabel(6 個 open issue 在用)### Blocking區塊(#84 Blocked 分組)### Complexity的when triggered限定詞parked issue 的 trigger 條件全是關於未來世界狀態的散文命題(「等 ≥3 instances」「首次 trace-stale 實害事故」「≥1 個 plugin 要求 terminology extension」)。這類條件成立時不會發出事件 —— 沒有 webhook、沒有 CI 訊號、沒有任何東西會通知 repo。唯一能發現「trigger 已成立」的路徑是人主動回頭讀,而目前沒有任何機制促成這件事。
既有文件已假設這個機制存在,但它不存在
references/ic-r011-checkpoint.md:74逐字:這句話有兩個問題:
periodic backlog grooming沒有任何實作 —— 沒有 skill、沒有 script、沒有 cron。整份 IC_R011 設計把「parking lot 不會爛掉」的責任外包給一個不存在的機制。blocker:infeasible/blocker:waiting目前各 0 個 issue;實際在用的是parking-lot(6 個)。即使 grooming 存在,也會掃到空集合。這是本 repo 第三次出現同一個形狀:規格寫下來、從未接上(前兩次:
parking-lotlabel 的 description 寫「/idd-list filter candidate」但 idd-list 不讀它,見 #298;blocker:*慣例寫在文件但 0 使用)。與 #298 的關係(配套,非額外功能)
#298 會讓 gate 正確地把 parked issue 從 Suggested-next 藏起來。藏得越乾淨,越沒人回頭看 —— 若沒有配套的回訪機制,#298 會讓這個問題變嚴重而不是變好。兩者應一併考慮。
Type
feature
Expected
一個把 parked issue 帶回視線的機制。形狀待 diagnose,候選:
/idd-list顯示 parked 時長 ——⏸ parked 47d,超過門檻加視覺標記。零新指令,成本最低。/idd-list --parked專用檢視 —— 列出全部 parked + 各自 trigger 條件 + 停留時長,供人定期掃。/idd-groom或併入既有 skill)—— 逐一提示「這個 parked 47 天了,trigger 成立了嗎?」,回答 yes → unpark。ic-r011-checkpoint.md:74那句改成誠實敘述 —— 明說「目前無自動 grooming,靠人主動」,不做任何實作。D 是誠實下限(至少不再宣稱有一個不存在的機制);A 是成本最低的實質改善。
Actual
ic-r011-checkpoint.md:74宣稱有periodic backlog grooming,實際不存在blocker:*label 各 0 使用,與實際在用的parking-lot不符(vocabulary drift,見 idd-list / idd-all routing 讀不到「現在可不可以動」— Complexity 的 when-triggered 限定詞被截斷、parking-lot label 無 consumer(22-issue backlog 實測 8/9 誤路由) #298)Impact
references/ic-r011-checkpoint.mdskills/idd-list/SKILL.mdAcceptance criteria
ic-r011-checkpoint.md:74的periodic backlog grooming宣稱與現實一致(補實作或改敘述,二擇一)blocker:*vsparking-lot的 vocabulary drift 與 idd-list / idd-all routing 讀不到「現在可不可以動」— Complexity 的 when-triggered 限定詞被截斷、parking-lot label 無 consumer(22-issue backlog 實測 8/9 誤路由) #298 一併收斂(不重複決定)Source
Carved out from a
### ResidueI wrote in #298 的 diagnosis(2026-08-14)。原文把兩件事混在一起:自審動機來自 #304(residue 的預設應為 file-as-follow-up)。本 issue 即是對該問題的一次實地應用:Residue 因為便宜,會把旁邊真的能做的東西一起吸進去。
Refs #298, #304, #84
Clarity Surface(idd-clarify run 2026-08-13T21:26:08Z)
parking-lotlabel 的貼上時間不在gh issue view --json的任何欄位裡 —— 需查 issue timeline events API(gh api repos/:o/:r/issues/N/timeline找labeledevent)。候選起算點:(a) label 貼上時間(需 timeline API,每 issue 一次額外請求)、(b) 最後一則 Diagnosis comment 時間(現成,但與 park 動作不同時)、(c)updatedAt(現成但會被任何編輯重置,語意錯)/idd-list既有列;B = 專用--parked檢視;C = grooming skill 的互動提示。三者對idd-list的改動幅度差很多