feat: expand non-evm relay and route planning support

This commit is contained in:
defiQUG
2026-04-18 12:05:34 -07:00
parent da78073104
commit 843cdbf71c
113 changed files with 8542 additions and 222 deletions

View File

@@ -637,10 +637,16 @@ contract DODOPMMIntegration is AccessControl, ReentrancyGuard {
require(IDODOPMMPool(pool)._BASE_TOKEN_() == expectedBaseToken, "DODOPMMIntegration: unexpected base token");
require(IDODOPMMPool(pool)._QUOTE_TOKEN_() == expectedQuoteToken, "DODOPMMIntegration: unexpected quote token");
IDODOPMMPool(pool).getVaultReserve();
IDODOPMMPool(pool).getMidPrice();
(uint256 baseReserve, uint256 quoteReserve) = IDODOPMMPool(pool).getVaultReserve();
IDODOPMMPool(pool)._BASE_RESERVE_();
IDODOPMMPool(pool)._QUOTE_RESERVE_();
// Freshly created pools have zero reserves until the first buyShares/addLiquidity call.
// Skip getMidPrice on empty pools because some DODO deployments revert during PMM math
// before the initial seed has established target reserves.
if (baseReserve > 0 && quoteReserve > 0) {
IDODOPMMPool(pool).getMidPrice();
}
}
function _setStandardPoolSurface(

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,13 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
/// @notice Recovered verbatim Wave 1 runtime family artifact.
/// @dev Generated by scripts/verify/recover-wave1-pool-source-families.py from live chain bytecode.
contract RecoveredWave1PoolFamily668 {
constructor() {
bytes memory runtime = hex"604060808152600436101561001357600080fd5b6000803560e01c918263199ab5fe14610227578263217a4b701461012857826336223ce9146102005782634a248d2a1461014f5782634c85b425146101c95782636bdb678a146101ac578263796da7af146100dc5782637d721504146101065782639da771f414610175578263ab44a7a314610192578263bbf5ce7814610175578263c55dae631461014f578263d4b9704614610128578263d7a2e4c914610123578263dfdf2a7214610106578263ec2fd46d146100e157505063ee27c689146100dc57600080fd5b610248565b34610102578160031936011261010257602090516706f05b59d3b200008152f35b5080fd5b346101025781600319360112610102576020906002549051908152f35b610227565b3461010257816003193601126101025760015490516001600160a01b039091168152602090f35b34610102578160031936011261010257905490516001600160a01b039091168152602090f35b346101025781600319360112610102576020906003549051908152f35b346101025781600319360112610102576020905160038152f35b346101025781600319360112610102576020906004549051908152f35b34610102576020366003190112610102576004356001600160a01b0381160361010257606091815191818352816020840152820152f35b90346102245780600319360112610224575060025460035482519182526020820152f35b80fd5b3461024357602036600319011261024357602060405160008152f35b600080fd5b34610243576000366003190112610243576020600454604051908152f3fea2646970667358221220ced0ca29ab61872de6b0da1d116f43badd5e311e57c167714eeca3094a72269d64736f6c63430008140033";
assembly {
return(add(runtime, 0x20), mload(runtime))
}
}
}