热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

波卡的新版治理OpenGov是什么,它又是如何运作的呢?(上)

“波卡知识图谱”是我们针对波卡从零到一的入门级文章,我们尝试从波卡最基础的部分讲起,为大家提供全方位了解波卡的内容,当然这是一项巨大的工程,也充满了挑战,然而我们希望通过这样的努力让大家能够正确认知波


波卡知识图谱是我们针对波卡从零到一的入门级文章,我们尝试从波卡最基础的部分讲起,为大家提供全方位了解波卡的内容,当然这是一项巨大的工程,也充满了挑战,然而我们希望通过这样的努力让大家能够正确认知波卡,也让不了解波卡的人方便快速掌握波卡相关知识,今天是该栏目的第 75 期,为了能让波卡以去中心化的方式更好地持续发展,波卡正在不断改进其治理机制,而最新上线的波卡治理 v2 又叫 OpenGov,将会为波卡的治理带来全新的活力。


波卡作为推进链上治理的区块链项目,其设立的国库、议会、公投等治理机制一直走在行业的前沿,而随着第一个版本的治理机制运行一段时间后,也发现了此前的治理存在诸多问题。


对此,波卡将会持续改进自己的治理机制使得波卡能够以去中心化的方式更好地持续发展。对此,近期波卡迎来了一次治理机制的更新,推出了新版治理 OpenGov。


Polkadot 使用一种复杂的治理机制,使其能够根据其集合的利益相关者的最终要求优雅地发展。既定目标是确保大多数质押者始终可以控制网络


本文档内容可能会发生变化。治理协议已经经历了几次迭代(v1 和 v2),在规划中有更多变化(v2.5)。


波卡的第一个去中心化治理系统(v1)由三个主要组件组成。

  1. 技术委员会——管理升级时间表的技术委员会。

  2. 理事会——一个经过投票批准、选举产生的执行“政府”,负责管理参数、管理和支出提案。

  3. Referenda(公投)——对其他所有事物的普遍投票系统,奖励具有更大影响力的长期利益相关者。


该系统在运行的头几年运行良好,有助于确保适当使用国库资金并能够及时升级和修复。


与大多数早期技术一样,系统和协议必须随着它们的成熟而发展,以改进它们的缺点并跟上现代进步。


例如,在治理 v1(Governance v1)中,所有公投都具有相同的权重,因为一次只能对一个公投进行投票,并且投票期可以持续数周。

这导致系统倾向于仔细考虑极少数提案,而不是广泛考虑许多提案。


因此,OpenGov(也称为治理 v2,即 Governance v2)就应运而生了!


OpenGov 改变了日常决策的实际方法,使公投的影响范围更广更灵活,从而显著增加系统能够做出的集体决策的数量。


OpenGov 在 Kusama 上启动。一旦在 Kusama 上经过严格测试,将提出将其部署在波卡上的建议。


以下内容将首先介绍波卡网络上的许多核心治理原则。


了解治理 v1 的根源对于更好地理解第二次迭代的方向很重要。这些差异和区别将在各个子主题中突显出来。


话虽这么说,但重要的是要记住,治理是在其生命周期的这个阶段不断发展的协议。随着治理 v2 的更新进入网络,治理 v2.5 的计划已经在制定中。



前提


在高层次上,该网络汇集了各种新颖的机制,包括存储在链上并以平台中立的中间语言(即 WebAssembly)定义的无定形状态转换函数,以及多种链上投票机制。


例如具有自适应超级多数阈值的公投和批量批准投票。对协议的所有更改都必须通过质押加权公投来达成一致。



机制


在治理 v1 中,活跃的通证持有者和议会共同管理网络升级决策

无论该提案是由公众(通证持有者)提出还是由议会提出,最终都必须经过全民公投,让所有持有者以质押和信念值(conviction)为权重,做出决定。


