Builder Guide
应用发布与部署
发布新应用意味着部署新 logic、通过全局门控,并由用户自行启用。
2 个章节release-and-deployment
01
应用实现要求
- 为所有持久状态使用唯一 ERC-7201 命名空间。
- 假设通过 delegatecall 执行:address(this) 是钱包,存储与余额属于钱包。
- 需要 owner 权限的操作使用 only-self 或 ERC-1271 验证,不能信任任意 msg.sender。
- 不要重复实现 app allowlist、账户签名或长期 Token allowance 系统。
- 对外部调用、资产转移、重放、过期与重入建立明确约束。
02
上线流程
步骤 1
测试
在 Foundry 中覆盖真实 Runtime delegatecall、资产 Pull、签名和失败路径。
步骤 2
确定性部署
使用 Safe singleton factory + CREATE2 的统一部署脚本,保持多链同地址。
步骤 3
Registry 允许
owner 调用 setAppStatus(logic, true)。启用时 Registry 会验证合约代码存在。
步骤 4
同步元数据
更新 packages/deployments、ABI、前端 ENV_CONFIG 与文档。
步骤 5
下线旧版
需要时对旧 logic 调用 setAppStatus(oldLogic, false)。用户必须自行启用新地址。