- Added MINTER_ROLE constant to manage minting permissions. - Updated mint function to restrict access to addresses with MINTER_ROLE, enhancing security and compliance. - Granted MINTER_ROLE to the initial owner during contract deployment.
1.1 KiB
1.1 KiB
DBIS Rail — Build notes
- Contracts: All DBIS Rail contracts (RootRegistry, ParticipantRegistry, SignerRegistry, SettlementRouter, GRU_MintController, StablecoinReferenceRegistry, Conversion Router) are in this folder and implement Technical Spec v1 and v1.5 add-ons.
- Tests:
test/dbis/DBIS_Rail.t.solcovers submitMintAuth success, replay revert, and signer-revoked-at-block. - Build: With default Foundry config (
via_ir = true,optimizer_runs = 200) the compiler may report a Yul stack-too-deep error. If so:- Try
FOUNDRY_PROFILE=lite forge test --match-path "test/dbis/*.t.sol"(note: lite usesvia_ir = false, which can cause Solidity “Stack too deep” in other units). - Or reduce complexity in the heaviest functions (e.g. further split
submitMintAuth/submitSwapAuthor reduce locals in SignerRegistry) until the default profile builds.
- Try
- Deploy: Run
DeployDBISRail.s.solon Chain 138; then set GRU token on MintController, grant MINTER_ROLE on c* tokens to MintController, register stablecoins, and add venues/quote issuers as needed.