跳轉到

歷史記錄 · 2026-06-27

月份索引歷史記錄

重大重構里程碑

2026-06-27 ─ 變更操作流程定案 + 材質廢止模型重訂(governance-ops-flow 7 題結案)

決策檔:D-20260627-01D-20260627-02

背景:承 2026-06-12 材質 append-only(A7)衍生的「git × 治理多簽 × 推版」操作面三連問,使用者裁定獨立釐清。7 題分四組裁決執行;材質廢止模型經使用者提案 + 評估後簡化(取代 06-12 的兩段式)。

材質廢止模型重訂(取代 06-12「公版先換材質」兩段式)

變動 位置
⭐ 廢止不再強制換公版 移除「若 builtin 用到 → 先走公版變更」前置;公版用到廢止材質亦變絕版品、照常可玩;清理公版改為獨立可選的公版變更(非廢止前置)。廢止 = 純 client minor、不 bump builtin_assets、不擋配對 材質表 §11.1
⭐ 絕版品行為(新 §11.3) 含廢止材質的已上鏈舊資產(UGC + 公版)= 絕版品:永久可玩、永不 unusable(≠ B 軸);決定性安全(不碰 const)+ 配對安全(不 bump builtin_assets);房內絕版材質揭露軟提示(玩家件或場地、平衡揭露非降版、續玩 = 認同公平、沿用開賽前無罰退出);fork 絕版品須 Stage 2 換材質才能上鏈;可逆(移出清單即復用、零遷移;復用決策如投票屬外部平台、不在本專案);情境路由(數值不合理 / 引擎調參 → 改值 major;不適遊戲性 → 廢止 minor) 材質表 §11.3 + 版本規範 §21 註 + 程式參數表 §3
提示不點名材質 / 理由 避免 i18n 膨脹;廢止理由改集中於額外說明文檔(待建、歸屬未定) 其他.md §9

governance-ops-flow 7 題裁決

