一种EIP流程改进思路:从RFC和W3C流程借鉴

编者按:本文来自以太坊爱好者,作者:AlexBeregszaszi,翻译&校对:闵敏&阿剑,Odaily星球日报经授权转载。一句话总结:首先,我会总的介绍一下EIP流程及其在2019年的调整。然后,我会提出新的EIP流程,其灵感主要源于RFC和W3C流程。自2016年以来,我一直在参与EIP。我最初是一名贡献者,之后参与「AllCoreDev流程」并承担编辑任务。现行流程

当前的EIP库中包含两种迥异流程:规范全网推行EIP-1和EIP233定义了这两种流程的部分内容。之后,EIP-2378又在此基础上进行了扩展。在2019年,有人提议了几处修改,其中与提案状态相关的有4处:引入「Review」状态将「Accepted」重命名为「Ready」引入「Abandoned」状态移除「Deferred」状态引入前两个变更的动机相似,但是略有不同。「Review」状态是一个全新的阶段,在这个阶段,提案并不急着实施,虽然已经有清晰的提案、可以接受更广泛的审查。「Ready」状态只是一个小小的增量变化,语气相比「Accepted」更加柔和,但是仍保留EIP-1中的硬分叉流程。引入「Abandoned」状态是为了清理很多被放弃的草案。显然,过去未使用的「Withdrawn」状态已经被移除。由于EIP-233和EIP-2378发生了更改,「Deferred」状态已渐渐变得不合时宜,已经被移除。还有人提议移除其它关于硬分叉的状态,例如,「Accepted」和「Rejected」。请注意,我不会详细解释下图中每个状态的含义。请阅读EIP-1以了解每个极端情况。不过,下文的‘提议流程’会给出合理的解释。」2019年6月,我们就已经深入讨论过EIP流程的复杂性。如果考虑到每个状态,则整个EIP流程如下图所示:

金色相对论 | 张弢:比特币是一种虚拟资产已经形成了共识:在今日举行的《危机向左,信仰向右》的比特币减半特辑之资本篇的直播中,针对“减半后比特币的通胀率将小于很多国家央行的通胀目标,各位嘉宾怎么看这次的比特币减半”的问题,海创链创始人CEO张弢表示,减半这个事今年已经听太多了,几大主流公链从1月就开始减,减到现在也就不太热了,目前全球经济形势下,各国货币都在超发,比特币不但不超发而且还减产,还在为了通缩而努力,更进一步说明它就不是货币。比特币是一种虚拟资产这个事已经共识了,对于资产的投资,很简单的原理,就是我们都学过微观经济学供需平衡原理,供大于求就是买方市场卖方竞相抛售,价格承下降趋势,供小于求就是卖方市场价格承上升趋势。值不值得投资就预测一下身边有多少人要买吧。个人觉得牛不牛跟减半的关系不大。还是跟供需市场有关系,有多少购买意愿+有多少购买能力才是关键。[2020/5/14]

比特币安全专家:拉丁美洲居民主要将比特币作为一种储蓄手段:比特币安全专家Andreas Antonopoulos表示,许多拉丁美洲国家居民,为应对不良的金融基础设施和货币贬值的影响,现在正转向比特币来保护自己的财富。过去,委内瑞拉和哥伦比亚等国的居民依靠美元储蓄。然而,由于政府的过度干预和美元兑比索的强制转换,使得许多人转向了加密,这要归功于加密的自我主权。如今,比特币在这些领域的主要用途是保存财富,这意味着投资比特币,作为一种储蓄手段。就像过去一样,他们所有的积蓄都是美元。(ambcrypto)[2020/4/20]

当时,我自己假设EIP可以从「LastCall(最后一次征求意见)」状态转向「Abandoned」状态,虽然文档里面没有这么写。我没有提到的是,有两种流程不同的EIP,而且并非以上所有组合都是有效的。「核心」EIP的流程如下所示:

