2026-08-10 產出(已依用戶 Round 1 裁決改版)。涵蓋 before/after 雙欄對照、conv 側欄狀態色票(5 → 6)、ENDED 列的兩值交付 chip(三種嚴重度色)、第四顆燈新增 wait 態,含 default/hover 兩態。純預覽,不動 renderer/ 與 main/。
動畫在此頁真的會動:紫色 pill 的呼吸與 Before 欄裡 HANDOFF 燈的閃爍都是產品現行行為的複刻,用來說明「只靠動畫分辨」為什麼不可行。
| state | 預設色 | 判準(前景 turn idle 後才往下走) | motion |
|---|---|---|---|
running | #F4D48F | 前景 turn streaming(沿用,不改) | — |
auto | #D97706 | Auto chain 執行中(沿用,不改) | — |
background | #7C6CE7 | 改判準:至少一列還沒回到 EXEC——子行程存活,或已結束但 delivery 在途 | 有活子行程 → pulse 否則 static |
attention 新 | #DC2626 | 沒有任何一列在等,且至少一列已結束且不會回到 EXEC | static |
complete | #04B84C | 全部結束且全部交回(不再因為 exit code 非 0 就失格) | static |
active | #525252 | 沒有任何可見 host row | static |
優先序 auto > running > background > attention > complete > active。關鍵改動:attention 的判準從「process 結果不漂亮」改成「結論沒有、也不會回到這個對話」。一個 exit 1 但結論已經送達的 job,對話裡已經有那則訊息了,就不該再佔用警示色——這才是紫色永遠退不掉的根因。
chip 不是可按的元件,因此沒有 focus/disabled 態;hover 只跟隨列的既有 hover 底色,不另外加互動樣式。
wait 態(其餘沿用)queue · 尚未輪到(沿用)run · 機器正在做,會閃(本單後不再出現在 ENDED 區)wait 新 · 球在使用者那邊,不閃done · 已交回(沿用)fail · 不會再交回(沿用,涵蓋「交付失敗」與「從未嘗試」)語意分界:閃=機器正在動、不閃的琥珀=球在你這邊、紅=球沒了。現況把後兩者都畫成第一種。
| i18n key | 現值(zh-TW) | 改為 | 理由 |
|---|---|---|---|
backgroundWork.status.orphaned | 已中斷 | 已中斷 | 不變 |
backgroundWork.status.interrupted | 已中斷 | 狀態不明 | 這是 enum 外的 fallback;與 orphaned 逐字相同等於把「host 知道它死了」和「host 不知道發生什麼」畫上等號 |
backgroundWork.status.checkpoint | 已暫停 | 已暫停 | 不變(對外用語) |
backgroundWork.processStatus.checkpoint | 已保存檢查點 | 已暫停(檢查點) | 同一列收合/展開必須是同一個詞 |
backgroundWork.handoff.handed 新 | — | 已交回 / Handed back | chip |
backgroundWork.handoff.notHanded 新 | — | 未交回 / Not handed back | chip |
backgroundWork.stageState.wait 新 | — | 等待交回 / waiting to hand back | 第四顆燈 hover |
backgroundWork.summary.waiting 新 | — | {count} 個等待交回 / {count} waiting to hand back | 卡片標題摘要 |
backgroundWork.summary.lost 新 | — | {count} 個未交回 / {count} not handed back | 卡片標題摘要 |
依專案 i18n 分類規範:上表全屬 B 類(說明/狀態),en 填英文、zh-TW 填中文;區段名 RUNNING/ENDED 與按鈕 Clear ended 屬 A 類,兩個 bundle 都維持英文(現況已正確,本單不動)。