├── .eslintrc.json ├── .github └── workflows │ ├── certora-arbitrum.yaml │ ├── certora-optimism.yaml │ ├── certora-polygon.yaml │ └── node.js.yml ├── .gitignore ├── .prettierignore ├── .prettierrc ├── .solcover.js ├── Dockerfile ├── LICENSE.md ├── README.md ├── audits ├── 12-08-2021_MixBytes_AaveGovernanceCrosschainBridges.pdf ├── 15-08-2022_Oxorio_AaveL2BridgeExecutors.pdf └── 26-07-2022_ChainSecurity_AaveL2BridgeExecutors.pdf ├── certora ├── .gitignore ├── Makefile ├── README.md ├── applyHarness.patch ├── harness │ ├── ArbitrumHarness.sol │ ├── DummyERC20A.sol │ ├── DummyERC20B.sol │ ├── DummyERC20Impl.sol │ ├── L2BridgeExecutorHarness.sol │ ├── OptimismHarness.sol │ ├── PolygonHarness.sol │ ├── mockTarget.sol │ └── mockTargetPoly.sol ├── munged │ ├── bridges │ │ ├── ArbitrumBridgeExecutor.sol │ │ ├── BridgeExecutorBase.sol │ │ ├── L2BridgeExecutor.sol │ │ ├── OptimismBridgeExecutor.sol │ │ └── PolygonBridgeExecutor.sol │ ├── dependencies │ │ ├── arbitrum │ │ │ ├── AddressAliasHelper.sol │ │ │ └── interfaces │ │ │ │ ├── ArbRetryableTx.sol │ │ │ │ └── IInbox.sol │ │ ├── optimism │ │ │ └── interfaces │ │ │ │ └── ICrossDomainMessenger.sol │ │ └── polygon │ │ │ ├── CustomPolygonMapping.sol │ │ │ └── fxportal │ │ │ ├── FxChild.sol │ │ │ ├── FxRoot.sol │ │ │ └── interfaces │ │ │ └── IFxMessageProcessor.sol │ └── interfaces │ │ ├── IExecutorBase.sol │ │ └── IL2BridgeExecutor.sol ├── report │ └── Formal Verification Report of AAVE L2 Bridge.pdf ├── scripts │ ├── runComplexity.sh │ ├── verifyArbitrum.sh │ ├── verifyOptimism.sh │ └── verifyPolygon.sh └── specs │ ├── Optimism_ArbitrumBridge.spec │ ├── PolygonBridge.spec │ ├── complexity.spec │ └── erc20.spec ├── contractAddresses.json ├── contracts ├── bridges │ ├── ArbitrumBridgeExecutor.sol │ ├── BridgeExecutorBase.sol │ ├── L2BridgeExecutor.sol │ ├── OptimismBridgeExecutor.sol │ └── PolygonBridgeExecutor.sol ├── dependencies │ ├── arbitrum │ │ ├── AddressAliasHelper.sol │ │ ├── interfaces │ │ │ ├── ArbRetryableTx.sol │ │ │ ├── IBridge.sol │ │ │ ├── IDelayedMessageProvider.sol │ │ │ ├── IInbox.sol │ │ │ ├── IOwnable.sol │ │ │ └── ISequencerInbox.sol │ │ └── libraries │ │ │ └── IGasRefunder.sol │ ├── optimism │ │ └── interfaces │ │ │ ├── ICrossDomainMessenger.sol │ │ │ └── IL2CrossDomainMessenger.sol │ └── polygon │ │ ├── CustomPolygonMapping.sol │ │ └── fxportal │ │ ├── FxChild.sol │ │ ├── FxRoot.sol │ │ └── interfaces │ │ └── IFxMessageProcessor.sol ├── interfaces │ ├── IExecutorBase.sol │ └── IL2BridgeExecutor.sol └── mocks │ ├── ArbGreeter.sol │ ├── Greeter.sol │ ├── GreeterPayload.sol │ ├── MockInbox.sol │ ├── MockOvmL1CrossDomainMessenger.sol │ ├── MockOvmL2CrossDomainMessenger.sol │ ├── PolygonMarketUpdate.sol │ ├── Selfdestructor.sol │ ├── SimpleBridgeExecutor.sol │ └── SimpleL2BridgeExecutor.sol ├── deploy ├── gov-bridge-arbitrum.ts ├── gov-bridge-optimism.ts └── helpers │ └── greeter.ts ├── docker-compose.yml ├── docs ├── ArbitrumBridgeArch.png ├── OptimismBridgeArch.png └── PolygonBridgeArch.png ├── example.env ├── hardhat.config.ts ├── helper-hardhat-config.ts ├── helpers ├── arbitrum-contract-getters.ts ├── arbitrum-helpers.ts ├── constants.ts ├── contract-getters.ts ├── etherscan-verification.ts ├── gov-constants.ts ├── misc-utils.ts ├── optimism-contract-getters.ts ├── polygon-helpers.ts ├── task-helpers.ts ├── test-wallets.ts ├── types.ts └── wallet-helpers.ts ├── package.json ├── tasks ├── deploy │ ├── deploy.ts │ └── deployPolygonGovernance.ts ├── governance │ ├── check-polygon.ts │ └── simulate-mumbai-governance.ts ├── l2 │ ├── arbitrum.ts │ └── optimism.ts ├── misc │ └── set-DRE.ts ├── setup │ ├── get-info.ts │ └── print-default-wallets.ts └── verify │ └── verify-template.ts ├── test ├── ArbitrumBridgeExecutor.spec.ts ├── BridgeExecutorBase.spec.ts ├── L2BridgeExecutor.spec.ts ├── OptimismBridgeExecutor.spec.ts ├── PolygonBridgeExecutor.spec.ts ├── emptyrun.coverage.ts ├── fork │ └── crosschain-bridges.spec.ts └── helpers │ ├── actions-sets-helpers.ts │ ├── executor-helpers.ts │ ├── governance-helpers.ts │ └── make-suite.ts └── tsconfig.json /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/workflows/certora-arbitrum.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.github/workflows/certora-arbitrum.yaml -------------------------------------------------------------------------------- /.github/workflows/certora-optimism.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.github/workflows/certora-optimism.yaml -------------------------------------------------------------------------------- /.github/workflows/certora-polygon.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.github/workflows/certora-polygon.yaml -------------------------------------------------------------------------------- /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.github/workflows/node.js.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | artifacts 2 | cache 3 | node_modules -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.prettierrc -------------------------------------------------------------------------------- /.solcover.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/.solcover.js -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/README.md -------------------------------------------------------------------------------- /audits/12-08-2021_MixBytes_AaveGovernanceCrosschainBridges.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/audits/12-08-2021_MixBytes_AaveGovernanceCrosschainBridges.pdf -------------------------------------------------------------------------------- /audits/15-08-2022_Oxorio_AaveL2BridgeExecutors.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/audits/15-08-2022_Oxorio_AaveL2BridgeExecutors.pdf -------------------------------------------------------------------------------- /audits/26-07-2022_ChainSecurity_AaveL2BridgeExecutors.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/audits/26-07-2022_ChainSecurity_AaveL2BridgeExecutors.pdf -------------------------------------------------------------------------------- /certora/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/.gitignore -------------------------------------------------------------------------------- /certora/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/Makefile -------------------------------------------------------------------------------- /certora/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/README.md -------------------------------------------------------------------------------- /certora/applyHarness.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/applyHarness.patch -------------------------------------------------------------------------------- /certora/harness/ArbitrumHarness.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/ArbitrumHarness.sol -------------------------------------------------------------------------------- /certora/harness/DummyERC20A.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/DummyERC20A.sol -------------------------------------------------------------------------------- /certora/harness/DummyERC20B.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/DummyERC20B.sol -------------------------------------------------------------------------------- /certora/harness/DummyERC20Impl.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/DummyERC20Impl.sol -------------------------------------------------------------------------------- /certora/harness/L2BridgeExecutorHarness.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/L2BridgeExecutorHarness.sol -------------------------------------------------------------------------------- /certora/harness/OptimismHarness.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/OptimismHarness.sol -------------------------------------------------------------------------------- /certora/harness/PolygonHarness.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/PolygonHarness.sol -------------------------------------------------------------------------------- /certora/harness/mockTarget.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/mockTarget.sol -------------------------------------------------------------------------------- /certora/harness/mockTargetPoly.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/harness/mockTargetPoly.sol -------------------------------------------------------------------------------- /certora/munged/bridges/ArbitrumBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/bridges/ArbitrumBridgeExecutor.sol -------------------------------------------------------------------------------- /certora/munged/bridges/BridgeExecutorBase.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/bridges/BridgeExecutorBase.sol -------------------------------------------------------------------------------- /certora/munged/bridges/L2BridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/bridges/L2BridgeExecutor.sol -------------------------------------------------------------------------------- /certora/munged/bridges/OptimismBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/bridges/OptimismBridgeExecutor.sol -------------------------------------------------------------------------------- /certora/munged/bridges/PolygonBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/bridges/PolygonBridgeExecutor.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/arbitrum/AddressAliasHelper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/arbitrum/AddressAliasHelper.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/arbitrum/interfaces/ArbRetryableTx.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/arbitrum/interfaces/ArbRetryableTx.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/arbitrum/interfaces/IInbox.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/arbitrum/interfaces/IInbox.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/optimism/interfaces/ICrossDomainMessenger.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/optimism/interfaces/ICrossDomainMessenger.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/polygon/CustomPolygonMapping.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/polygon/CustomPolygonMapping.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/polygon/fxportal/FxChild.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/polygon/fxportal/FxChild.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/polygon/fxportal/FxRoot.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/polygon/fxportal/FxRoot.sol -------------------------------------------------------------------------------- /certora/munged/dependencies/polygon/fxportal/interfaces/IFxMessageProcessor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/dependencies/polygon/fxportal/interfaces/IFxMessageProcessor.sol -------------------------------------------------------------------------------- /certora/munged/interfaces/IExecutorBase.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/interfaces/IExecutorBase.sol -------------------------------------------------------------------------------- /certora/munged/interfaces/IL2BridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/munged/interfaces/IL2BridgeExecutor.sol -------------------------------------------------------------------------------- /certora/report/Formal Verification Report of AAVE L2 Bridge.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/report/Formal Verification Report of AAVE L2 Bridge.pdf -------------------------------------------------------------------------------- /certora/scripts/runComplexity.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/scripts/runComplexity.sh -------------------------------------------------------------------------------- /certora/scripts/verifyArbitrum.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/scripts/verifyArbitrum.sh -------------------------------------------------------------------------------- /certora/scripts/verifyOptimism.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/scripts/verifyOptimism.sh -------------------------------------------------------------------------------- /certora/scripts/verifyPolygon.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/scripts/verifyPolygon.sh -------------------------------------------------------------------------------- /certora/specs/Optimism_ArbitrumBridge.spec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/specs/Optimism_ArbitrumBridge.spec -------------------------------------------------------------------------------- /certora/specs/PolygonBridge.spec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/specs/PolygonBridge.spec -------------------------------------------------------------------------------- /certora/specs/complexity.spec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/specs/complexity.spec -------------------------------------------------------------------------------- /certora/specs/erc20.spec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/certora/specs/erc20.spec -------------------------------------------------------------------------------- /contractAddresses.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contractAddresses.json -------------------------------------------------------------------------------- /contracts/bridges/ArbitrumBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/bridges/ArbitrumBridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/bridges/BridgeExecutorBase.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/bridges/BridgeExecutorBase.sol -------------------------------------------------------------------------------- /contracts/bridges/L2BridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/bridges/L2BridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/bridges/OptimismBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/bridges/OptimismBridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/bridges/PolygonBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/bridges/PolygonBridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/AddressAliasHelper.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/AddressAliasHelper.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/ArbRetryableTx.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/ArbRetryableTx.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/IBridge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/IBridge.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/IDelayedMessageProvider.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/IDelayedMessageProvider.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/IInbox.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/IInbox.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/IOwnable.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/IOwnable.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/interfaces/ISequencerInbox.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/interfaces/ISequencerInbox.sol -------------------------------------------------------------------------------- /contracts/dependencies/arbitrum/libraries/IGasRefunder.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/arbitrum/libraries/IGasRefunder.sol -------------------------------------------------------------------------------- /contracts/dependencies/optimism/interfaces/ICrossDomainMessenger.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/optimism/interfaces/ICrossDomainMessenger.sol -------------------------------------------------------------------------------- /contracts/dependencies/optimism/interfaces/IL2CrossDomainMessenger.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/optimism/interfaces/IL2CrossDomainMessenger.sol -------------------------------------------------------------------------------- /contracts/dependencies/polygon/CustomPolygonMapping.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/polygon/CustomPolygonMapping.sol -------------------------------------------------------------------------------- /contracts/dependencies/polygon/fxportal/FxChild.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/polygon/fxportal/FxChild.sol -------------------------------------------------------------------------------- /contracts/dependencies/polygon/fxportal/FxRoot.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/polygon/fxportal/FxRoot.sol -------------------------------------------------------------------------------- /contracts/dependencies/polygon/fxportal/interfaces/IFxMessageProcessor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/dependencies/polygon/fxportal/interfaces/IFxMessageProcessor.sol -------------------------------------------------------------------------------- /contracts/interfaces/IExecutorBase.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/interfaces/IExecutorBase.sol -------------------------------------------------------------------------------- /contracts/interfaces/IL2BridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/interfaces/IL2BridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/mocks/ArbGreeter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/ArbGreeter.sol -------------------------------------------------------------------------------- /contracts/mocks/Greeter.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/Greeter.sol -------------------------------------------------------------------------------- /contracts/mocks/GreeterPayload.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/GreeterPayload.sol -------------------------------------------------------------------------------- /contracts/mocks/MockInbox.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/MockInbox.sol -------------------------------------------------------------------------------- /contracts/mocks/MockOvmL1CrossDomainMessenger.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/MockOvmL1CrossDomainMessenger.sol -------------------------------------------------------------------------------- /contracts/mocks/MockOvmL2CrossDomainMessenger.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/MockOvmL2CrossDomainMessenger.sol -------------------------------------------------------------------------------- /contracts/mocks/PolygonMarketUpdate.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/PolygonMarketUpdate.sol -------------------------------------------------------------------------------- /contracts/mocks/Selfdestructor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/Selfdestructor.sol -------------------------------------------------------------------------------- /contracts/mocks/SimpleBridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/SimpleBridgeExecutor.sol -------------------------------------------------------------------------------- /contracts/mocks/SimpleL2BridgeExecutor.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/contracts/mocks/SimpleL2BridgeExecutor.sol -------------------------------------------------------------------------------- /deploy/gov-bridge-arbitrum.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/deploy/gov-bridge-arbitrum.ts -------------------------------------------------------------------------------- /deploy/gov-bridge-optimism.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/deploy/gov-bridge-optimism.ts -------------------------------------------------------------------------------- /deploy/helpers/greeter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/deploy/helpers/greeter.ts -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/ArbitrumBridgeArch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/docs/ArbitrumBridgeArch.png -------------------------------------------------------------------------------- /docs/OptimismBridgeArch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/docs/OptimismBridgeArch.png -------------------------------------------------------------------------------- /docs/PolygonBridgeArch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/docs/PolygonBridgeArch.png -------------------------------------------------------------------------------- /example.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/example.env -------------------------------------------------------------------------------- /hardhat.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/hardhat.config.ts -------------------------------------------------------------------------------- /helper-hardhat-config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helper-hardhat-config.ts -------------------------------------------------------------------------------- /helpers/arbitrum-contract-getters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/arbitrum-contract-getters.ts -------------------------------------------------------------------------------- /helpers/arbitrum-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/arbitrum-helpers.ts -------------------------------------------------------------------------------- /helpers/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/constants.ts -------------------------------------------------------------------------------- /helpers/contract-getters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/contract-getters.ts -------------------------------------------------------------------------------- /helpers/etherscan-verification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/etherscan-verification.ts -------------------------------------------------------------------------------- /helpers/gov-constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/gov-constants.ts -------------------------------------------------------------------------------- /helpers/misc-utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/misc-utils.ts -------------------------------------------------------------------------------- /helpers/optimism-contract-getters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/optimism-contract-getters.ts -------------------------------------------------------------------------------- /helpers/polygon-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/polygon-helpers.ts -------------------------------------------------------------------------------- /helpers/task-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/task-helpers.ts -------------------------------------------------------------------------------- /helpers/test-wallets.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/test-wallets.ts -------------------------------------------------------------------------------- /helpers/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/types.ts -------------------------------------------------------------------------------- /helpers/wallet-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/helpers/wallet-helpers.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/package.json -------------------------------------------------------------------------------- /tasks/deploy/deploy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/deploy/deploy.ts -------------------------------------------------------------------------------- /tasks/deploy/deployPolygonGovernance.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/deploy/deployPolygonGovernance.ts -------------------------------------------------------------------------------- /tasks/governance/check-polygon.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/governance/check-polygon.ts -------------------------------------------------------------------------------- /tasks/governance/simulate-mumbai-governance.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/governance/simulate-mumbai-governance.ts -------------------------------------------------------------------------------- /tasks/l2/arbitrum.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/l2/arbitrum.ts -------------------------------------------------------------------------------- /tasks/l2/optimism.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/l2/optimism.ts -------------------------------------------------------------------------------- /tasks/misc/set-DRE.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/misc/set-DRE.ts -------------------------------------------------------------------------------- /tasks/setup/get-info.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/setup/get-info.ts -------------------------------------------------------------------------------- /tasks/setup/print-default-wallets.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/setup/print-default-wallets.ts -------------------------------------------------------------------------------- /tasks/verify/verify-template.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tasks/verify/verify-template.ts -------------------------------------------------------------------------------- /test/ArbitrumBridgeExecutor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/ArbitrumBridgeExecutor.spec.ts -------------------------------------------------------------------------------- /test/BridgeExecutorBase.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/BridgeExecutorBase.spec.ts -------------------------------------------------------------------------------- /test/L2BridgeExecutor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/L2BridgeExecutor.spec.ts -------------------------------------------------------------------------------- /test/OptimismBridgeExecutor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/OptimismBridgeExecutor.spec.ts -------------------------------------------------------------------------------- /test/PolygonBridgeExecutor.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/PolygonBridgeExecutor.spec.ts -------------------------------------------------------------------------------- /test/emptyrun.coverage.ts: -------------------------------------------------------------------------------- 1 | describe('Empty coverage run', async function () {}); 2 | -------------------------------------------------------------------------------- /test/fork/crosschain-bridges.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/fork/crosschain-bridges.spec.ts -------------------------------------------------------------------------------- /test/helpers/actions-sets-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/helpers/actions-sets-helpers.ts -------------------------------------------------------------------------------- /test/helpers/executor-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/helpers/executor-helpers.ts -------------------------------------------------------------------------------- /test/helpers/governance-helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/helpers/governance-helpers.ts -------------------------------------------------------------------------------- /test/helpers/make-suite.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/test/helpers/make-suite.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aave/governance-crosschain-bridges/HEAD/tsconfig.json --------------------------------------------------------------------------------