Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

质押模块

x/staking 模块控制 Stable 上的验证者参与和委托。它的预编译使得这些操作可以通过 Solidity 调用,因此合约可以在不离开 EVM 的情况下委托 STABLE、在解绑期后解除委托、在验证者之间重新委托或查询验证者状态。

它暴露了什么

  • 创建验证者:注册一个带有描述、佣金率和初始自我委托的新验证者。
  • 编辑验证者:更新验证者元数据和佣金参数。
  • 委托:将 STABLE 质押给验证者。
  • 解除委托:开始从验证者解除绑定(代币在解绑期后可用)。
  • 重新委托:在不解绑的情况下在验证者之间移动质押。
  • 取消解绑委托:在解绑期完成之前撤销正在进行的解绑。
  • 查询方法:读取验证者集、委托记录、解绑记录和参数。

授权语义

预编译执行两次检查:

  1. 绑定面额(质押代币)必须在链初始化时注册。在 Stable 上,这是 STABLE 代币。
  2. 调用者必须与正在修改状态的验证者或委托人匹配。您不能通过直接调用预编译来代表他人委托。

解绑完成

当解绑期结束时,代币变为流动性,但 SDK 会悄悄处理,EVM 看不到直接事件。Stable 的系统交易机制弥合了这一点:一旦解绑清除,协议会通过 StableSystem 预编译发出 UnbondingCompleted 事件,因此 dApp 可以通过标准 EVM 日志订阅。

何时使用它

  • 质押协议从保管库合约管理委托:在用户存入和取出时调用 delegateundelegate
  • 治理仪表板需要实时验证者集:使用查询方法。
  • 重质押或流动质押产品跟踪解绑完成:订阅 UnbondingCompleted 事件,参考跟踪解绑完成

ABI 的查找位置

完整的方法签名、结构定义和发出的事件在质押预编译参考中。

下一步去哪里

  • 质押预编译参考:调用 delegateundelegateredelegate 并读取验证者状态。
  • 系统交易:了解解绑完成如何以事件形式到达 EVM。
  • 分发模块:提取从此处管理的委托中获得的奖励。