以太坊协议开发治理和网络升级协作

ETH 中文2022-09-01 19:42

来源 | hudsonjameson.com

作者 | Hudson Jameson

翻译 | 2DAO3 Flicka

校对 | ECN


这篇文章将讨论以太坊社区是如何做出协议级的开发决策,以及如何组织以太坊网络升级 ( 又称硬分叉 )。随着时间推移,以太坊的决策制定流程也不断发展,这其中有许多可追溯的历史。本文将重点关注 Eth 1.0 ( 执行层 ) 治理,而不涉及 Eth 2.0 ( 共识层 ) 治理。本文不代表以太坊基金会或其他与我相关的任何实体。


以太坊治理架构的核心构成


以太坊改进提案(EIPs)

此为原作者截图,最新信息请到 https://eips.ethereum.org/ 查阅


Martin Becze 是以太坊早期核心开发者,他在 2015 年 10 月为 EIP 创建了 GitHub 仓库。当时 EIP 的流程机制参考了比特币改进提案流程(BIPs),而后者则是参考了 Python 增强建议书 (PEPs) 的规范。以太坊改进提案是向以太坊社区提供信息的设计文档,它描述了以太坊的新功能、该功能的运行流程和环境。EIP 需提供关于功能的简洁技术规范及其实现原理。EIP 的提出人会负责推进社区对 EIP 的共识,并记录不同意见。


有几种不同类型的 EIP,如低层次的协议变更,会影响共识层、需要升级网络的核心 EIP,或规定了社区标准的 ERC。最著名的 EIP,是用于在以太坊创建自定义代币的 ERC-20 协议标准。


EIP 编辑的任务是检查 EIP 的技术可靠性、拼写 / 语法的正确性和代码风格。


Martin Becze,Vitalik Buterin,Gavin Wood 等其他人曾在 2015 年到 2016 年底担任 EIP 最早期的编辑者。2016 年 10 月,在以太坊开发者大会 Devcon2 之后,我接管了 EIP 的主要编辑工作。随着时间的推移,有更多的人加入 / 退出编辑组。目前的 EIP 编辑成员有我,Nick Johnson (ENS) ,Alex Beregszaszi (EWASM/ 以太坊基金会 ) ,Casey Detrio (EWASM/ 以太坊基金会 ) ,Nick Savers ( 社区 ) 和 Greg Colvin ( 前以太坊基金会成员 )。


[译者注:据官网信息,截止 2022 年 8 月 30 日,最新的 EIP 编辑成员包括 Alex Beregszaszi (@axic),Gavin John (@Pandapip1),Greg Colvin (@gcolvin),Matt Garnett (@lightclient) 和 Sam Wilson (@SamWilsn)]


一般而言,EIP 只要格式正确且内容合理,就会进入“草稿”阶段。我想说的是,哪怕 EIP 的内容是关于如何制作花生酱三明治,只要它创建遵循 EIP-1 里的规范,它基本能顺利进入“草稿”阶段。为了鼓励社区通过协作来构建和实现提案,我们有意模糊 EIP 获得共识并被宣布为“最终”状态的过程规范。EIP 不处于“最终”状态,并不意味着 EIP 中定义的标准不能在项目中使用。事实上,这才是 EIP 获得认可和验证的正确途径。


2020 年 1 月, EIPIP (EIP Improvement Process) 组织成立了。它的目标是聚集社区成员在每两周一次的在线视频会议或是论坛里(如 Fellowship of Ethereum Magicians forum),共同制定 EIP 的改进计划。会议都会被录制并上传到 youtube。改进目标会包括如何吸引新的 EIP 编辑和编辑工作引导优化。EIP 流程的提效等也是改进内容之一。


Fellowship of Ethereum Magicians


The Fellowship of Ethereum Magicians (FEM) 于 2018 年 2 月,由以太坊基金会社区联络员 James Pitts 和“以太坊的甘道夫”Greg Colvin 创立。它的使命是“培养社区在技术方向和规范上的共识”。有些人将 FEM 形容为以太坊上的 IEEE,但它其实是更去中心化,更以社区为导向的。它的在线论坛是讨论 EIP 和以太坊技术标准的主要阵地。FEM 在大多数以太坊的重要事件中都会组织聚会,聚会里还会形成“rings”工作组。所有社区成员都能创建一个“ring”,并组织志愿者来解决被“ring”工作组识别的问题。你可以在 FEM forum 看到“ring”的列表。( 译者注:IEEE 指电气和电子工程师协会,是一个国际性的电子技术与信息科学工程师的协会,是目前全球最大的非营利性专业技术学会,其会员人数超过 40 万人,遍布 160 多个国家。)


