-
Notifications
You must be signed in to change notification settings - Fork 23
Consolidate chain-specific deployment parameters #503
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
cd96c07
to
64e6875
Compare
- Add ChainConfig library as single source of truth for chain parameters - Remove hardcoded values from deployment scripts - Support automatic L2 Gas Calculator deployment for OP Stack chains - Add comprehensive documentation for chain configuration system - Redirect Arbitrum deployments to dedicated branches - Rename gas calculator script to reflect OP Stack support Implements #502
64e6875
to
1dd3668
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
General direction with the lib looks good. But we definitely need to support Arbitrum natively in Atlas v1.6.2, and should not direct anyone to v1.7-exp because its not ready yet (and unclear if we'll finalize those changes or drop them)
- Add native support for Arbitrum mainnet (42161) and Sepolia (421614) - Remove references to v1.7-exp branch (not ready for use) - Update deploy-gas-calculator-arbitrum.s.sol to properly deploy ArbitrumGasCalculator - Update deploy-atlas.s.sol to handle both OP Stack and Arbitrum gas calculators - Update requiresL2GasCalculator to include Arbitrum chains - Update documentation to reflect native Arbitrum support Addresses review feedback
eb37e4c
to
1b00ba7
Compare
- Ethereum: Reduced escrow from 768s to 120s (10 blocks × 12s) - Berachain: Updated block time from 5s to 2s (15 blocks × 2s = 30s) - Hyperliquid: Kept at 1s block time (30 blocks × 1s = 30s) - OP Stack (Optimism/Base): Updated to 200ms flashblocks (150 blocks × 200ms = 30s) - Unichain: Kept at 1s block time as confirmed (30 blocks × 1s = 30s) All escrow durations now target ~30 seconds consistently
55a181b
to
57a5ce3
Compare
Hyperliquid info is still wrong. I'm pretty sure its not 1s blocks |
} else if (chainId == 999) { | ||
// Hyperliquid | ||
return ChainParameters({ | ||
escrowDuration: 30, // ~1 second * 30 blocks = 30 seconds |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be larger. See how fast blocks are added here: https://app.hyperliquid.xyz/explorer definitely not 1s
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think its just the Hyperliquid info that needs to change. Otherwise lgtm
Summary
ChainConfig
library to manage chain parameters centrallyChanges
New ChainConfig Library
src/contracts/libraries/ChainConfig.sol
as the central repository for chain parametersDeployment Script Updates
deploy-atlas.s.sol
to use ChainConfig and auto-deploy L2 Gas Calculator when neededdeploy-base.s.sol
to fetch parameters from ChainConfigdeploy-gas-calculator-base.s.sol
todeploy-gas-calculator-op-stack.s.sol
for broader OP Stack supportdeploy-gas-calculator-arbitrum.s.sol
to properly deploy ArbitrumGasCalculatordeploy-atlas-hyperliquid.s.sol
(unified deployment now handles all chains)L2 Gas Calculator Auto-Deployment
Documentation
docs/CHAIN_CONFIG.md
documenting the new systemSupported Chains
Testing