Skip to main content
状态:草案规范 (Phase 1) 用于目标 profile、制品元数据和编译时拒绝的规范能力 id。语义含义与 RFC 0002 中的矩阵保持一致。 图例:Y 已支持(计划中或已实现),P 部分支持/仅限 spike,N 不支持, 不适用。

与目标 id 的关系

  • 目标 id 记录在 docs/decisions.md 中,并由 docs/rfcs/0002-target-implementation-design.md 汇总。
  • 此注册表拥有能力 id,而非目标生命周期阶段。
  • 文档不得为相同的语义发明替代 id。

与 Contract Intent 和 Target Extension 的关系

capability id 是 target selection 之后使用的下层协议,不是默认面向用户的 SDK。portable contract 通常应调用链中立的 Contract Intent API。所选 target adapter 会把这些 intent 解析为 capability plan,然后在降级前检查本注册表。 Target Extension SDK 可以暴露 Solana PDA/CPI/runtime allocator 配置、Move resource 或 UTXO covenant primitive 等目标特定操作。这些 extension 仍通过 capability id 和 target metadata 路由,使诊断、制品元数据和跨 target 支持检查保持统一。

核心能力

Solana 列反映规范的 solana-sbpf-asm 路线(D-026):直接生成 sBPF assembly。Solana 使用 crosscall.cpi(不是 crosscall.invoke)和 storage.pda,这些按 D-027 保持为 Solana 特定能力。

Id 命名规则

  • 格式:<domain>.<operation><domain>.<variant>(小写,点分隔)。
  • 领域:storage, caller, value, events, crosscall, env, control, data, crypto, assertions, account, runtime, zk
  • 制品元数据列出了构建所使用的 id(参见 RFC 0002 制品 schema)。
  • 诊断信息在拒绝时必须引用能力 id 和目标 id。

尚未注册的候选能力

这些候选项仅用于目标研究。在目标 profile 和 lowering 规则被接受前,不要将它们加入 ProofForge.Target.Capability

Kaspa Toccata

参见 Kaspa Toccata 目标 zk.circuit 仍保留给主制品是电路或电路导向源包的目标。Toccata 可以使用证明,但它的 base target 是 Kaspa covenant package。

Stellar Soroban

参见 Stellar Soroban 目标 大部分 Soroban 行为可以先从现有 Wasm-host 能力集开始,但若干目标语义还没有被当前 registry 覆盖。

Internet Computer

参见 Internet Computer 目标 ICP canister 与 Wasm-host 家族有重叠,但在添加 target profile 前,需要显式表达若干 canister 语义。

Algorand AVM

参见 Algorand AVM 目标 Algorand 与通用合约能力有部分重叠,但 AVM programs、storage classes、transaction groups 和 explicit resource references 在添加 target profile 前需要显式表达。

Cardano Plutus/Aiken

参见 Cardano Plutus/Aiken 目标 Cardano 与 UTXO covenant 目标有重叠,但 eUTXO validator roles、datum、redeemer、script context、execution units 和 Plutus blueprint metadata 在添加 target profile 前需要显式表达。

Tezos Michelson/LIGO

参见 Tezos Michelson/LIGO 目标 Tezos 与通用 contract storage 和 entrypoints 有部分重叠,但 Michelson typed data、operation-list effects、views、events、tickets 和 gas/storage-burn 语义需要在添加 target profile 前显式表达。

Starknet Cairo

参见 Starknet Cairo 目标 Starknet 与 contract storage、events 和 calls 有部分重叠,但 Cairo/Sierra/CASM artifacts、class hashes、account abstraction、syscalls 和 L1/L2 messaging 在添加 target profile 前需要显式表达。

Aleo Leo

参见 Aleo Leo 目标docs/zh/superpowers/specs/2026-07-01-aleo-leo-design.zh.md Aleo 与 source-generation 和 ZK 目标有重叠,但它的 contract model 有明确的 proof/finalization split。private execution 生成 transitions 和 proofs;public finalization 在链上更新 mappings 或 storage。Records、program ids、imports、 Aleo Instructions、Aleo VM bytecode、ABI、prover/verifier artifacts、fees 和 devnet validation 在添加 target profile 前需要显式表达。

规范能力(Road 1 spike)

以下能力已被第一个 aleo-leo spike 接受,并在设计规格中文档化。在 spike 成功前, 它们不会被加入 ProofForge.Target.Capability

研究候选能力(未来 spike)

以下能力仍作为候选,直到 private records、transitions、proofs、imports、deployment 或 devnet validation 被纳入范围。 现有 zk.circuit capability 不足以描述 Aleo。它可以描述 proof surface 的一部分, 但 Aleo 还需要 program、transaction、state-record、finalization 和 artifact 能力。

TON TVM

参见 TON TVM 目标 TON 与通用合约能力有部分重叠,但 TVM cells、messages 和 actions 在添加 target profile 前需要显式表达。

Bitcoin Script/Miniscript

参见 Bitcoin Script/Miniscript 目标 Bitcoin 与 UTXO script targets 有重叠,但 base-layer Script 更适合建模为 spending policy,而不是 general contract execution。Miniscript、descriptors、Taproot/Tapscript、PSBT flows、standardness 和 weight/fee checks 在添加 target profile 前需要显式表达。 Bitcoin 应在语义匹配时复用已有 UTXO candidate ids,包括 storage.utxoscript.p2shscript.unlockertimelock.locktimesignature.checksigtx.builder

Zcash Shielded

参见 Zcash Shielded 目标 Zcash 与 Bitcoin-derived UTXO flows 有重叠,但它的 shielded pools 不是普通 Bitcoin Script,也不是 generic ZK circuit target。Sapling/Orchard notes、 nullifiers、commitment tree anchors、value-balance constraints、viewing-key disclosure 和 protocol-defined proofs 在添加 target profile 前需要显式表达。 Zcash 在 transparent flows 中应在语义匹配时复用已有 UTXO candidate ids,包括 storage.utxotx.buildersignature.checksigfee.weight。现有 zk.circuit capability 不是普通 Zcash shielded transfer 的第一抽象;它只适合 未来在 Zcash 共识证明系统之外做辅助 proof-program work。

Bitcoin Cash CashScript

参见 Bitcoin Cash CashScript 目标 BCH/CashScript 与 UTXO covenant 目标有重叠,但 CashVM、transaction introspection、CashTokens 和 transaction-builder 语义在添加 target profile 前需要显式表达。

EVM 映射 (基准)

目前通过 ProofForge.Evm / Lean.Evm 实现 —— 参见 targets/evm.md

Phase 1 验收标准

  • 此表中的每个 id 至少出现在一个目标的 TargetProfile.capabilities 中。
  • EVM Counter 构建在制品元数据中列出 storage.scalar(以及其他使用的 id)。
  • 在 EVM 上尝试 storage.pda 会失败并显示 capability unsupported 诊断信息。
  • 当 RFC 0002 语义矩阵发生变化时,注册表保持同步。

更新日志