- Archived multiple non-EVM adapters (Algorand, Hedera, Tron, TON, Cosmos, Solana) and compliance contracts (IndyVerifier) to `archive/solidity/contracts/`. - Updated documentation to reflect the historical status of archived components. - Adjusted `foundry.toml` and `README.md` for clarity on historical dependencies and configurations. - Enhanced Makefile and package.json scripts for improved contract testing and building processes. - Removed obsolete contracts (AlltraCustomBridge, CommodityCCIPBridge, ISO4217WCCIPBridge, VaultBridgeAdapter) from the main directory. - Updated implementation reports to indicate archived status for various components.
1.4 KiB
1.4 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. UsesMockMintableTokenfor a minimal GRU token in tests. - Build: Default Foundry config (
via_ir = true,optimizer_runs = 200) builds successfully. Yul stack-too-deep was resolved by:- Moving EIP-712 hashing and signature recovery into
DBIS_EIP712Helper(and optional historicalDBIS_EIP712Lib, now archived atarchive/solidity/contracts/dbis/DBIS_EIP712Lib.sol). - Extracting the mint loop in
DBIS_GRU_MintController.mintFromAuthorizationinto_mintToRecipientsto reduce stack depth. - Using
StablecoinReferenceRegistry._setEntryfor struct assignment andSignerRegistry.hasDuplicateSigners/areSignersActiveAtBlockto keep router loops out of the main path.
- Moving EIP-712 hashing and signature recovery into
- Deploy: Run
DeployDBISRail.s.solon Chain 138; deployDBIS_EIP712Helperfirst and pass its address to bothDBIS_SettlementRouterandDBIS_ConversionRouterconstructors; then set GRU token on MintController, grant MINTER_ROLE on c* tokens to MintController, register stablecoins, and add venues/quote issuers as needed.