以太坊核心开发者会议 



从 2015 年下半年开始,以太坊联合创始人 Gavin Wood 创建了 AllCoreDevs Gitter 频道,主要聚集了 以太坊核心开发者。当时,只有少数几个客户端的以太坊核心开发者参加。最初的几次开发者会议是由 Martin Becze 组织。2015-2016 年,以太坊基金会的公关 / 社区协调负责人 George Hallam 也协助组织了部分会议。2016 年 10 月,我接管了组织、主持和做会议纪要的工作。2019 年,Lane Rettig (SpaceMesh) 加入,协助安排会议和纪要工作。今天,其他人如 Tim Beiko 和 James Hancock,正在协助会议的直播和主持。目前, Ethereum Cat Herders 资助着 ACD 的会议纪要工作。( 译者注:目前由 Tim Beiko 主持 ACD 会议 )


ACD 是技术会议,旨在将对决策协议方向发挥主导作用的以太坊团队聚集在一起。以太坊的客户端和研究团队,会负责项目更新,并讨论各种核心 EIP 以改进协议。


与会人包括参与低层级协议开发的开发者,客户端开发者和核心以太坊研究员。一般来说,每一个以太坊客户端都有代表参加,以及 Layer 1 研究 / 扩容团队的核心成员。对某个领域有建树的非核心开发者,也会受邀参与特定内容的探讨。双周会是在周五举行,在 youtube 上会在线直播并录制。你可以在该链接查看会议议程、纪要和相关录屏。也可以在该链接查看未来会议安排。( 译者注:现已改为每两周四进行 ACD 会议 )


ACD 是以太坊治理流程上的首要信条。正是在 ACD 会议上,决定了网络升级背后的细节和以太坊 1.0 技术栈的改进计划。我们尽可能地推进决策在以太坊社区达成大致的共识,但是避免使用投票的方法,因为我们是纯技术会议,设计文档、规范和实操更有助于争议解决和论点支撑。


Ethereum Cat Herders



以太坊生态非常缺乏组织建设和项目管理,所以我、Lane Rettig (SpaceMesh) 和 Afri Schoedon (former Parity) 在 2019 年 1 月创办了 The Ethereum Cat Herders (ECH) ,“我们的目标是用最少的规则限制来解决问题,以推动以太坊更自由的向前发展”。最初,ECH 通过资助 ACD 会议上的记录工作来提供帮助,也在以太坊核心开发者要求的 ProgPoW 审计里,承担着组织和筹款的重要工作。最近,ECH 已经帮助很多组织为即将到来的网络升级(硬分叉)做准备,包括 Istanbul 和 Muir Glacier。随着升级将近,ECH 联系了交易所、矿工和基础设施供应商,向他们提供带有升级说明及相关信息的博客文章。ECH 会在官方 Medium 上每周更新一次,最近还发布了一篇介绍他们过去一年成就的文章。


网络升级



网络升级内容的决策


在协议建设的早期,以太坊客户端和规范的变更,会在 15 人核心开发者小组内得到高效决策。因为他们是仅有的专家,所以这种方式是可行的。Vitalik Buterin 和 Gavin Wood 此时更像是仁慈的独裁者。许多早期项目也是如此运作,这并无大碍,事实上,需要快速发展的项目正需要这种模式。


但以太坊的发展逐渐迎来了挑战。重大决策要花更长的时间来辩论,参与的人也开始增加。好处在于,要更改如此重要的技术,我们需要更多贡献者参与以及更加严谨的态度。以太坊没有像其他链一样建立链上治理机制,在客户端 / 协议级别上的升级,其最终决策由核心开发者来决定。有人批判以太坊太技术官僚,但这并不是它的全貌。有很多细微差异确实让以太坊的决策流程更高效。


在我的视角里,以太坊的核心开发者都是利他主义的,在考虑网络升级应包含什么内容的时候,他们尽最大努力在倾听社区的声音。当然,这完全是基于我个人视角,在判断处境的时候,我可能属于天真的乐观主义者。我们当前体系的替代方案,如链上治理机制,对我来说完全没吸引力,因为它们通常会导致财阀统治。我们无法找到完美的去中心化决策机制,但随着时间推移,以太坊及其治理流程定会日渐成熟。


改善流程机制