动态 | 荷兰ING银行开发出一种比特币“防弹”的隐私技术:据coindesk消息,荷兰ING银行的区块链团队正在测试一项名为“防弹”的隐私技术,该技术可隐藏比特币交易的金额。ING区块链项目全球主管Mariana表示,防弹证明的速度比其他证明大约快十倍。[2019/4/15]

这里要特别说明的是,「核心」EIP直到最近才引入「LastCall」状态。「非核心」EIP的流程如下所示:

2020年5月,我提议了一个更加简单的流程:

声音 | 诺贝尔经济学奖获得者Robert Shiller:比特币是一种社会运动:据CCN援引彭博社报道,诺贝尔经济学奖获得者,耶鲁大学教授Robert Shiller称,他观察到比特币是一种社会运动,它在美国的流行程度因地区而异,这是对新消息的非理性回应。Shiller表示,由于硅谷对比特币技术感兴趣,比特币在西海岸更受欢迎。[2018/6/27]

该提议的目的是引入「Review」状态,并移除所有协调硬分叉的尝试。这样可以统一「核心」EIP和「非核心」EIP的流程。但是,为了方便起见,我略去了协调硬分叉的部分。关于这点,我们已经进行过讨论。但是就像很多在走EIP流程的提案一样,这个提议并未得到推进。引起争论的还有是否应该将「Withdrawn」和「Abandoned」这两个状态合并的问题。在最近的议题中,这一点已经有了明确的解释。在电话会议上,还有人建议用「Living」一词来代替「Active」。前者或许不是最佳选择,但是听起来优于后者。硬分叉

我赞成将硬分叉管理和规范管理这两个过程分开。现在看来,似乎有很多人都这么认为。这样可以让流程变得更加简单流畅。根据全体核心开发者会议上的新消息,现在似乎有一个ETH1.0规范库专门追踪和管理提案,并在所谓的「YOLO」临时测试网上进行测试。我认为,即使将最后残余的硬分叉流程从EIP库中移除,EIP-233最初的构想依然是合理的:将已有的硬分叉记录到元文档中然而,人们在EIP-233的最初构想上迈开了一步,规则变成了尽快创建元文档以明确硬分叉的名称,因为不同的客户端使用不同的名称。但是在命名机制得到一致认可后,这个问题就不再是问题了。最后,EIP-233的构想再次延伸,延伸出了在计划和协调过程中追踪硬分叉的流程。幸运的是,以后这将由ETH1.0规范来处理。硬分叉发生后,所有数据都记录在「hardforkmetas」中。事实证明,hardfordmetas是一种非常有用的资源。我建议的流程

中国社会科学院原副院长李杨:比特币只是一种数字化产品:中国社会科学院原副院长、国家金融与发展实验室理事长李杨说:“比特币在我看来就不是特别符合社会发展需要,比特币肯定不是币,它是一种资产,用整个算法创造了一种人为资产,然后人们去炒。”李扬指出,作为货币,应当有一些基本特征,比如币值稳定、和商品流规模的变化一致,而比特币本身的机制是有限的,是一种技术流系。今后新商业的交易对象增加一些数字化商品,是可以的,但它只是一种数字化产品,就像游戏。[2018/4/8]

要想站在巨人的肩膀上,我们所能找到的最好资源是RFC流程和W3C流程。尽管这两个流程所涉及的规范通常比EIP大得多,但是我认为我们可以向它们取经。

