智能合约
所有链上合约将在 TGE (代币生成事件)(2027年第一至第二季度)部署。在 TGE 之前,本页面为前瞻性规范。
合约套件
| 合约 | 网络 | 用途 |
|---|---|---|
POP_Jetton | TON | $POP 代币(TEP-74 Jetton 标准) |
POP_Vesting | TON | 按桶归属包装器,强制实施 Cliff (悬崖期) + 线性释放 |
Round_Merkle_Registry | TON | 存储每轮 Merkle Root (默克尔根),支持证明验证 |
Dispute_Resolver | TON | 24小时争议窗口,有效挑战时削减操作者 |
Treasury | TON | DAO 控制的资金发放 |
Governance | TON | 二次投票 + 声誉加权提案系统 |
Burn_Address | TON | 接收来自费用销毁的 $POP;可验证不可花费 |
Ad_Settlement_Verifier | TON | 用于零知识证明广告观看的 Groth16 验证器(第二阶段) |
$POP Jetton 规范
- 标准:TEP-74(TON Jetton)
- 元数据:TEP-64 链上元数据
- 名称:CashPop
- 符号:$POP
- 小数位数:9(与 TON 惯例一致)
- 总供应量:10,000,000,000 × 10^9 = 10^19 基本单位
- 可增发:否(部署时已封顶)
- 可销毁:是(任何持有者均可,无需特权)
- 可升级:否(Jetton 本身不可变;包装器可能演进)
Vesting (归属) 合约逻辑
每个分配桶获得自己的 POP_Vesting 实例。每个实例的参数:
beneficiary:允许领取的地址total_amount:锁定的 Jetton 总量cliff_end:在此时间戳之前不允许领取linear_end:在此时间戳时可领取 100%claimed:已领取的累计数量
在时间 t 时可释放的数量:
releasable(t) =
if t < cliff_end: 0
elif t >= linear_end: total_amount
else: total_amount * (t - cliff_end) / (linear_end - cliff_end)减去已领取数量。任何条件下均不支持提前解锁。
Round (回合) Merkle Registry (默克尔注册表)
Round Engine (回合引擎) 为每轮提交一个 32 字节的 Merkle Root (默克尔根),每 24 小时批量打包为一次 TON 交易:
struct RoundBatch {
uint64 batch_id;
bytes32[] round_roots; // 每批最多 1,440 个根(60秒 × 1440 = 24小时)
uint64 first_round_id;
}任何用户均可提交:
- Round ID
r - Merkle 证明路径
p - 声明的结果
(参与者, Commit (提交), Reveal (揭示), 权重)
合约将 Merkle 证明与链上根进行验证。若有效,则结果被认可;若无效,用户可发起争议。
Dispute Resolver (争议解决器)
有效争议发生时:
- 该轮被标记为无效。
- 操作者从质押金中削减 1,000 $POP 至 Treasury (金库)。
- 受影响的用户从该轮 Prize Pool (奖池) 中获得退款。
- 该轮根据规范 Engine 日志重新结算。
Governance (治理) 合约
三个合约:
Proposal_Registry:存储提案,跟踪生命周期。Vote_Tallying:二次投票计票,结合声誉权重。Execution_Module:执行通过的提案(参数变更、Treasury 资金发放)。
详见 Governance (治理) 了解完整生命周期。
审计计划
- 内部审查:持续进行,由协议团队 + 外部顾问执行。
- 外部审计 1:目标为 Trail of Bits,2026 年第三季度。
- 外部审计 2:目标为 OtterSec,2026 年第四季度。
- 漏洞赏金:在 TGE 时启动,Treasury 分配每项关键发现最高 $500K。
合约在未完成两次独立外部审计之前不会部署至主网。