foundry
CMTAT RuleEngine 合约的 Foundry 开发指南,包含测试、部署脚本以及专案特定的 Solidity 模式。
简介
此技能提供使用 Foundry 开发框架与 CMTAT RuleEngine 存储库交互的专业指南。适用于区块链开发人员、安全审计员以及使用证券型代币框架、ERC-3643 合规性及转账限制逻辑的智能合约工程师。开发人员可利用此指南优化在扩展 RuleEngineBase 合约、编写 RBAC 或 Ownable 变体单元测试,以及执行多链部署时的工作流程。
-
Foundry 测试套件:使用 .t.sol 文件、HelperContract 工具以及如 test_RevertWhen_ 的描述性命名规范,确保专案一致性。
-
部署脚本:提供自动化合约部署模板,处理生产环境变量,并透过 vm.createSelectFork 使用 fork 模拟管理多链情境。
-
安全性与断言:详细说明 Foundry 欺骗代码(cheatcodes)的使用,如 vm.prank、vm.expectRevert 和 vm.expectEmit,并配合检查状态转换与存取控制角色(如 DEFAULT_ADMIN_ROLE 与 MINTER_ROLE)的专用断言。
-
架构整合:提供关于 CMTAT 相容性、ERC-1404 限制代码,以及多租户环境(多个代币共享单一合规控制器)下 RuleEngine 设定的背景资讯。
-
输入:此技能预期使用者操作标准 Foundry 指令 (forge test, forge script),并假设对 Solidity 0.8.x 及 EVM 存储模式具备基础认知。
-
输出:提供可直接使用的单元测试 Solidity 样板、包含 broadcast/verify 步骤的部署逻辑,以及针对 Gas 消耗或规则冲突的排错模式。
-
约束:使用者必须注意存储库的「现状」(as-is) 状态、过多规则迭代对 Gas 成本的影响,以及在修改核心模组时同时测试 RBAC 与 Ownable/Ownable2Step 变体的要求。
-
实用建议:始终使用既定的助手合约 (HelperContract 或 HelperContractOwnable) 以维持测试间的状态相容性,并确保限制代码在自订规则集中保持唯一,以避免使用者体验混乱。
仓库统计
- Star 数
- 6
- Fork 数
- 7
- Open Issue 数
- 0
- 主要语言
- Solidity
- 默认分支
- main
- 同步状态
- 空闲
- 最近同步时间
- 2026年5月3日 20:54