这篇文章是「一起回顾 ETH Denver」活动的第一篇,根据Pooja Ranjan(EthCatHerders 创始人)在 ETHDenver 的主题《Evolving Ethereum With Improvement Proposals》 分享进行的整理,@Chloe 和我们分享了这期视频的主要内容和观点,如果你对 EIP 协议改进提案的一些分享感兴趣的话,enjoy your reading!
ETH Denver 活动仍在持续进行中,欢迎报名。
#1 主要内容
协议流程
EIP(Ethereum Improvement Proposal)是以太坊改进提案,社区针对以太坊底层协议和应用层标准的改进都可以通过提交提案实现
以太坊改进协议的整体架构
元协议[1]:围绕以太坊的流程进行改进的协议,需要以太坊社区共同遵守,达成社区共识
信息类协议[2]:非标准改进协议,只是提出通用指南或设计意见,社区可选择性遵守
标准协议:是以太坊最活跃、使用最多的协议,其中又包括核心协议、网络协议、接口协议和 ERC 协议
协议提交流程
主要流程:想法(idea) - 初稿(draft) - 编辑审阅(review) - 最终征求意见(last call) - 完结(final)
任何人都可以向 EIP/ERC/RIP Github Repo 提交改进提案 PR,并通过初步审阅进入初稿(draft)阶段
编辑审阅(review)将会参考社区针对新提案的意见和讨论
最终征求意见(last call)一般持续 14 天,若其中协议没有任何其他修改将进入 Final 阶段。有些作者可能会在此时撤回(withdraw)则协议将不会进入 Final。
如协议提案在 6 个月内没有被推进,将会被 EIP 机器人自动归类为停滞(stagnant)
Living 是 EIP 的一种特殊状态,该类提案会一直更新,永远不会达到 Final 阶段,如 EIP 1、EIP 5069
协议近期的一些变化和演进
EIP 7329[3]:EIP、ERC Repo 分仓
由于 EIP 主要针对以太坊底层协议(涉及主网升级如 EIP-4844 等),而 ERC 主要针对应用层改进(如 ERC-20、ERC-721 等),在审阅、评判标准和流程都差距较大,因此 2023 年 10 月正式进行了 repo 分仓
新增 RIP Repo:
RIP 全称 Rollup Improvement Proposal,主要是针对 rollup 的提案,未来该类协议也将会部署在主网因此属于核心协议
目前以太坊协议整体的架构和对应 Repo
#2 协议治理
协议的命名数字由来
最初:EIP/ ERC 的命名数字主要来自提交的 PR/issue 的随机数字,但后来有人为了获得一些 “吉利数字” 开始 spam github,以期待自己的 EIP/ ERC 能获得更多关注
目前:改为采用顺序分配命名数字
EIP 5069:EIP 编辑手册
Call for input: editors are called to give input/ feedback, window 30 days
协议工作组
底层协议相关 EIP:由核心开发者管理,每周四会进行执行层或共识层会议进行讨论
应用层相关 ERC:由 ERC 和钱包工作组管理,分别会有 ERC 和钱包相关的定期会议进行讨论
Rollup 相关 RIP:由 Rollup 工作组管理,定期会有 Rollup 相关会议进行讨论
升级
2024-26 年重要的以太坊主网升级
坎昆 - Deneb: 2024 年 3 月已完成升级
布拉格 - Electra: 预期 2024-25 年升级
大阪 - F Star: 预期 2025-26 年升级
每次升级相关的元协议
EIP 7569[4] 坎昆 - Deneb 升级:最终包括了 9 个 EIP
EIP 7600[5] 布拉格 - Electra:目前已包括、正在考虑包括的相关 EIP
EIP 7607[6] 大阪 - F Star:潜在考虑包括的 EIP,预期 Verkle/ Stateless 相关是升级的重点
#3 重要链接
核心开发者会议(ACD meetings):Issues · ethereum/pm · GitHub[7]
每周四都会举行核心开发者会,执行层和共识层轮流开会
EthR&D discord:Eth R&D[8]
核心开发者主要讨论的地点
EthResearch 论坛:https://ethresear.ch/
针对以太坊前沿研究的讨论
以太坊魔术师论坛:https://ethereum-magicians.org/
针对所有协议(EIP、ERC、RIP)相关的讨论
参考资料
元协议: https://eips.ethereum.org/meta
信息类协议: https://eips.ethereum.org/informational
EIP 7329: https://eips.ethereum.org/EIPS/eip-7329
EIP 7569: https://eips.ethereum.org/EIPS/eip-7569
EIP 7600: https://eips.ethereum.org/EIPS/eip-7600
EIP 7607: https://eips.ethereum.org/EIPS/eip-7607
Issues · ethereum/pm · GitHub: https://github.com/ethereum/pm/issues
Eth R&D: https://discord.com/invite/mgaRKYyn