跳轉到

歷史記錄 · 2026-07-27

月份索引歷史記錄

重大重構里程碑

2026-07-27 ─ 週邊 repo 容器安全基線

決策檔:D-20260727-04

  • 三顆公版 Template repo 的公開前稽核照出 canon 空白:runAsNonRootsecurityContext/非 root 執行/runtime 映像內容全 corpus 零命中,三顆 repo 因此各自為政——signaling 與 pinning 的 Node 映像皆以 root 執行並把型別檢查器、test runner、雲端 CLI 裝進 runtime,k8s manifests 無任何 securityContext
  • pinning 是唯一發布 public image 者(CI 推 GHCR),使用者直接 docker pull 執行,硬化責任無法下推給部署者——缺口自「各自的部署選擇」升級為公版交付物品質問題。
  • 資安規範.md 新 §8 為跨 repo 基線(執行身分/映像內容/埠與特權/例外須寫明),只約束自建映像與 manifests;上游官方 image 的內部硬化屬上游責任。resources 與探針明確不納入,維持「範本省略、overlay 自補」既有作法——其合理值隨部署規模差異過大。
  • 新節插入 §8、其後八節順移一號;七處活引用同批更新(歷史記錄依 frontmatter type: history 的既有出站豁免不動)。實作對齊 gate 在主 repo 轉 public 前,與 pinning 首次推 GHCR、check:vendor 上游比對轉綠同一時點。

2026-07-27 ─ 路由導覽與 UGC 公開入口收斂

決策檔:D-20260727-03

  • 一般頁首的中間導覽改由 route family 而非身分狀態決定:公開導覽為公告/UGC/關於/ 說明,玩家導覽為 Home/Garage/Race Config/Editor/UGC;/ugc/** 固定是公開 shell,Race/Watch 維持沉浸例外。
  • 公開 UGC 正式網址收斂成 /ugc/ugc/:cid,Provider 對 part | track 聯集負責 權威排序、總數與分頁,詳情依回傳 kind 切換。專案未曾公開,舊 /tracks/track/:cid/part/:cid 直接移除、不留轉址。
  • 公開「進入遊戲」恆顯示,目的地依解鎖狀態切 Login/Home;Identity 切 Login/本人 Creator。餘額退出 App Shell,只在本人 Creator 顯示,與公開累計收益分離。
  • DMCA 保留獨立公開頁並由 UGC/Help 提供入口;修正「每頁 footer」為「designated agent 資訊置於公眾可存取位置」,不侵入玩家與沉浸 shell。非本機 Race Config 補房碼觀戰 alertdialog,密碼與拒因仍由 Watch Page 處理。

2026-07-27 ─ 文檔站 origin 定為 docs.open4wd.org

決策檔:D-20260727-02

  • MkDocs 相關盤點揪出空白:穩定名稱集合(open4wd.org 與 signal./pin./bootstrap./turn.)全是 runtime 服務端點,部署資訊的 Pages 與 origin 敘述也一律以主 repo 為主詞,規劃中的文檔站沒有任何落點依據。
  • 裁決 docs.open4wd.org:獨立 origin 與主站的 Service Worker root scope、CSP、PWA manifest 完全隔離;命名對齊既有「子網域命名功能而非 repo」的慣例(signal 而非 signaling);站上內容寬於規格(decisions/、文檔工程.md、ABOUT.en.md、未來 /graph/),故不採 specs.
  • 排除 open4wd.org/docs/ 同 origin 子路徑:root scope SW 會攔截 /docs/ 導覽,且該 origin 的 Pages 來自主 repo,會把 spec corpus 產物綁進主 repo 部署流程。
  • 比照 signal.open4wd.org 處置=僅保留名稱與部署契約、未部署、不得宣稱可用;建站仍閘在首測與轉 public 之後,本輪不寫 mkdocs.yml、不動 workflow。

2026-07-27 ─ 決策檔 sources 收斂為字面前綴+ADR 與流水帳雙向硬閘

決策檔:D-20260727-01

  • ADR 分類稽核揪出 sources 從未被機器驗證的後果:16 條不符 README 既有定義(縮寫 12、指向 corpus 不存在的工作階段名 1、前綴同時命中兩條 2、缺 .md 等字元 4 分屬前述類別),另 3 筆次級候選併入只留條目端單向引用、parent 未回填。同一盲區先前已讓 5 個決策檔在零流水帳條目的情況下通過全部檢查。
  • 往嚴格側收斂而非放寬定義:sources =條目標題字面前綴(比對忽略空白與標點)、該日唯一解析、撞名補長到可區分;sources 與「決策檔」回引雙向一致;一次裁決吸收多條條目時每條都要列入。18 個決策檔的 19 條 sources 依此改寫,決策本文一字未動。
  • decisions/README.md 同批明文化兩件事:frontmatter 關聯性 metadata(sourcesfilesvectors)允許回填更正、決策本文仍不可變;併入時被併入條目也要進 parent 的 sources。規則先於資料改寫。
  • check:decisions 新增兩道硬閘執行上述規則,連同同輪補上的「年度索引條目數」與「決策檔連結以自身目錄解析」,歷史記錄側自此四道看守;ADR↔流水帳的雙向關係不再依賴人工稽核。

2026-07-27 ─ 文檔 corpus 與 MkDocs 導覽生成邊界(issues 000033、000034)

決策檔:D-20260727-05

MkDocs 導覽改為鏡射 corpus 既有目錄,根層與段內依 frontmatter type、再按 zh-Hant 排序;同名 X.md 作為 X/ 段落入口。首頁固定使用《總覽》,根層 README 明確歸為 repo 管理檔,不進 corpus、生成索引或站台內容,避免重新按 domain 分類與首頁權威衝突。