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日 下午08:54