裁決 位置
① 權威歸屬 集中到 升版.md §8(git × PR × 治理 × 上鏈);材質表 / builtin-assets / 治理事件流程 留指標回此 升版流程 §8
② branch protection 明文化 master 受保護、禁直推、變更走 PR、CI 閘 merge;全 corpus 統一 master(修 builtin-assets §7 誤寫的 main 升版流程 §8.2
③ 簽章工具 僅定介面層(比照 economy proposeUpdate)、UI / CLI 留實作 升版流程 §8.3
④ 事件 ↔ PR 互引 「建議」升格為規範(rationale 必引 PR / commit、PR 必附事件 CID) 升版流程 §8.5
⑤ 上線前 / 後雙軌 正式分節:上線前純 git、上線後混合流程 升版流程 §8.4
⑥ 材質廢止要不要治理 不走治理(採使用者提案);理由:僅上傳時驗證、零賽中足跡、determinism / 配對皆安全 材質表 §11 + 治理事件流程 §6
⑦ §6 對照表盤點 補材質廢止(client minor)+ SANITIZE_WORKER / TEXT_BLACKLIST(protocol major)列;版本規範 §4 path 表補 src/builtin/(major) 治理事件流程 §6 + 版本規範 §4

勘誤(取代 06-12 同主題敘述):06-12「另:」段的「merge 進 main」應為 master;「建議事件 rationale↔PR 互引」已升格規範;「公版若用到 → 先走公版變更」已移除(改絕版品模型)。

同日後續追加 ─ 公版治理移除(混合型取消):使用者進一步指出公版在 git 不在鏈、應可直接推版。評估確認鏈上 BuiltinAssetsUpdateEvent 不 gate 值 / 配對 / 部署(一致性實由 peer 端 builtin-assets CID 比對 + builtin_assets_version 配對閘保證、與事件無關)、純審計裝飾且與 git 歷史重複,且與物理常數 / 材質數值(同 build-time const、純 client 發版、不走治理)不一致公版資產變更改純 client 發版(major bump)、移除 BuiltinAssetsUpdateEvent、消掉「混合型」。CI 機械檢核(spec↔const / GLB schema / src/builtin/ 必 bump)取代人工授權的機械部分、「平衡好不好」歸 PR review(同物理常數標準)。落檔:升版流程 §8.3(混合順序 → 「公版 = 純 client 發版」、§8.4 雙軌併入 §8.1、刪 §8.5 事件互引)+ builtin-assets §7(「治理與維護」→「維護」、改寫 PR+CI、§1/§4/§5 去 signer 校準框架、§8 移除 ledger 事件列)+ 治理事件流程 §6(公版列 ❌治理 / ✅client major)+ 程式流程/ledger.md(移除 BuiltinAssetsUpdateEvent 事件型別)+ 經濟系統 §326 / 程式架構 §283 角色去「治理」。模型收斂兩軌:治理(economy_config 鏈上 runtime)/ client 發版(其餘全部、含公版)。governance-ops-flow item ①(§8 子節結構)與 item 1(公版事件 quorum)連帶更新 / 消失。

同日後續追加 ─ ForkDetectionConfig 治理 wiring + 鏈上配置評估:查證「移除公版後還有哪些混合型」→ (兩軌 disjoint)。順帶發現 ForkDetectionConfig 標「治理可調」但未 wired 進治理系統 → 補 wiring:折入 EconomyConfig.forkDetection(沿用 ConfigUpdateEvent + economy_config_version + checkCompatibility,免新增第 7 版本欄位;EconomyConfig 實為「治理 config」傘)。落檔:治理事件流程 §2.5 + §6(門檻 → ConfigUpdateEvent / 演算法 fingerprintVersion → derive_logic 兩列)+ 程式參數表 §17.1/§17.2/§17.3 + ugc-fork §4 repoint(門檻權威留 ugc-fork)。修正升版流程 §8.1「economy_config 是唯一治理軌」過度宣稱(folded 後 = economy_config 單一傘含 forkDetection 群組)。鏈上配置評估結論:revShare / newcomer / reputation / antiAbuse / signer set / forkDetection 治理皆合適、KEEP;唯一 move-back 候選 = racePrize(settlement timing = 結算協議時序、偏 protocol 非經濟政策)—— 待使用者裁。

2026-06-28 續 ─ racePrize timing move-back(方案 A)+ 反向檢查settlement_timeout / takeover_wait(consensus-critical 結算協議時序、非經濟政策)從 economy_config.racePrize 移出 → protocol/gameplay 常數 SETTLEMENT_TIMEOUT_SEC(30) / SETTLEMENT_TAKEOVER_WAIT_SEC(5)(程式參數表 §7;改它 = protocol / client 發版、不走治理)。落檔:程式參數表 §17 移除 racePrize 群組 + §7 加兩常數、economy.md race_prize 去兩 timing 欄(經濟欄 base/multipliers/combo 留治理)、比賽結算流程 §8.2 ×4 + matchmaking 程式流程 + system-constants §58 + 升版流程 §8.1 同步改名 / 去 racePrize。反向檢查(有沒有該移上鏈的)結論 = 無 client→治理候選:經濟政策值(upload_costs 50/500/0、race_prize base/multipliers、creator_royalty base_per_use、month_soft_cap、rank_multipliers)已是治理(economy.md EconomyConfig、runtime 讀、非 client 常數)。🔶但撈出 pre-existing 漂移EconomyConfig 介面拆在兩檔且不重疊 ── 程式參數表 §17(政策群組 revShare/newcomer/reputation/antiAbuse/forkDetection)vs economy.md §205(經濟值群組 month_soft_cap/race_prize/creator_royalty/upload_costs);治理事件流程 §2 也只列前半。✅ reconcile 已執行(同日):程式參數表 §17.1 擴為完整 EconomyConfig(政策群組 + 經濟值群組 month_soft_cap / race_prize / creator_royalty / upload_costs / expansion_costs / sponsorship / hot_race_quarters / ugc_lifecycle)+ §17.2 經濟值預設塊 + §17.3 標單一 authority、釐清 epoch = economy_config_version;economy.md §8 移除重複 interface EconomyConfig 改指 §17;治理事件流程 §2.6 補經濟值群組可治理清單。EconomyConfig 單一 authority = 程式參數表 §17。