总结
ProofForge 不应把所有链都当成同一种 backend。工程划分见 RFC 0002(工程细节以该 RFC 为准)。| 族 | 代表 target | 模式 |
|---|---|---|
| 直接编译 | evm | Lean → LCNF → Yul → solc |
| Wasm host | wasm-near, wasm-cosmwasm | Lean → EmitZig → Wasm + host bridge |
| 二进制工具链 | solana-sbpf-linker | Lean → EmitZig → bitcode → sbpf-linker |
| 源码生成 | move-aptos, move-sui | Portable IR → Move package |
工程文档索引
| 主题 | 文档 |
|---|---|
| 架构愿景 | RFC 0001 |
| Target / pipeline / artifact | RFC 0002 |
| Portable IR | portable-ir.md、RFC 0003 |
| Capability id | capability-registry.md |
| Counter 跨链场景 | shared-scenario.md |
| 任务拆分 | implementation-backlog.md |
| Target 研究笔记 | targets/ |
Target id(canonical)
与 RFC 0002 一致:evmwasm-near,wasm-cosmwasmsolana-sbpf-linker(主路线),solana-zig-fork(fallback)move-aptos(Move POC 优先),move-sui(后续)wasm-polkadot/ ink! — 仅 research,未进 registry
近期里程碑
与 implementation-backlog.md 对齐:M1:目标注册 + IR + metadata(Phase 1)
TargetProfile概念落地- portable-ir.md Counter 可走通
- EVM build 生成
proof-forge-artifact.json - capability-registry.md 与文档一致
M2:并行 spike — CosmWasm + Solana(Phase 2)
Phase 1 完成后并行,不固定先后:- CosmWasm Counter:
cosmwasm-check+ instantiate/execute/query - Solana Counter:stock Zig + sbpf-linker + Mollusk/validator
M3:Move Aptos POC(Phase 3)
- 从 IR 生成 Aptos counter package
aptos move compile/test通过- Sui object POC 作为独立 follow-up
M4:跨 target 场景硬化 + CI matrix
- 多 target shared scenario 测试
- 可选 CI job 不阻塞 base build
当前判断
优先顺序见 decisions.md:- EVM metadata 和 target profile
- Portable IR + Counter shared scenario
- CosmWasm 与 Solana 并行 spike
- Aptos Move sourcegen
- 云平台等至少两个 target 达到 Experimental
风险(摘要)
完整列表见 可行性分析 和 RFC 0002 Open Engineering Risks:- sBPF 上 Lean runtime 体积与 loader 约束
- CosmWasm 需要更紧的 no-WASI runtime
- Move 需要真实 resource/object 模型,不能只做字符串模板
- Portable IR 不能太 EVM 化,也不能过度抽象失去可用性
参考
- 英文文档入口:INDEX.md
- Review 清单:review-checklist.md