08 · 開發者體驗與抽象化自助服務
此主題 roadmap 項目的里程碑
截至 2026-10-22 · 今天
甘特圖
里程碑
| # | 里程碑 | 開始日 | 目標日 | 狀態 | 等待 | 團隊 | Epic | 推導 |
|---|---|---|---|---|---|---|---|---|
| 22 · Backstage 內部開發者平台(IDP) | ||||||||
| 22.1 | Backstage 上線,目錄與身分接妥 | 2026-08-17 | 2026-12-18 | 進行中 | — | SRE · 平台工程 | — | — |
| 22.2 | 樣板涵蓋各後端可佈建的範圍 | — | 2027-09-10 | 規劃中 | 22.1 | SRE · 平台工程 | — | 等待 22.1 |
| 22.3 | 申請與核准為 Backstage 流程,並留下紀錄 | — | 2028-03-10 | 規劃中 | 22.2 | SRE · 平台工程 | — | 等待 22.2 |
| 22.4 | 除發布外,Backstage 是唯一入口 | — | 2028-09-08 | 規劃中 | 22.3 | SRE · 平台工程 | — | 等待 22.3 |
| 23 · Cogwork 桌面應用程式 | ||||||||
| 23.1 | cogwork 依工單設定的順序執行發布 | 2026-07-06 | 2027-05-28 | 進行中 | 24.2 | SRE | — | 等待 24.2 |
| 23.2 | cogwork 改觸發 GitLab CI,取代 Jenkins | — | 2028-09-08 | 規劃中 | 15.3, 23.1 | SRE | — | 等待 15.3, 23.1 |
| 23.3 | cogwork 的憑證與網路路徑納入零信任 | — | 2028-07-14 | 規劃中 | 13.3 | SRE | — | 等待 13.3 |
| 24 · 發布工單系統 | ||||||||
| 24.1 | 發布申請與其順序集中於單一系統 | 2026-07-06 | 2026-11-27 | 進行中 | — | SRE | — | — |
| 24.2 | 發布順序是執行端可信賴的資料 | — | 2027-09-10 | 規劃中 | 24.1 | SRE | — | 等待 24.1 |
| 24.3 | 觸發改走 GitLab CI,Jenkins 退場 | — | 2028-09-08 | 規劃中 | 15.3, 24.2 | SRE | — | 等待 15.3, 24.2 |
| 24.4 | 每次發布皆有可審閱的變更紀錄 | — | 2029-01-12 | 規劃中 | 24.3 | SRE | — | 等待 24.3 |
細節
22.1Backstage 上線,目錄與身分接妥2026-12-18進行中 · 2/4
- Backstage 已部署並實際使用負責人 · Charles
- producer 已合併進稽核軌跡的 repository,因此在此提出的申請與核准從一開始就被記錄,而非事後補上。
- 目錄項目皆具擁有者負責人 · TBD沒有擁有者的目錄只回答「有什麼」,不回答「是誰的」— 而事故當中要問的是後者。
- 以 SSO 群組決定個人可申請的項目負責人 · TBD
22.2樣板涵蓋各後端可佈建的範圍2027-09-10規劃中 · 0/4
- namespace、Harvester 虛擬機、資料庫與網路變更的樣板負責人 · TBD
- 各樣板一律經由負責的後端佈建,不自行重做一套負責人 · TBD自己動手佈建的樣板會變成第二條路徑、帶著自己的預設值,兩者終將分岔。Backstage 負責表單;實際的事仍由 Terraform、Ansible 與 ArgoCD 完成。
- 預設值、配額與擁有者開箱即帶上負責人 · TBD
- 沒有後端能實現的樣板不予發布負責人 · TBD一個收得了申請、卻沒有人能處理的表單,比沒有表單更糟 — 它把一場對話變成一列佇列。
22.3申請與核准為 Backstage 流程,並留下紀錄2028-03-10規劃中 · 0/4
- 每筆申請記錄申請者與核准者負責人 · TBD
- scaffolder 開出 GitLab MR負責人 · TBD
- 這是 20.4 要查的那條鏈的起點:申請與核准是鏈頭,少了關聯鍵,後面的環節就接不回來。
- 發布不走此流程 — 仍屬項目 24負責人 · TBDBackstage 核准資源佈建;發布工單系統核准發布。不同的對象、各一套核准流程 — 否則就是兩個入口都認為變更歸自己管。
22.4除發布外,Backstage 是唯一入口2028-09-08規劃中 · 0/4
- 基礎設施與應用的自助申請皆經 Backstage,而非工單或聊天訊息負責人 · TBD
- 例行申請不再有直接找後端的路徑負責人 · TBD只要舊路徑還通,表單第一次不方便時它就會被用上,而目錄就淪為一份只涵蓋部分事實的第二紀錄。
- 量測仍以其他方式進來的申請數量負責人 · TBD
- 刻意排除發布,並載明理由負責人 · TBD
23.1cogwork 依工單設定的順序執行發布2027-05-28進行中 · 1/4
- 一次推進一個系統,失敗即停止而非繼續負責人 · TBD一次二十個系統的發布,若第三個失敗後仍繼續,比停下來更糟:後面的系統正在對著一個沒部署成功的東西運行。
- 明訂單一系統「完成」的定義,作為下一個開始的條件負責人 · TBD「已觸發」不等於「已部署」,「已部署」不等於「健康」。順序要有意義,兩個系統之間的關卡就得選對。
- 二十個系統的發布進行中,進度可見負責人 · TBD
23.2cogwork 改觸發 GitLab CI,取代 Jenkins2028-09-08規劃中 · 0/3
- Jenkins 退場後該分頁失去後端 — 改指向 GitLab CI負責人 · TBD
- 單一應用的部署離開 cogwork;有序發布留下負責人 · TBD14.3 讓單一應用的部署跟隨一次合併,過程中沒有人。跨二十個系統的有序發布是明訂的例外,由這裡驅動 — 兩件不同的事,過去共用同一個按鈕。
- 重新核對 ext API 契約與變動的部分負責人 · TBD24.3 改變了發布時 ticket system 的行為,而 cogwork 透過那個介面讀它;兩邊都在動,所以契約要各自核對一次。
23.3cogwork 的憑證與網路路徑納入零信任2028-07-14規劃中 · 0/3
- ext API key 是存在筆電上的靜態憑證 — 改為個人身分負責人 · TBD正是項目 12 存在的理由要消滅的那類憑證,而且它待在整個環境中最不受控的機器上 — 同時握有推進正式發布的權限。
- cogwork 與其他一切一樣,經 NetBird 存取內部系統負責人 · TBD13.3 讓 NetBird 成為所有入口的起點;一個直接對內部 API 說話的桌面工具,會成為讓那個主張不成立的例外。
- 人員離開時,撤銷為單一動作負責人 · TBD
24.1發布申請與其順序集中於單一系統2026-11-27進行中 · 3/4
- 以 Zitadel SSO 簽發 JWT,並具角色負責人 · Charles
- 發布單、順序欄位、回饋與生命週期已實際使用負責人 · Charles
- 與 cogwork 的 ext API 契約版本化負責人 · TBD23.2 與 24.3 都在那個介面底下變動。兩套系統同時改變、契約卻沒有版本,正是其中一方安靜壞掉的方式 — 而這裡壞掉的會是一次正在進行的發布。
24.2發布順序是執行端可信賴的資料2027-09-10規劃中 · 0/4
- 順序逐系統記錄,而非由列的位置隱含負責人 · TBD一份只因為恰好那樣排序而有順序的清單,在第一次有人編輯某一列時就會出錯。執行端需要的是讀得到的順序,不是推斷出來的。
- 系統之間有相依時予以表達負責人 · TBD
- ext API 以有序清單作為 cogwork 執行的契約負責人 · TBD
- 二十多個系統的發布是常態,而非邊界情況負責人 · TBD這正是這兩套系統存在的理由。試算表可以裝一份清單,但它無法成為另一套系統依序執行的對象 — 差別全在這裡。
24.3觸發改走 GitLab CI,Jenkins 退場2028-09-08規劃中 · 0/4
- 原本觸發 Jenkins 之處改觸發 GitLab CI負責人 · TBD
- 本系統負責觸發 CI,不負責部署負責人 · TBDArgoCD 收斂的那個 Git 變更,來自人在 GitLab 上合併。工單系統負責授權、記錄與觸發 — 三件事,沒有一件是部署。
- test-merge 與 merge 是實作出來的端點,有角色檢查與逐分支衝突回報,並非文件錯誤。它們去留是這裡要做的決定,而架構頁面依這個決定更新,而不是反過來。
- 少了它,20.4 要查的那條鏈會斷在人做決定的地方 — 而那正是任何人審視一次發布時最想看到的部分。
24.4每次發布皆有可審閱的變更紀錄2029-01-12規劃中 · 0/4
- 議定變更分級,並逐次套用負責人 · TBD
- 審查證據與回滾計畫於發布前記錄,而非事後補負責人 · TBD發布後才寫的回滾計畫,是對已發生之事的描述。發布前寫的,才是半夜三點有人會去讀的東西 — 而二十個系統的發布,它還得交代已經上完的那幾個怎麼辦。
- 發布後回饋於工單上結案負責人 · TBD
- 此為供人審閱的紀錄;20.4 是供查詢串接的鏈負責人 · TBD同一次發布上的兩種不同需求。把它們合而為一,結果不是一份查不了的合規紀錄,就是一個沒人審得動的查詢結果。