任何有改进网络想法的开发者都能提交 EIP。在 2019 年底之前,EIP 流程很混乱,一个 idea 很难推进到协议层并得到完整实现。当一个 EIP 被创建后,它会进入以下某个步骤。步骤如下(没有特定顺序):


  • EIP 在 ACD 会议外被讨论

  • 在 ACD 会议上针对 EIP 进行讨论

  • 决定实施 EIP

  • 引发更多讨论

  • 创建测试用例

  • 在客户端实现代码


有时候,如果 EIP 的影响微不足道且无争议,那它从被提出到推出实现的速度会很快。

更多时候,EIP 会经历数月的讨论,才会推出实现,然后引发更多讨论,然后才开始测试,然后再回到讨论环节,最后才能被纳入到网络升级中。与没有代码仅有想法的阶段相比,在客户端中实现能让 EIP 获得更多曝光和认可。若不涉及紧急情况,网络升级一般会批量实施一组 EIP。稍候有张图片展示了我描述的过程。


2019 年,有更多围绕网络升级的决策流程改进意见。我们意识到,网络升级发生的频率会很低,计划好的截止期限常常被忽视,我们也缺乏人力来统筹围绕计划和执行硬分叉的所有任务。所以在 2019 年底,詹姆斯·汉考克 (James Hancock) 被聘请为硬分叉的协调员,他负责彻底改进决策机制,确保我们能按计划执行任务。经过数次不同策略的迭代之后,形成了现在“以 EIP 为中心” 的网络升级模式。与其在没有固定操作步骤下四处摸索,盲目加速 EIP 进程,倒不如让 EIP 经历一系列易于理解的步骤,并根据目标时间来安排网络升级。虽然这将导致更频繁的网络升级,但我们正在优化与生态参与者的沟通流程,这有助于减轻频繁升级带来的负面影响。



上图显示了新版 EIP 推进流程,最终步骤是主网上线 ( 图片由 James Hancock 提供 )。我们在 2019 年底开始推进部分环节,在发现哪些是行之有效以后,我们在 2020 年计划继续推进,并持续迭代和完善。


传播网络的升级


网络升级的协调,有更困难,也有更容易之处。当以太坊规模还很小、客户端很少、名声小的时候,支持以太坊的旷工、交易所和基础设施服务商能很容易通过 Skype 和 IRC 上的几个公共聊天频道,或者被认为有明确真实信息源 ( 现在仍然认为 )——以太坊官方博客,来了解网络升级和安全漏洞信息。


当前,官方博客仍是提供生态系统和网络升级最新公告的重要渠道,但以太坊基金会内外部都在共同努力,让以太坊官方博客不再作为主要信息源。ECH 一直在输出网络升级公告的博文。将这类职责从以太坊基金会过渡给社区,对以太坊的未来十分重要。


随着以太坊逐步成长和进化,关于重要升级和安全信息公告的传播渠道也要做相应的提升。在 2015 到 2018 年间,生态的核心参与者主要依赖博客和聊天软件来获取相关信息。那些年,我曾是负责对外公布这类消息的 4 位成员之一。在此期间,为了和重要的生态参与者进行沟通,我们会同时打开约 15 个来自 Skype,Slack 和 Gitter 的聊天窗口,手动发送以太坊客户端的最新版本安装信息,以确保他们的系统安全和更新及时。直到 ECH 在 2019 年成立后,我们开始将工作转交给其他 10 多位小伙伴,由他们负责联系旷工、交易所和基础设施服务方。这是为了职责分散化,防止少数人滥用权力而必须采取的方式。


路在脚下


总结而言: 尽管以太坊基金会和 Vitalik 这样有名无实的领袖,对以太坊的早期发展起到关键作用,但火炬正在向社区传递,以使得以太坊的治理过程更加去中心化。


随着以太坊生态的成长,其决策流程已非常成熟。我们还有很长的路要走,但作为已成立了 5 年的社区,我相信我们在务实方面做到位了,也意识到,完美的决策和协调系统是不可能在一夜之间被建立起来的。



特别感谢 ECN 社区翻译志愿者 @Flicka 对本文的翻译贡献。


友情链接:http://linktr.ee/2dao3



点击“阅读原文”获取文章内部链接!

原文链接:https://hudsonjameson.com/2020-03-23-ethereum-protocol-development-governance-and-network-upgrade-coordination/


ECN 的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及 ETH 中文站。若需长期转载,请联系 eth@ecn.co 进行授权。


【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

来源链接

相关Wiki

相关标签