歷史記錄 · 2026-08-16¶
重大重構里程碑¶
2026-08-16 ─ 待辦索引回歸純索引(issue 000607)¶
其他.md 不再保存已定案的五項規則、常數名值副本、已落地的 catch-up 規格、已消失的 settlement
base lag 模型或 vendored 檔數快照。待校準參數以程式參數表逐 row 的「初估/暫定/待 playtest」
標記為唯一登記面;本檔只補公版整體配置與介面公差兩類跨 row 校準工作。
尚待研究的機制收斂為仲裁激勵、canFileReport 自佔告位與編輯器幾何工具精修。發布工作則精確
對映專案生命週期第 6/10 步與 workflow issues 000051/000053;main private 期間 local-only CI
應通過,不再誤稱整體 CI 必紅。原五項規則保留在各自 canon,並移除依賴待辦檔編號的「鐵則 N」
標籤。
2026-08-16 ─ ADR 廢止關係改採必填 metadata 與生成索引(issue 000606)¶
停止把停在 2026-06-12 的手工廢除欄位表宣稱為完整權威;該表與早期規格、版本對齊附錄凍結為
制度建立前的歷史快照。258 份既有 ADR 先全部補上必填 deprecates,再逐份人工判讀「決定」的
具名移除、改名與取代關係,共回填 104 筆;不從被否決選項或一般 prose 自動猜測。
check:decisions 現在驗證 metadata schema、要求新 ADR 即使無項目也明寫空陣列,並由同一來源
生成決策索引。schema/generator guard 與歷史回填分兩個驗證階段完成,但同屬一次交付,只有
全部回填並通過完整 specs 檢查後才視為完成。
決策檔:D-20260816-10
2026-08-16 ─ 等待房文字與賽中圖示訊息分層(issues 000561、000568、000571、000572、000577)¶
等待房 participant 與 spectator 共用 host-star 原始簽章文字聊天,角色由權威 room snapshot 顯示;進入 RacePage 後不再保留自由文字或 spectator-chat gossip,改為 canonical participant 發送、spectator 唯讀接收的已簽圖示訊息。
中央目錄收斂為 12 類 96 個只新增 message keys;圖庫可部分覆蓋,同一 key 可有不同視覺語氣。 玩家跨 pack 選九個精確資產,在 admission 進入等待房時凍結並預載,不在賽內 3、2、1、GO 重新判定。圖庫與網站主題分離;正式進 Git 的 WebP 必須具公開散布權與 provenance,既已出貨 即對所有玩家開放,不設 entitlement gate。賽內 wire 只傳凍結 slot reference;HUD 每 sender 最多一條,新訊息取代並顯示完整 5 秒。
決策檔:D-20260816-01
2026-08-16 ─ 封鎖衝突改採房內本機警示(issue 000564)¶
公開房間廣告繼續維持不含 participant roster 的隱私投影,不為封鎖預先揭露名單。房主仍可用 自己的本機清單拒絕加入並回通用原因;其他 client 只在接受初始或後續權威 roster 後計算本機 交集,命中時持續顯示私人警示與一鍵離房,不自動離開、不要求踢人,也不向全房廣播。等待房 自行離開無懲罰;賽內倒數與 GO 不重做這項裁決。
決策檔:D-20260816-02
2026-08-16 ─ PeerId 顯示身分與暱稱快照消歧(issues 000566、000567)¶
所有遠端人物以已驗 PeerId 為唯一身分權威,暱稱只保存發送或 admission 當下的非唯一呈現
快照。共用 resolver 顯示合法暱稱加 # 與穩定短指紋;無暱稱只顯示指紋。短指紋取完整 PeerId
的 SHA-256 前 4 bytes,而非截取常有共同前綴的 PeerId 字串。profile、room wire、聊天、觀戰、
近期隊友與封鎖清單共用同一 canonical nickname validator 與 resolver。
決策檔:D-20260816-03
2026-08-16 ─ 本機文字顯示過濾與 starter 匯入(issue 000576)¶
聊天完整原文照常簽署、傳送、保留及匯出為檢舉證據;每位玩家只在自己的裝置 render copy 套用 可開關、可編輯的 literal 詞表。詞表採有界 Unicode-aware substring 與來源位置映射,不接受任意 regex。Git 可提供四語 starter list,但只有玩家在設定頁明確複製才建立本機副本,後續更新不得 自動加入、刪除或覆蓋玩家設定。
決策檔:D-20260816-04
2026-08-16 ─ 賽事空間音訊正式採 HRTF¶
2026-08-09 的原裁決以 equalpower 起步並把 HRTF 留作後續選項,但實作與 canon 未經另行裁決
即採 HRTF/inverse。現正式保留現行 HRTF panning 與 inverse distance:它提供較完整的方位線索,
且音訊仍只消費呈現資料,不進共識、rollback、ledger 或 physics feedback;代價是需持續量測行動
裝置的 Web Audio 成本。
決策檔:D-20260816-05
2026-08-16 ─ 賽內倒數採主題 WebP 動畫(issue 000578)¶
賽內 3、2、1 改用各網站主題自有的數字 animated WebP,GO 改為不含語言文字的發令喇叭、
煙火或彩炮效果;所有造型與動態烘入資產,共用 CSS 只控制 HUD 版面。每個動態槽另有靜態
WebP,供有效降動效與失敗降級使用;圖片保持 aria-hidden,固定 live region 仍播報真實數字
及本地化 GO。
participant 與 spectator 都依各自本機啟用的網站主題顯示;動畫載入、解碼與播放不參與
race-ready、倒數協議或起跑時序,secondsLeft === 0 後 frame pump 仍立即開始。首批已同時
建立 default 與月兔兩主題的 16 個 runtime WebP,提示詞、透明原圖、逐幀 PNG 與可重跑動畫
工程保存在 specs 美術資源。
決策檔:D-20260816-06
2026-08-16 ─ derive-match-id 公開向量補齊 GridProof 綁定(issue 000587)¶
ledger/derive-match-id conformance 家族升為 v2;每筆向量 input 明載
gridContextDigest 與 gridSeed,不再由主 repo harness 暗中注入測試 fixture。公開流程、ADR
與主程式註解同步採四參數 deriveMatchId(roster, startedAt, matchRules, gridProof),讓第三方可只依
spec 與向量獨立重算 expected。
既有 expected 值未變;v2 記錄的是先前已生效但未投影到公開 fixture 的 grid binding input shape。
2026-08-16 ─ 仲裁收件與結果自證責任分層(issue 000592)¶
arbitration-vote 收件收斂為案存在、兩造排除、未撤回與窗界粗篩;需要檢查點時間線、抽籤
快照與重抽缺席集的精確面板/窗口判定,由 tally 終判。面板案發布結果前,面板成員必須各自
replay 並蒐集至少 quorum 份同結果 attestation;池不足無面板的 no-quorum 則以合格池上界驗證。
結果 digest 明確綁定 target,getReportStatus 也補齊 no-quorum。
決策檔:D-20260816-07
2026-08-16 ─ UGC 上鏈費收斂至 UploadEvent(issue 000588)¶
經濟、資料、衍生流程與 ugc-fork 實作說明統一回既有 D-20260708-08:原創與 fork 都先寫
UgcUploadEvent,上鏈費只在這筆事件單次扣除;fork 另寫的 UgcForkEvent 僅供血緣索引,
不收費,也不能消耗首次上鏈負資產資格。
2026-08-16 ─ Fork 修改幅度與反複製相似度分離(issue 000589)¶
宣告 fork 的 10% 最小修改幅度統一採 per-type PhysicsFingerprint diff,且只在相同
fingerprintVersion 間比較;跨版本 pass-through。mesh 幾何指紋及算式表的 0–100 相似度只
服務反複製分流:≥90% 拒收、70–90% 進 similarity-pending,不再兼任 fork 修改門檻。
2026-08-16 ─ Active magnet 場強採 SOC 降額後功率(issue 000590)¶
active magnet 場強統一為 available_output_w × allocation_pct / 100 × K_MAGNET_FORCE,與其他
武器/技能共用低 SOC 線性降額後的功率預算。這同時補回 allocation 百分比的 /100,避免舊式
configured output 直乘造成最多 100 倍場強,並同步算式、材質、建模欄位與鐵則備忘。
2026-08-16 ─ Pre-launch 自有 current 版本 gate 補齊(issue 000584)¶
機器可讀 authority 清單新增 asset schema、PhysicsManifest、SavedState、builtin assets、checkpoint
與統一 IndexedDB 六類 current baseline,並把 check:prelaunch-versions 納入完整 package check 與
Docs CI。第三方標準版本與歷史 ADR 仍不屬於 current baseline 掃描範圍。
2026-08-16 ─ Conformance fixture 格式與內容修訂史分離(issue 000608)¶
12 個 conformance 家族統一使用 formatVersion: 1 的 envelope,不再保存 fixture 編輯次數;案例
與 expected 的歷史改由 Git、exact specs SHA、綁定 ADR 與 generatedBy 追蹤。家族索引改由
fixture metadata 生成,新增完整性 gate 驗證 family 路徑、spec、encoding、provenance 與案例名稱。
2026-08-16 ─ Pre-launch canon 移除未發布相容敘述(issue 000621)¶
房間規則、OPAQUE invitation、裝置設定、UGC race lock、ledger checkpoint 與 DMCA blacklist 只描述 current exact shape;未發布的舊 wire、遷移、缺欄預設與版本聯集不再被寫成正式支援路徑。 Schema sanitizer 與 decode 邊界以拒絕非 current 形狀表述,不建立 migration 或 fallback 承諾。
2026-08-16 ─ UGC Presentation Metadata 採獨立簽署 Revision(issue 000597)¶
UGC 的名稱、描述與 tags 從 immutable admission metadata 拆出:upload 建立 presentation revision 0,
後續由原作者另簽 ugc-metadata-update 作 exact CID 的 full replacement。原 GLB、CID 與 upload
簽章不改;更新只接受下一 revision、成功更新間隔至少一小時,blacklisted CID 禁止更新。
預設免費,未來非零費率時 burn 與 revision 原子套用;current checkpoint 必填 presentation、
revision 與 updatedAt。事件 allowlist 因此成為 20 種,並同步 pinning vendor exact schema。
決策檔:D-20260816-08
2026-08-16 ─ Broken 輪組統一於幀末退出物理(issue 000593)¶
移除已被 D-20260814-05 取代的 broken tire 零摩擦/額外滾阻與 broken roller 軸向制動模型, 以及兩顆無效校準常數。輪組首次 broken 後只由幀末損毀交易停用 collider/auxiliary body, 並重算 primary body 的質量、local COM 與慣量;正式輪組 collider 統一為逐 admitted convex proxy, AABB/圓柱只保留給縮減測試 fixture。Snapshot 改以 body/collider enabled 狀態驗證損毀結果。
2026-08-16 ─ 場地碎片權威統一為純視覺(issue 000594)¶
材質決策表與 physics 每幀管線移除舊「切 Dynamic+Voronoi」模型:destructible Track Entity 達 fatigue 閾值後停用 intact body、colliders 與完整 visual,再依版本化 descriptor 重建純視覺碎片; 不建立 fragment body、collider 或 sensor。Fluid projectile 合法部署面同步移除 fragment 表面, 且場景 entity 明確只有 Fixed/Kinematic 物理,不執行車輛部件的過熱檢查。
2026-08-16 ─ 熱源、積分與輪胎熱磨耗單一化(issue 000595)¶
熱模型統一為 per-part J/W ledger 後單次 backward-Euler 積分:chip/battery skill 廢熱皆由
實際 battery_cost_j 乘現行 waste-heat 常數,burn/freeze 先乘 heat capacity 轉成 W,不直接
修改溫度。Chip 殺手鐧改在積分後以 T_next > thermalLimitC 判定;motor、ambient、clamp 常數名
與實作一致。Tire/roller 明列接觸導熱與 slip heat,熱磨耗採二次有界 1→3,不再使用線性 1→4。
2026-08-16 ─ 物理步進、Solver 與公開介面收斂(issue 000596)¶
Fixed timestep render catch-up 直接引用 protocol MAX_SUBSTEPS=4,與 hard CCD 的
PHYSICS_CCD_MAX_SUBSTEPS=2 分軌;移除 Rapier 0.19 無 consumer 的 position-iteration 常數,solver
只保留 numSolverIterations=8。公開 PhysicsEngine 介面以 interfaces.md 為唯一權威,統一
step(ReadonlyArray<PlayerInput>)、SavedState API、state hash,並補上 start-grid {slot, playerCount}。
2026-08-16 ─ 建模、場景與本機資料 current shape 對齊(issue 000619)¶
文件統一採實作中的 weather.patch.radius_m、meter 起跑格公式與 chassis COM swept trigger;
canonical chassis mount 明定為單一 96mm 軸距模板,並把 mount/hinge 門檻登錄為具名參數。
場地摘要移除不存在的 Root entities[],材質覆寫改為可空;fresh-import type 推斷不再誤套於
canonical reopen。車庫 loadout authority 改為目前 profile 的 sealed identity container,unified DB
garage-loadouts 只保留 legacy 匯入接縫,並明確支援多 profile 保存、單一 active identity。
2026-08-16 ─ 程式參數 registry 與機器看守補實(issue 000620)¶
check:constants 從只讀單名列與部分表頭,擴充為解析合併常數、K 校準表、dotted config 與
genesis 值,並掃描全 src 具名 export;值 drift、同名衝突及 system-constants 未登錄皆硬失敗。
地基套件 export 已全數登錄,EconomyConfig frozen 鏡像補齊 fork/經濟/lifecycle genesis 真值,
forkDetection 門檻單一權威移至本表。仲裁 60% 與 quick-match 120 秒改用具名常數;移除未消費且
無法涵蓋 500m 場地的三顆 16-bit 量化常數及無公式 consumer 的 collision damage scale。
2026-08-16 ─ ReadySet 自動開賽與逐回合晶片規則收斂(issue 000598)¶
等待房統一為 ReadyDeclaration → ReadySet acknowledgement → 起跑格證明 →
LockedStartPackage → 5 秒自動倒數,不再提供房主開始按鈕;preloading 再交換 matchId-bound
loadout 並執行每回合 race-ready/3 秒 GO 倒數。Quick Match discovery wire 移除整場
mode/rulesKey,全場 MatchRules.disallowChip 也自 current shape 移除;禁用晶片只讀每一回合
RoundConfig.disallowChip。同時清除 Bot、私人房免 rating、RoomPage 巡禮、rollback 協商與舊 API
殘影,觀戰容量固定為預設 20、範圍 0..50。
決策檔:D-20260817-07
2026-08-16 ─ 觀戰公開 payload 與 room 暱稱快照收斂(issue 000599)¶
fallback HUD wire 的 standings 收斂為 peerId 與 rank,不再重複公開暱稱;viewer 只從已驗
room admission snapshot 讀 nicknameSnapshot,再以共用 resolver 產生暱稱加 8 位指紋,缺快照
時只顯示指紋。room member 與 join-request wire 同步由 displayName 改為
nicknameSnapshot,舊欄位在 pre-launch exact decoder 直接拒絕。
觀戰 stream 的索源與重連不再接觸 invitation 或 password;credential 僅在 room-control OPAQUE
admission 使用,失敗對 joiner 只回通用 join-rejected。GossipSub spectator-chat capability、舊
role/member/event 型別與來源密碼拒因一併移除;10Hz 明確只屬精簡 fallback,產品相機維持三種,
brokenPartIds 固定最多 64 筆、每項 1–128 字元。
決策檔:D-20260816-09
2026-08-16 ─ GO 後主動離場統一為本人單簽成本(issue 000600)¶
主動離場統一先送 leave(reason: voluntary),再 best-effort 上鏈本人單簽
RaceLeaveEvent;事件只立即套用本人 disconnectCounts +1 與信譽 −5,不產生排名、
TrueSkill、經濟或完賽效果,也不縮小 MatchResult quorum。異常斷線仍由合法
MatchResultEvent.disconnects 推導相同離場效果;兩來源共用持久 (matchId, peerId)
去重鍵,任一到達順序或重播都只計次、扣分一次,無 quorum 時不得由少數替第三人處罰。
2026-08-16 ─ Bootstrap、Genesis trust root 與網路上限收斂(issue 000613)¶
移除不存在的 BOOTSTRAP_NODES_MIN 與 private/public 至少一節點 gate;空 bootstrap 清單
維持合法本地/既有 session 模式,BOOTSTRAP_NODES_RECOMMENDED = 3 只作獨立故障域可用性提示。
Client build profile 與 pinning 部署面補齊 receipt genesisTimestamp/GENESIS_TIMESTAMP 必填
trust root,formal stage 缺值、0 或本機啟動時間都 fail closed。Signaling 單房 MAX_PEERS = 64
登錄至伺服器常數權威;升版流程統一 client cache 版本、編譯期值來源、development island 與
/version.json 失敗語意。
2026-08-16 ─ 前端實作 canon 與 runtime 契約收斂(issue 000614)¶
PWA/App Shell 文件改採 locked、launching、local-ready、reconnecting、
online-ready 五態與原子 capability snapshot,不再用三層 offline tier 猜功能。i18n 統一為
19 個 root、lazy bundle chunk、settings 保存後提示重整,以及只載入目前 CJK 語系的 locale font;
主題靜態資產不再誤類比 i18n,render profile 補齊舞台六色、降級原因與保留 SFX 正名。
Settings 文件同步跟車距離、收藏清單、聊天顯示詞表、本機安全事件 JSON 匯出與八大正式分類,
移除 issue 指涉與可覆寫 reduced-motion 係數的錯誤說法。公告 build 明確直接執行 generator,
check:announcements 仍如工具鏈 inventory 所載為可供本機/PR 使用的 local check,而非已存在的
CI job。
2026-08-16 ─ DMCA 全面收斂為 provider-scoped 法遵流程(issue 000601)¶
Notice、Counter-Notice、透明度與 Repeat Infringer 統一只作用於各 provider 自己控制的供應面;
移除全域/發版下架清單、主專案官方代理人、維護者實體審查、固定 48 小時承諾與黑名單廣播
殘影。Client /dmca/transparency 只逐 provider 讀自願公開聚合,仲裁黑名單則由 ledger derive
後分別供 pinning unpin/拒 pin 與本機 PeerScore 消費。
文字黑名單 current shape 固定 TEXT_BLACKLIST_VERSION='v1',預設 substring,DMCA 條目可逐筆
選 exact/substring/regex;聊天 starter list 仍是玩家明確複製才建立的 literal 本機副本。
Admin 詳情 endpoint 對齊 plural /admin/notices/:id,表單欄位與 DMCANoticeV1 exact schema
一致,不接受任意附件上傳。
2026-08-16 ─ Anti-Piracy 流程圖回歸現行五層契約(issue 000602)¶
反複製流程圖移除時間戳自動裁定、舊相似度級距與獨立爭議案型,五層改為 CID exact、已驗
Mesh Fingerprint、Similarity classifier、標準檢舉仲裁與 Provider-scoped DMCA。上傳流程明確
區分 exact 拒收、活躍對象硬擋、similarity-pending 經濟隔離與一般通過,門檻只引用版權
權威而不複製進圖。
鏡像正規化修正為翻 X 軸後保留 winding;仲裁候選補上非全域玩家黑名單與非兩造條件,面板 大小、quorum、整數票權與成立門檻全部改連 moderation/reputation/算式表權威。
2026-08-16 ─ 程式流程圖全面對齊 current canon(issue 000603)¶
Ledger、測試、版本、signaling、peer discovery、PWA、i18n、配對、聊天與網路同步流程圖 移除原型期契約:分叉改為 full-DAG canonical fold 與 consensus-invalid,checkpoint 改採驗證後 announcement,配對與 signaling wire name、DAG-CBOR、六欄版本、固定 8-frame acceptance 與 ICU 複數均回歸現行權威。
PWA 圖補齊五態 runtime、12 個 unified stores、/version.json 連線確認、UI idle guard 後的
SKIP_WAITING 與依平台/UGC 貢獻等級解析的容量 policy;全部程式流程圖不再直寫舊色碼,
統一改用 local、consensus、chain、fail、ui 語意 class。
2026-08-16 ─ 技術棧總覽回歸現行 repository 實作(issue 000604)¶
技術總覽移除 Angular Material、官方 signaling 節點、OrbitDB v2、自寫 Rust/Go 與不存在
tools/ 腳本等早期目標,改為自製 o4-* ui-kit、營運者自選 signaling adapters、
@orbitdb/core、TypeScript 單一專案語言,並以 pnpm check:assets 與
pnpm propose:asset-metadata 描述實際存在的 GLB 工具入口。
i18n 改記錄為自寫 ICU 子集+Intl.PluralRules;主題列明受控 CSS/token/manifest/
fallback 四件組。加密與資安對接補上 RFC 9807 OPAQUE exact-pinned 實作、雙向
confirmation 與 room-runtime 線上限速,硬體錢包則改指向已定義的 provider 介面。
2026-08-16 ─ 貢獻指南改用九域規則執法契約(issue 000605)¶
README 與文檔工程改為 LEDGER、ECON、MOD、PHYS、TRACK、PART、UGC、
VERSION、SEC 九域 ID;每個 canon anchor 必須與 rule-contracts.json 形成 exact set,
完整宣告 kind、requiredLayers、唯一 implementationRepos 與逐層 testContracts。
測試證據改為 owner *.conformance.spec.ts 對每個 required layer 以 literal ruleConformance
綁定 contract,一般註解不再視為證據。文件同步寫明 main check:trace、pinning conformance
spec、Specs check:trace:workspace、check:constants 與 check:authoring-source 的真實分工。舊
rule-ownership.json 清空為 historical/non-executable sentinel,ownership 只從完整 contract 讀取。
2026-08-16 ─ 前端靜態內容路徑收斂¶
i18n 字典的歷史獨立 /assets/i18n/*.json 形狀正式改由動態 import 產生的 lazy locale chunks
取代;自寫 Service Worker 仍在 install 階段全量 precache 並以 cache-first 提供四語離線能力。
公告作者來源統一為 public/assets/announcements/<id>/,不保留舊 public 目錄 alias;靜態多語、
封閉 block schema、四語完整性與 git PR 信任模型均不變。
決策檔:D-20260816-11
2026-08-16 ─ 完整 PhysicsManifest 公版零件預算¶
公版 part 單檔上限由 104 KiB 調為 112 KiB,增額只供逐 collider 材質、熱、磨耗、接觸面積、 拓撲與其他 deterministic physics metadata。8K triangle、必要時 256² 紋理與全套 4 MiB 硬上限 不變,不把 metadata headroom 轉成視覺複雜度額度。
決策檔:D-20260816-12
2026-08-16 ─ 專案沿革連結雙閱讀面修正(issue 000610)¶
首頁生成時間線的 12 條來源連結改為 GitHub 可直接解析的 .md#anchor;站點 staging 只在受管
timeline 區塊投影為 MkDocs 的 .html#anchor,避免任一閱讀面出現 404。check:refs 新增 raw
<a href> 驗證,並把生成導覽排除於知識圖語義 edges 之外,因此路徑與錨點受看守而不污染圖。
2026-08-16 ─ Specs 公開前 lifecycle 與 intake 接線(issue 000611)¶
README 與英文導覽明示專案仍在開發中、主遊戲尚未正式公開,並補齊 ADR、conformance、每日歷史、
美術與部署資料夾入口。MkDocs 全站 announce bar 改由 專案生命週期.md frontmatter 生成,呈現
runtime_phase、首次 live 前相容聲明、最後更新時間與對應 specs commit;本機無 Git 預覽不冒充
正式 SHA。Issue Forms 的 Discussions 與漏洞流程連結改指 specs 自身,首次公開步驟新增啟用與
未登入可達性檢查,不再依賴當時仍 private 的 main repo。
2026-08-16 ─ 部署與發布 canon 回歸現行管線(issue 000612)¶
主站發布流程改以 Pages artifact 與 OIDC deploy-pages job 為唯一模型,Lighthouse 回歸 required
workflow;custom-domain production 使用 root /,/open-4wd/ 只作 preview,兩種 profile 都須
通過 deep-link E2E。CSP 改為依每份 prerender HTML 逐頁生成,並補上 .com 到 .org 的防禦性
301、同源 community registry snapshot 與正確災難復原引用。
Pinning、signaling 與 TURN 統一為公版 reusable repo、營運者 fork 後手動 dispatch;SSH/compose
只屬營運者自管替代路徑。Pinning 公版 CI 只驗本機 vendored bytes,公開 provenance gate 才做
遠端比對;監控域名與通知通道不再冒充專案預設。TURN 補記 turns: 憑證續期及 restart 可能
中斷 relay,k8s 同 pod 的 Kubo swarm 改用 4101 避開 app 4001。工具鏈、目錄樹、AABB 公尺單位
與各章節引用亦同步回到現行權威,並以 deployment canon 回歸測試防止舊模型再進入 live 文件。
2026-08-16 ─ SEO 首發靜態範圍與 Lighthouse 分級 gate(issue 000616)¶
OG 預設圖統一為實際出貨的 JPEG,robots 移除不存在的 spectator route 並保留 /home 禁索引;
metadata 表補齊 DMCA 說明與透明度頁。.lighthouserc.json 成為 URL、執行次數、門檻數值與
warn/error 分級的唯一可執行權威,固定環境採多次量測,accessibility/SEO 先阻擋,
performance/best-practices/LCP/CLS 先收 baseline,release candidate 再核准升格。
首發 sitemap 與 SSG 只依靜態 route manifest、公告 snapshot 與 build 內輸入產生,不連
OrbitDB 或 provider,也不宣稱每日 UGC Top-N。Generator 保留 optional ugcIndex 接縫;只有
日後另案定義 checkpoint、ranking、簽章 snapshot、足量 corpus 與失敗/快取政策後才可供值,
本次不新增 pinning SEO API。主程式與 specs 各新增回歸測試,防止兩套門檻或無來源的 Top-N
承諾重新出現。
2026-08-16 ─ 程式架構索引與介面邊界回歸現行實作(issue 000617)¶
程式架構總覽對齊 22 個產品 route、十四域 AppDataProviders、完整模組 inventory 與唯一流程
索引;8-peer 測試正名為只驗證 28 個 pair 連通的 memory-transport connectivity proof,不再
宣稱已有長時間賽事、封包損失或 rollback 壓測。補列 race-messages 實作文檔、修正重複章號,
並明定 @libp2p/webrtc 與 @helia/libp2p 的動態 import 邊界。
跨模組介面改為五個已接線抽象加一個 AssetStorage 保留接縫;後者首發沒有獨立實作或注入
consumer,內容讀取仍由 asset-source 與 UgcBlockSource 負責。KeyManager 方法面只以專檔
為唯一權威,移除缺方法且使用 PeerId 字串切片的複本;場地 route、respawn 與 magnet 座標欄位
統一為公尺 positionM/widthM。新增文檔回歸測試防止舊路由數、單位與虛構實作回流。
2026-08-16 ─ UGC admission、marker 與三出口契約收斂(issue 000618)¶
Stage 1 拒收條件只留 流程/UGC上傳.md 一份權威,涵蓋格式、mesh、惡意 extras、
NaN/Inf、node 重名及 3M triangles/80 MiB 來源絕對 ceiling;禁止材質在此階段剃除為未指派,
part 的 100k canonical cap 留給 Stage 2 保真減面後由 Stage 3 嚴格驗證。current marker 的精確
type 在 reopen/fork 時鎖定;沒有 marker 的一般外部來源才走 UI+幾何五情境矩陣,可編輯
匯出因移除 marker 而再次匯入時重走一般來源分支。
Wave A 的尺寸處理正名為不進 protocol 的 provisional uniform fit guidance,Wave B 只量測
mount/hinge 表列介面特徵的絕對公差,不以 AABB、輪徑或馬達總長限制合法造型。Editor 改用
neutral 中性工作區並對齊現行模組樹;normal weather 帶 patch 改為 Stage 3 拒收。總覽、
上傳流程與 editor 統一為本機測試、上鏈、可編輯 GLB 三出口;衍生 parent 不再檢查已廢除的
逐作品 fork 開關。另登記 issue 000627 追蹤主程式仍提前套用 100k Stage 1 cap 的實作缺口。
2026-08-16 ─ 美術索引、路由線框與資產管線回歸現行權威(issue 000615)¶
美術索引補齊 authoring-source-manifest.json、24 顆零件與 3 顆場地 authoring GLB、賽中圖示、
倒數動畫與 OG 母圖,並把風格參考、出貨 UI 資產及 builtin bytes owner 三種性質分開。前端資產
路徑統一為 public/assets/themes/<id>/assets/ 與共用 sprite;主題示例改用 default manifest 的
真實 key family,builtin GLB 則明確走 source manifest 與 release gate。
頁面線框補齊 Inbox、About、DMCA 表單與 provider-scoped 透明度四個公開表面,玩家導覽加入
Inbox;新身分 PIN 改為必填且兩次一致,建房/加入/觀戰改用 CSPRNG invitation,不再暴露自訂
低熵密碼。Editor、Race 與 Settings 分別對齊三出口、賽中圖示訊息、算圖解析度/反鋸齒;主題
套用強度、BGM /home 映射與空狀態 key 也同步收斂。文檔回歸測試固定上述資產與路由表面。
2026-08-16 ─ 公開規格移除私有工作區路徑依賴(issue 000622)¶
總覽、流程、遊戲機制與美術提示詞不再把讀者導向未隨公開 repo 發布的工作區或封存路徑;
流程圖以 repository 內的技術/業務文件為完整來源,早期機制探索也不再冒充可取得的補充規格。
零件、場地與頁面概念圖產出改指向實際存在的 參考雛形/ 分層、authoring manifest 與 release
gate,未選生成輸出明定為可丟棄的本機中間產物。
歷史總索引保留三項語意遷移,但移除不可達的舊檔完整路徑;每日歷史與 ADR 的真實歷史語境 不改寫。新增文檔回歸測試,阻止 live 公開文件重新依賴私有工作區或已移除的 wrapper 目錄。
2026-08-16 ─ 跨文件細項殘影與現行規格圖收斂(issue 000624)¶
公開規格中的套件命令統一為 pnpm,內容範例統一 CIDv1、PeerId 與 MiB;PWA manifest 的色碼、 分類、cache 名稱、結果頁路由、助記詞驗證、RoomId、Match 事件名與 UGC 快取操作回歸同一權威。 車輛章號、賽內 HUD 子節、回合失能終局、結算訊息數與步驟編號重新連續;結算 Reject 只作透明 審計,不再暗示可自動轉檢舉或仲裁。功率 mW/W 換算、幾何體積公尺單位、經濟算例、仲裁擋點、 DerivedState 摘要與可簽章容器也同步修正。
文檔工具檔頭改以 repo 內 文檔工程.md 為唯一說明,不再引用外部工作區或已退役暫緩桶;
authoring workflow 的步驟名不再硬編資產數。docs-map.md 與 graph.json 現在排除 type: history
的節點與出站邊,只呈現現行 canon/implementation 關係;總覽與歷史索引仍照原本管線保存歷程。
新增回歸測試鎖住舊命令、CID、單位、路由與 history graph 邊界。
2026-08-16 ─ 現行 canon、決策史與維護操作邊界收斂(issue 000623)¶
現行規格移除舊稱、勘誤、落地進度、內部複審標記、批次代號與私有 issue 指向,並把同一句 規則改寫為直接可執行的現況契約。PWA 文件不再要求維護者用 DevTools 手動刪資料庫,缺 store 改為 fail closed 並導向產品內明示重設流程;漏洞獎勵政策只由資安規範維護。初估參數仍留在 程式參數表,因其是待校準數值的現行 authority,不因文字掃描而移除。
經濟系統只保留 match-prize 與 royalty 兩個鑄幣入口,未採的挑戰、掛網、服務證明、節日與
邀請方案移入 D-20260817-01;主題 RWD 文件則把一次性審查量測與施工順序改為 viewport 驗收矩陣、
責任邊界與整合守門。新增文檔測試禁止內部標記、私有 issue 及維護者本機重設步驟回流 canon。
決策檔:D-20260817-01
2026-08-16 ─ 公式、政策、部署與前端規格改採單一權威(issue 000626)¶
跨文件複製的經濟、技能、疲勞、信譽、UGC fork、DMCA、黑名單與評分公式已改為摘要連結; 算式只留算式表,門檻與常數值只留程式參數表,流程與實作文檔不再宣告第二份數值。整車 質量、AABB、質量比與輪胎約束回到建模參數表,車輛組裝與比賽流程只描述何時檢核;每回合 初始狀態只留算式表。三份賽事跨模組摘要表則統一引用程式架構模組表。
Pinning、Signaling、TURN 的公版 Template 共通模型只留部署資訊總覽,各 repo 規格只寫自身 adapter、image 或 coturn 差異;pinning 快速部署不再重列 secrets/variables。Default 色票、 設定 tint、RWD 寬度常數與 template SVG 規則分別收斂至設計系統、主題系統、程式參數表與 前端技術策略。文檔回歸測試新增副本禁制,防止常數宣告、整車數值、色票與跨模組表回流。