D-20260713-01|三階部署狀態:development/private-playtest/public¶
背景與驅動力¶
轉 public repository 前的 hardening 輪需要回答:什麼配置算「可以公開」?此前只有理想拓撲的隱含期待、沒有分階的最低要求,資金有限的初期部署會被三節點門檻擋在門外。release-readiness 同輪定位為維護者轉 public 前手動執行的 gate、不以 GitHub Release 為前提。
考慮過的選項¶
- 單一標準(public 一步到位三 bootstrap 冗餘):把初期部署硬擋在三節點門外,否決。
- 三階最低要求 + 不足時警告呈現(採納)。
決定¶
- 部署狀態分三階:development/private-playtest/public。private-playtest 可先用一個 bootstrap,但必須有正式 ledger 與一位治理 signer;public 至少要求一個合法 bootstrap,少於三個以單點故障警告呈現、不硬擋,三個以上才是建議冗餘。
LEDGER_DB_ADDRESS釘死為 genesis 建立open4wd-ledger後取得的完整 OrbitDB address、不是任意名稱;一般 client 缺 address 時不得自行同名建庫。- TURN credential 從一般 NetworkSettings 明文列移至 PIN 衍生加密 secret store:runtime 建連線時才短暫解密;空白輸入代表保留、清除走獨立操作、失敗不得覆寫。
後果與影響¶
部署門檻與實際資源對齊,「警告但可走」取代「理想值硬擋」;缺 address 不得同名建庫,堵住意外開出平行鏈的路(與 D-20260706-05 的位址錨互為表裡)。各階要求權威見 部署實際值與初始拓撲.md。