為什麼要有 BIP 流程?為什麼我們應該將 BIP 儲存在一個儲存庫中?
為什麼我們有 BIP 流程?這似乎是不必要的集中化,並引入了看門人(BIP 編輯器)和瓶頸(BIP 編輯器需要合併新的 BIP 和對 BIP 的更改)。如果某些東西進入比特幣核心和/或其他實現並且使用者執行該程式碼,那麼它是否具有 BIP 肯定是完全無關的。
同樣,為什麼要將提案儲存在單個 repo 中?如果我想為比特幣提出一個想法,我寧願將該提案儲存在我自己的儲存庫中,也不願將其送出給 BIPs 儲存庫。
這些問題是在 2021 年 10 月的BIP 流程會議上由prayank 提出的,並已被轉述。
為什麼我們有 BIP 流程?
顯然,所有關於比特幣的想法都不需要也不應該有 BIP。如果錢包開發人員有改進他們正在開發的錢包的圖形使用者界面 (GUI) 的想法,則無需在 BIP 流程中將這個想法正式化。即使它非常成功並且生態系統中的所有其他錢包最終都複製了該功能,也沒有交叉兼容性問題。每個錢包都可以獨立選擇是否實施該功能並對功能進行調整,而不會影響更廣泛的生態系統。為了鼓勵其他錢包實現該功能,開發人員可以在他們的錢包回購或比特幣設計之類的設計回購中記錄該功能。開發人員可以自由地試驗和實施這些想法,而無需與 BIP 流程進行互動。
但是,在某些範例中,您要麼需要整個生態系統都集中在一個標準/規範上,要麼至少他們這樣做是非常可取的。最極端的例子是共識規則。與錢包 GUI 範例不同,如果兩個比特幣實現在主網上嘗試不同的共識規則,那麼它們可以拆分網路並創建兩個具有共享歷史的區塊鏈。正式的 BIP 流程為新興的(並最終確定的)提案帶來了額外的審查和清晰度,獨立於任何特定的比特幣實施。
這似乎是不必要的集中化,並引入了看門人(BIP 編輯器)和瓶頸。
同意這些通常被認為是不利因素。如果 BIP 流程的優勢不存在(或微乎其微),那麼將有一個強有力的論據來終止 BIP 流程。我會爭辯說,上面討論的好處遠遠大於壞處。不僅適用於共識規則,而且適用於單一標準優於生態系統中實施完全不同方法的每一方的任何範例。
如果某些東西進入比特幣核心和/或其他實現並且使用者執行該程式碼,那麼它是否具有 BIP 肯定是完全無關的。
對此有一個論點,但正如這裡所討論的,我們不想將比特幣的安全性和共識規則永久地束縛在一個單一的實現上。在比特幣的剩餘時間裡,核心維護者和貢獻者不會單方面做出(或抵制)違背更廣泛社區意願的共識規則更改,並不能保證核心維護者和貢獻者將真誠行事。(要明確的是,我認為這不是目前的問題,但是當您考慮整個人類歷史程序時,發生了奇怪的事情。)
同樣,為什麼要將提案儲存在單個 repo 中?如果我想為比特幣提出一個想法,我寧願將該提案儲存在我自己的儲存庫中,也不願將其送出給 BIPs 儲存庫。
一旦你引入了多個 repos,你就引入了多個事實來源和多個參考來源的前景。一些回購將消失或不被維護。他們可能會儲存特定 BIP 的過時版本,然後該過時版本的讀者會對該提案的目前(或最終)狀態獲得不准確的看法。擁有 BIP 流程的好處(將審查和審查集中在單個 repo 中的單個文件上,並為最終規範的讀者提供清晰度)被放棄了。