Intent撮合1.0
好,我按你这版结构,给你收敛成一个可以直接丢给团队看的 v0 方案,尽量短、清晰、可落地。
0. 方案目标(一句话)
在不改 EVM 的前提下,用链下 MoveVM 做 Intent 撮合和结构治理,
用 Flux 当 gas、Power 当生命上限,只做一件事:
在正确的结构依赖 D 下,安全地帮用户把资产/任务转到目标。
1. 核心组件
1.1 对象 & 身份(Object & ID)
- 所有东西都抽象成 Object:
- 用户、Agent、项目、资金池、模型、任务…
- 用户、Agent、项目、资金池、模型、任务…
- 每个 Object 有一个唯一 ID(可以是 EVM 地址 + 类型哈希)。
1.2 Dependence 图 D(结构真相)
- 维护一张图:D_true(X, Y) ∈ [-1, 1]
- 表示 “X 结构上依赖 Y 的强度”
- 表示 “X 结构上依赖 Y 的强度”
- 例子:
- D_true(ProjectFund, ProjectContract) ≈ 0.6
- D_true(USDCFundingPool, Milestone1Result) ≈ 0.8
- 冲突状态:D_true(StateA, StateB) = -1
- D_true(ProjectFund, ProjectContract) ≈ 0.6
- **治理目标:**不让实际 Intent/Settlement 行为违背 D_true。
1.3 Power(生命上限)
- 每个 ID 一生最多 21,000,000 Power
- 链下 MoveVM 维护 PowerAccount:
- 已解锁 / 已消耗
- 已解锁 / 已消耗
- 用途:
- 发 Intent / 接单前需要有足够已解锁 Power
- 结构破坏 / 作恶时烧 Power
- H(对齐度)高 → 每周期解锁 Power 多;H 低 → 解锁减少甚至停掉
- 发 Intent / 接单前需要有足够已解锁 Power
Power = 这个 ID 在系统里的“生命能级 + 信任额度”。
1.4 Flux(gas)
- Flux 只当 执行成本(gas),可以仅在 MoveVM 内部记账:
- 发 Intent:扣少量 Flux
- 校验 / 撮合 / 结算计算:消耗 Flux
- PoCW 证明真实工作时:奖励 Flux
- 垃圾 Intent / 违规行为:烧 Flux
- 发 Intent:扣少量 Flux
- 谁想频繁动(大量 Intent / 撮合),就得持续有 Flux。
1.5 Intent(极简结构)
Intent {
user: ID // 谁发的
transfer: (Object, amount) // 要“转动”的东西(资金 / 任务 / 权限…)
target: Object // 转给谁 / 作用在哪个对象上
cond: CondID // 在什么条件下允许执行(可验证)
goal: GoalFn // 想达到的数值目标(如 ≥5 USD 等价BTC)
d_min: float // 最低结构一致性要求,例如 0.3
expiry: time // 过期时间
nonce: uint // 防重放
}
心智模型:
Intent = Transfer + Cond + Goal + D_min
= 在某条件下,把某个对象按结构约束 D_min,转到目标上,并达到一个可验证的结果。
2. 架构分层
2.1 EVM 层(资产 & 结算)
- 所有真实资产在 EVM/L2:
- USDC / ETH / WBTC / NFT …
- USDC / ETH / WBTC / NFT …
- 部署一个 Settlement 合约:
- 接收链下 MoveVM 打包的 SettlementAction
- 验证签名/权限
- 调 transferFrom / DEX / 其他协议
- 确保资金安全
- 接收链下 MoveVM 打包的 SettlementAction
- 用户在 EVM 只做两件事:
- approve 资产给 Settlement
- 用钱包对 Intent 做 EIP-712 离线签名
- approve 资产给 Settlement
2.2 链下 MoveVM 层(Intent 撮合 + 结构治理)
MoveVM 里一组 Move 模块维护状态:
- IntentPool:未完成的 Intent
- DependenceGraph:D_true 图
- PowerAccount / FluxAccount / HAccount
- Orderbook:按 (asset, target) 分市场的 Intent 订单簿
- PoCW:记录每个 Worker 的工作量
MoveVM 负责:
- 验签(off-chain)
- 扣 user 的 Power / Flux(开 Intent 成本)
- 检查 D_true(transfer.object, target) ≥ d_min
- 校验 cond、goal 的合法性与可验证性
- 将 Intent 放入对应 (asset→target) 市场的订单簿
- 撮合 Need / Offer Intent,确定对手方、执行路径、数量
- 生成 SettlementAction(在 EVM 上应执行什么)
- 根据 PoCW 给 Worker 发 Flux,更新 H 和未来 Power 解锁速率
3. 标准流水线示例
以例子 Intent:
“用 3 USDC 换成至少 5 USD 价值的 BTC,在滑点 <1% 下。”
Step 0:EVM 端准备
- 用户在 EVM 上:
- approve(USDC, Settlement, 3e6)
- approve(USDC, Settlement, 3e6)
- 前端生成 Intent,并让用户用钱包签名(EIP-712):
Intent {
user: 0xUser
transfer: (USDC, 3e6)
target: BTCPoolObject
cond: cond_slippage_lt_1_percent
goal: value_in_USD >= 5e6
d_min: 0.3
expiry: T
nonce: N
}
Step 1:MoveVM 接收 & 校验
- 验签
- 扣 PowerAccount[user] 一小笔(例如 10 Power)
- 扣 FluxAccount[user] 一笔 gas(例如 1 Flux)
- 从 DependenceGraph 检查:
- D_true(USDC, BTCPoolObject) ≥ 0.3
- 否则拒绝 Intent,烧部分 Flux
- D_true(USDC, BTCPoolObject) ≥ 0.3
- 通过 → 把 Intent 放入 (USDC→BTC) 市场订单簿
Step 2:MoveVM 撮合
- 找到满足 cond + goal 的对手盘或流动性 Offer
- 计算执行路径(例如 EVM 上 Uniswap 的 Swap 路径)
- 确定在当前价格下可以达到 value ≥ 5 USD 的 BTC
- 记录这次撮合由哪个 Worker 完成(PoCW)
生成结算动作:
SettlementAction {
chain: Ethereum,
from: 0xUser,
asset: USDC,
amount: 3e6,
call: {
to: UniswapRouter,
data: swapExactTokensForTokens(
3e6,
minOut = BTC_worth_5USD,
path = [USDC, WETH, WBTC]
)
}
}
Step 3:EVM Settlement 执行
- 某个 Matcher 把 SettlementAction 打包成交易:Settlement.execute(action)
- 合约里:
- 检查:
- user 对 USDC 的 allowance 足够
- 调用者/执行者是白名单 / 多签认可 / 或通过后期 Rollup 证明
- user 对 USDC 的 allowance 足够
- transferFrom(0xUser, Settlement, 3e6)
- 调用 UniswapRouter,按给定参数 swap
- 把得到的 WBTC/BTC 发回给 0xUser
- 检查:
Step 4:MoveVM 结算后记账
- 结算成功:
- 标记该 Intent 已完成
- 对完成撮合的 Worker 发 Flux(基于 PoCW + H)
- user 这次行为结构对齐 → H(user) 增加一点 → 下个周期 Power 解锁更快
- 标记该 Intent 已完成
- 若结算失败或检测到作弊 / 结构破坏:
- 额外烧 user 或 Worker 的 Flux
- 降低 H
- 严重时烧 Power
- 额外烧 user 或 Worker 的 Flux
4. 三行“总核”文案(可以直接对外讲)
- Intent 极简:
Intent = Transfer + Cond + Goal + D_min,
任何复杂操作都变成“在某条件下,把某对象按结构约束转到目标并达到可验证结果”。 - Flux & Power:
Flux 是执行/验证/撮合的 gas,
PoCW 产生 Flux,违规会烧 Flux;
Power 是每个 ID 的生命能级上限,H 越高解锁越快,越不对齐越被锁死。 - MoveVM × EVM 分工:
链下 MoveVM 做大脑:Intent 撮合 + 结构治理;
EVM 做钱袋:资产安全结算;
两边通过 SettlementAction 对接。
这个就是一套收敛后的整体设计方案 v0,
已经可以直接丢给技术/产品去分解:
- Move 侧:需要哪些模块
- EVM 侧:Settlement 合约接口
- 前端:Intent 结构 & 签名流程。