工程開發
foundry avatar

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
在 GitHub 查看