为更好地了解议会的组成方式,请阅读本节
(https://wiki.polkadot.network/docs/learn-gov2#council)


治理 v2 有几个变化。新治理模式反映其去中心化特征的方式是:
  1. 通过民主投票将议会的所有责任转移给通证持有者。

  2. 解散现任议会集体。

  3. 允许用户以更多方式将投票权委托给社区成员。


治理 v1 中的议会履行了其作为被动通证持有者代表、国库监护者和立法发起者的角色,但通常被视为一个中心化实体。


为了进一步去中心化波卡和 Kusama 网络,OpenGov 提议将议会的职责交还给社区。




公投



公投是简单包容基于股权的投票方案。每个公投都有一个与之相关的特定提案。


该提案采用 Runtime 特权函数调用的形式(包括最强大的调用:set_code,它可以切换 runtime 的整个代码,实现原本需要“硬分叉”的功能)。


公投是具有固定投票期的非连续事件。在投票周期结束并统计投票结果时,如果投票通过,则调用函数(set_code)。


公投总是二元的;你在投票时的唯一选择是“赞成(aye)”、“反对(nay)”或完全弃权。


在治理 v1 中,公投可以通过以下几种方式之一启动:
  1. 公开提交的提案;
  2. 议会以多数票或一致通过的提案;
  3. 作为先前全民投票颁布的一部分提交的提案;
  4. 由技术委员会提交并经议会批准的紧急提案。


所有公投都有与之相关的公投通过延迟(enactment delay)。这是从公投结束到假设提案获得批准、正在实施的更改之间的时间段。


如果公投被关闭和统计,则公投被视为已完成。同样,假设该提案获得批准,它将被安排颁布。如果公投正在等待结果,即被表决,则公投被认为是未完成的。


如果提案是由公众或议会提交的,则有 28 天的固定颁布延迟期。作为先前全民投票颁布的一部分提交的提案可以根据需要设置颁布延迟期。


紧急提案处理与网络相关的主要问题时,需要被“快速跟踪(fast-tracked)”,从而缩短立法时间。


在 OpenGov 中,任何人都可以在任何时候开始公投而且他们可以根据自己的意愿进行多次公投


引入了几个新功能,称为 Origin 和 Track,以帮助处理全民投票协议的流程。


Origin 可以被认为是给定特权级别的丰富描述符(a rich descriptor)。公投的提议者现在要根据提案的要求为他们的请求选择一个合适的 Origin。


每个 Origin 都与一个公投类别相关联,每个类别都与一个 Track 相关联。该 Track 概述了提案的生命周期,并且独立于其他类别的 Track。


拥有独立的 Track 允许网络根据其隐含的特权级别来调整公投的动态。


因此,例如,Runtime 升级(set_code 调用)对生态系统的影响与国库 Tip(reportAwesome 调用)的批准不同。


因此需要不同的 Origin,其中不同的投票率、批准、押金(deposit)和最短制定期将在 Pallet 上预先确定。




提议公投



1

公众公投(Public Referenda)

任何人都可以通过在一定时期内(区块数)存入最低数量的通证来提议公投。如果有人同意该提议,他们可以存入相同数量的通证以表示支持。

此操作称为公开支持(endorsing)。获得最高绑定质押数支持的提案将被选为下一个投票周期的公投。


请注意,这可能与公开支持(endorsing)的绝对数量不同;例如,三个账户每个绑定 20 个 DOT 将“超过”十个账户每个绑定一个 DOT。


一旦提案被提交(即进行投票)绑定的通证将被释放


对于治理 v1,提案队列中最多可以有 100 个公众提案。在 OpenGov 中,当最初创建公投时,社区可以立即对其进行投票。


但是,它并没有处于可以结束或以其他方式计算其选票、获得批准和即决颁布的状态。


相反,公投必须满足一些标准,然后才能进入称为决定中(Deciding)的状态。在他们处于这种状态之前,他们仍然犹豫不决。


进入 Decided 状态的标准如下:
  1. 一个引导期。概述了在决定中(Deciding)可以开始之前必须经过的时间量。这有助于减少“突然决定”的可能性,在这种情况下,控制大量投票权的攻击者可能会在提议后立即通过提案,而不是让全体投票人口有足够的时间来考虑和参与。
  2. 必须有决定的余地。所有 Track 都对可以同时决定的全民投票数量进行了限制。具有更强大能力的 Track 将具有更低的限制。例如,根(Root)级别的 Origin 有一个限制,这意味着一次只能决定一个超级危险的提议。
  3. 必须支付决定押金(Decision Deposit)。创建公投的成本很低,因为押金价值仅包含跟踪它所需的链上存储所需的价值。但是,对公投进行审查和决定有可能会耗尽公投队列中有限的席位。有一个更大的,但可退还的押金要求,以帮助减少垃圾邮件是有意义的。



2

议会公投(v1)

全体一致的议会公投:当议会的所有成员都同意一项提案时,可以将其移至公投。


此次公投将产生负的投票率偏差(即,质押投票的数量越少,通过所需的数量就越少——参见自适应群体偏差

https://wiki.polkadot.network/docs/learn-gov2#adaptive-quorum-biasing)。


多数投票率的议会公投:当只有简单多数议会成员同意时,也可以对公投进行投票,但它将是多数票(51%)获胜。


在任何给定时间只能进行一次有效的公投,除非还有正在进行的紧急公投。


3

投票时间表

在治理 v1 中,假设其中一个队列中至少有一个提案,每 28 天就会进行一次新的公投。


议会批准的提案有一个队列,公开提交的提案也有一个队列。将在两个队列中排名靠前的提案之间轮流进行全民投票


排名“最上面”的提案由其背后绑定的质押数量决定。


如果当前队列选择尝试创建没有提案的公投(它是空的)并且提案正在另一个队列中等待,则另一个队列中的最上面的提案将成为公投。


不能在同一时期对多项公投进行表决,紧急公投除外。


与常规公投(公共公投或议会提议的公投)同时发生的紧急公投是唯一能够同时对多项公投进行投票的情况。


当提案获得批准时,治理 v2 共享相同的 28 天资格期。如果在此期间结束时未获得批准,则该提案将自动被拒绝。


4

公投投票(治理 v2)

在治理 v2 中,如果提案满足批准(Approval)和支持(Support)的要求,则该提案将获得批准,从而消除了自适应群体偏差系统


批准(Approval)被定义为批准投票权重(在信念值调整后)占总投票权重(批准和拒绝)的份额。


支持(Support)是批准的总票数(忽略信念值的任何调整)与系统中可能进行的总票数的比较。


它必须在确认期的最短时间内满足此标准。不同的 Track 有不同的确认期和批准和支持要求。


现在可以配置其通过所需的支持数量和总体批准。


对于使用较低特权来源的提案,与使用高特权类别(例如 Root. 具有较大治理意义的类别可以尽早要求更高的批准,以避免争议。


在 OpenGov 中, 28 天后未获批准的提案将被视为默认拒绝,并退还决策押金。


如果提案设法在确认期结束之前保持通过,则视为已获批准,并计划在通过期之后从提议的来源开始执行。


通过期在全民投票提议时指定,但也受制于基于 Track 的最小值。


更强大的 Track 会强制执行更长的执行期,以确保网络有足够的时间为提案可能带来的任何变化做准备。


5

自愿锁定(Voluntary Locking)

波卡使用了一个概念 Voluntary Locking,允许通证持有者通过声明他们愿意锁定通证多长时间来增加他们的投票权


因此,每个通证持有者的投票数将使用以下公式计算:

votes = tokens * conviction_multiplier


conviction multiplier 每当锁定期的数值增加一倍时,投票乘数就会增加一个。


锁定期“加倍”的最大次数设置为 6(因此总共 32 个锁定期),一个锁定期等于 28 天。只允许加倍;例如,您不能锁定 24 个周期并使您的信念值增加 5.5。


有关治理事件时间表的更多信息,请查看波卡参数页面上的治理部分 

https://wiki.polkadot.network/docs/maintain-polkadot-parameters#governance。



通证被锁定后,您仍然可以使用它进行投票和质押;您只被禁止将这些通证转移到另一个账户户。


选票总是在同一时间“计算”,即在投票期结束时。这不受通证锁定期的影响。


自适应群体偏差在治理 v2 中使用的时间更长,并被 Approval/Support 系统所取代。


本文重点介绍了新版治理 OpenGov 的公投部分,关于 OpenGov 之后的更多设定我们将在下一篇科普中为大家补充说明。




波卡网络蓬勃发展,生态项目层出不穷,波卡生态研究院聚焦波卡生态动向,把握当前趋势。回复【日报】,获取波卡生态每日最新消息汇总







欢迎大家加入我们 Polkadot 生态研究院的电报:

https://t.me/polkadot_eri

欢迎大家访问波卡生态研究院的 Mirror 地址:
https://mirror.xyz/0x9A259b3a2316281Cc948cE2Cf1Ac610a79844f05




精选文章



智能合约 | 经济模型 | Slash | 通货膨胀 | NPoS | Web3 基金
Staking
| Gavin Wood | 跨链 | 平行链 | 国库 | Parity
KSM | Web3.0 | Kusama | Grant 指南
Statemint | 区块链 | SBP 计划 | NFT
XCVM | BEEFY | XCM
Wasm



 



推荐阅读
  • BZOJ1233 干草堆单调队列优化DP
    本文介绍了一个关于干草堆摆放的问题,通过使用单调队列来优化DP算法,求解最多可以叠几层干草堆。具体的解题思路和转移方程在文章中进行了详细说明,并给出了相应的代码示例。 ... [详细]
  • AstridDAO 专访:波卡稳定币黑马 BAI
    加入Pol ... [详细]
  • 波卡上最新的 Staking 介绍(下)
    波卡上最新的 Staking 介绍(下) ... [详细]
  • 本文介绍了如何使用PHP向系统日历中添加事件的方法,通过使用PHP技术可以实现自动添加事件的功能,从而实现全局通知系统和迅速记录工具的自动化。同时还提到了系统exchange自带的日历具有同步感的特点,以及使用web技术实现自动添加事件的优势。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • 李逍遥寻找仙药的迷阵之旅
    本文讲述了少年李逍遥为了救治婶婶的病情,前往仙灵岛寻找仙药的故事。他需要穿越一个由M×N个方格组成的迷阵,有些方格内有怪物,有些方格是安全的。李逍遥需要避开有怪物的方格,并经过最少的方格,找到仙药。在寻找的过程中,他还会遇到神秘人物。本文提供了一个迷阵样例及李逍遥找到仙药的路线。 ... [详细]
  • STL迭代器的种类及其功能介绍
    本文介绍了标准模板库(STL)定义的五种迭代器的种类和功能。通过图表展示了这几种迭代器之间的关系,并详细描述了各个迭代器的功能和使用方法。其中,输入迭代器用于从容器中读取元素,输出迭代器用于向容器中写入元素,正向迭代器是输入迭代器和输出迭代器的组合。本文的目的是帮助读者更好地理解STL迭代器的使用方法和特点。 ... [详细]
  • 范式转移:构建超级应用——胖应用 + 胖协议
    范式转移:构建超级应用——胖应用 + 胖协议 ... [详细]
  • Flow 生态案例学习 | Emerald City为Flow上DAO、教育和开发铺平道路
    原文链接:https://www.onflow.org/post/emer ... [详细]
author-avatar
密歇根的闪闪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有