这里,我从W3C流程借用了一些我个人比较喜欢的术语。不过,上图还给出了其它选择,都是现有术语或提议术语。我个人更倾向于「Candidate」这个术语。Idea任何提案在提交以前,都应该有一个深思熟虑的阶段,再提交创建草案的pullrequest。我们可以在EthereumMagicians、ethresear.ch,以及Gitter或Discord上的频道讨论和评议构想。Draft假设某个构想引起了人们的兴趣,我们就应该基于EIP模版为其创建草案。只要这个草案符合基本的语法要求,我们就应该将其合并。问题:关于编辑应有多大的审核提案的权限,人们的观点各不相同,目前还没有明确的答案。如果我们有一个良好的流程来移除不成功的EIP,那么早一点合并草案无疑是正确的做法。在这一阶段,预期会有一小群感兴趣的参与者对草案进行讨论。「Draft」状态没有时间限制,但是建议不要超过合理的时间范围。Candidate/Review一旦草案足够稳定,预期不会再进行重大修改,就应该进入这一阶段。在这个阶段,会有更多参与者提供反馈。这时,参与者有理由相信这个规范不会突然发生重大变化,因此他们更有可能投入时间来进行审核和讨论。这个阶段至少应持续45天,以便收集反馈。Proposed/LastCall一旦参与者认为这个规范已经非常稳定,不会再进行修改,就应该进入这一阶段。在这个阶段,这个规范会被推给更多参与者来征求意见。之后,这个规范就得到最终确定,无法再进行修改。这个阶段应该持续至少14天。如果需要进细微调整,可以在不改变当前状态的情况下进行,否则必须回退到「Candidate」状态。特殊要求:frontmatter中必须带有review-end-date字段。Final如果「Proposed」状态的规范成功通过,就会最终敲定下来。Withdrawn除了「Final」和「Living」之外,其它所有状态都有可能变成这个状态。特殊要求:以下几种情况可能会导致「Withdrawn」状态,但是必须带有reason字段:withdrawnbyauthor:作者在任意阶段做出了撤销决定withdrawnduetoinactivity:作者在一段特定的时间内没有任何活动。Living/Active那些作为注册表的EIP-1以及其它特殊的EIP都会被标记为这个状态,因为它们永远也不会被敲定。任何新的注册文件必须经历完整的EIP流程,然后才会变成「Living」状态。Archived虽然这不是一个状态,但是通过这种方法,可以将撤销了很久的EIP移除,以免堆满EIP库。点击此处,了解详情。Obsolete这不是一个状态,而是从RFC那里借鉴的淘汰流程。该流程会引入两个字段:obsoleted-by:包含一个将当前EIP淘汰的EIP编号obsoletes:包含一组被当前EIP淘汰的EIP编号只有在处于Final或Withdrawn状态时,当前EIP才能使用obsoleted-by字段。只有被引用EIP的「obsoleted-by」字段指向当前EIP时,当前EIP才能带有obsoletes字段。这就意味着,作为淘汰方和被淘汰方EIP的作者必须达成共识。鉴于有人提议了一个更好的淘汰流程,这一点未来可能会发生变化。Errata按照惯例,小的打字错误可由编辑修改。按理来说,任意能帮助阐明规范的修改都可以接受,只要它不至于使原提案面目全非,因为小的修改可以在Errata部分做出解释。如果需要重大修改,必须淘汰相应的EIP,并重新创建一个EIP。Remark以下frontmatter字段被移除,因为它们未经详细说明和/或使用:replacesuperseded-byresolution需要这些字段的话,可以再添加回来。以下状态被移除:AbandonedRejectedAcceptedSuperseded工具

然而,EIP面临的最大挑战是需要人力。最近,旧版本的格式校验器eip_validator已经换成了更好的版本eipv。另外,我们已经启动了一个机器人来检查过时PR的问题。虽然有了工具的辅助,编辑和审校依然需要投入大量的人力。如果我们想要让EIP流程变得更加流畅,就要使用机器人来代替真人完成大部分工作。我已经创建了一个新的议题来讨论EIP库需要引入哪些机器人。有志愿者想要一起实现机器人吗:):)

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

LTC后农耕时代,DeFi何去何从?

文|秦晓峰编辑|郝方舟出品|Odaily星球日报 「币圈一天,人间一年」,这是币圈古典韭菜总结出来的规律。但现在,似乎还应该加上一句:「DeFi一天,币圈一年」。过去半个月,DeFi市场表现宛如过山车一般大起大落.

[0:15ms0-2:173ms