@arbitrum/nitro-contracts 1.0.2 → 1.0.3-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +114 -0
- package/README.md +2 -2
- package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.json +63 -0
- package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.json +24 -0
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +80 -0
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.json +56 -0
- package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.json +19 -0
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.json +24 -0
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +113 -0
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +160 -0
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +155 -0
- package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.json +100 -0
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.json +10 -0
- package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.json +10 -0
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +63 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +50 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json +194 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +10 -0
- package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +4 -0
- package/build/contracts/src/bridge/Bridge.sol/Bridge.json +650 -0
- package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +4 -0
- package/build/contracts/src/bridge/IBridge.sol/IBridge.json +538 -0
- package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +4 -0
- package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.json +43 -0
- package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +4 -0
- package/build/contracts/src/bridge/IInbox.sol/IInbox.json +575 -0
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +4 -0
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.json +419 -0
- package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +4 -0
- package/build/contracts/src/bridge/IOwnable.sol/IOwnable.json +24 -0
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +4 -0
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +651 -0
- package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +4 -0
- package/build/contracts/src/bridge/Inbox.sol/Inbox.json +954 -0
- package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +4 -0
- package/build/contracts/src/bridge/Messages.sol/Messages.json +10 -0
- package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +4 -0
- package/build/contracts/src/bridge/Outbox.sol/Outbox.json +546 -0
- package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +4 -0
- package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +814 -0
- package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +4 -0
- package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.json +10 -0
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +4 -0
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +669 -0
- package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +4 -0
- package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.json +386 -0
- package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +4 -0
- package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.json +34 -0
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +4 -0
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.json +10 -0
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +4 -0
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.json +77 -0
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +4 -0
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.json +69 -0
- package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +4 -0
- package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.json +10 -0
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +4 -0
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.json +10 -0
- package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +4 -0
- package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.json +10 -0
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +4 -0
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.json +144 -0
- package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.dbg.json +4 -0
- package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.json +10 -0
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +4 -0
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.json +40 -0
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +4 -0
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +10 -0
- package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +4 -0
- package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.json +82 -0
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +4 -0
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +561 -0
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +4 -0
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +655 -0
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +4 -0
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +588 -0
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +4 -0
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +188 -0
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +4 -0
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +160 -0
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +4 -0
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +870 -0
- package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +4 -0
- package/build/contracts/src/mocks/Simple.sol/Simple.json +242 -0
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +4 -0
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +30 -0
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +4 -0
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +720 -0
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +4 -0
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +669 -0
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +4 -0
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.json +286 -0
- package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +4 -0
- package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.json +67 -0
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +4 -0
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.json +165 -0
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +4 -0
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +57 -0
- package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +4 -0
- package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +10 -0
- package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +4 -0
- package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.json +477 -0
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +4 -0
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +135 -0
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +4 -0
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +477 -0
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +4 -0
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +477 -0
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +4 -0
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +477 -0
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +4 -0
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +477 -0
- package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.json +148 -0
- package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.json +148 -0
- package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.json +10 -0
- package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.json +193 -0
- package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.json +77 -0
- package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.json +350 -0
- package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.json +49 -0
- package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.json +378 -0
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.json +95 -0
- package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.json +306 -0
- package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.json +49 -0
- package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.json +380 -0
- package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.json +77 -0
- package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.json +24 -0
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +4 -0
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +243 -0
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +4 -0
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +128 -0
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.json +544 -0
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.json +889 -0
- package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.json +68 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +1428 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +1309 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +4 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +1443 -0
- package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +4 -0
- package/build/contracts/src/rollup/Node.sol/NodeLib.json +10 -0
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +1808 -0
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.json +1051 -0
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +383 -0
- package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +110 -0
- package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +10 -0
- package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +226 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +1578 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +1712 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +4 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +1697 -0
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +4 -0
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +379 -0
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +4 -0
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +435 -0
- package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +4 -0
- package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +150 -0
- package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +4 -0
- package/build/contracts/src/state/Deserialize.sol/Deserialize.json +10 -0
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +4 -0
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.json +10 -0
- package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +4 -0
- package/build/contracts/src/state/Instructions.sol/Instructions.json +10 -0
- package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +4 -0
- package/build/contracts/src/state/Machine.sol/MachineLib.json +10 -0
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +4 -0
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.json +10 -0
- package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +4 -0
- package/build/contracts/src/state/Module.sol/ModuleLib.json +10 -0
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +4 -0
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.json +10 -0
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +4 -0
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.json +10 -0
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +4 -0
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.json +10 -0
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +4 -0
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.json +10 -0
- package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +4 -0
- package/build/contracts/src/state/Value.sol/ValueLib.json +10 -0
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +4 -0
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.json +10 -0
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +4 -0
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.json +10 -0
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +4 -0
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +603 -0
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +4 -0
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.json +54 -0
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +4 -0
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.json +84 -0
- package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +4 -0
- package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +520 -0
- package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +4 -0
- package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.json +49 -0
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +4 -0
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.json +18 -0
- package/package.json +5 -3
- package/src/bridge/Bridge.sol +3 -3
- package/src/bridge/IBridge.sol +1 -1
- package/src/bridge/IDelayedMessageProvider.sol +1 -1
- package/src/bridge/IInbox.sol +1 -1
- package/src/bridge/IOutbox.sol +1 -1
- package/src/bridge/IOwnable.sol +1 -1
- package/src/bridge/ISequencerInbox.sol +22 -4
- package/src/bridge/Inbox.sol +2 -2
- package/src/bridge/Messages.sol +1 -1
- package/src/bridge/Outbox.sol +1 -1
- package/src/bridge/SequencerInbox.sol +9 -1
- package/src/challenge/ChallengeLib.sol +1 -1
- package/src/challenge/ChallengeManager.sol +1 -1
- package/src/challenge/IChallengeManager.sol +1 -1
- package/src/challenge/IChallengeResultReceiver.sol +1 -1
- package/src/libraries/AddressAliasHelper.sol +1 -1
- package/src/libraries/AdminFallbackProxy.sol +3 -3
- package/src/libraries/Constants.sol +1 -1
- package/src/libraries/CryptographyPrimitives.sol +1 -1
- package/src/libraries/DelegateCallAware.sol +1 -1
- package/src/libraries/DoubleLogicUUPSUpgradeable.sol +1 -1
- package/src/libraries/Error.sol +1 -1
- package/src/libraries/IGasRefunder.sol +2 -5
- package/src/libraries/MerkleLib.sol +1 -1
- package/src/libraries/MessageTypes.sol +1 -1
- package/src/mocks/BridgeStub.sol +2 -2
- package/src/mocks/BridgeUnproxied.sol +1 -1
- package/src/mocks/InboxStub.sol +1 -1
- package/src/mocks/MockResultReceiver.sol +1 -1
- package/src/mocks/ProxyAdminForBinding.sol +1 -1
- package/src/mocks/SequencerInboxStub.sol +1 -1
- package/src/mocks/Simple.sol +5 -1
- package/src/mocks/SimpleProxy.sol +1 -1
- package/src/mocks/SingleExecutionChallenge.sol +1 -1
- package/src/mocks/TimedOutChallengeManager.sol +1 -1
- package/src/node-interface/NodeInterface.sol +4 -2
- package/src/node-interface/NodeInterfaceDebug.sol +1 -1
- package/src/osp/HashProofHelper.sol +1 -1
- package/src/osp/IOneStepProofEntry.sol +1 -1
- package/src/osp/IOneStepProver.sol +2 -1
- package/src/osp/OneStepProofEntry.sol +1 -1
- package/src/osp/OneStepProver0.sol +1 -1
- package/src/osp/OneStepProverHostIo.sol +2 -1
- package/src/osp/OneStepProverMath.sol +1 -1
- package/src/osp/OneStepProverMemory.sol +2 -1
- package/src/precompiles/ArbAddressTable.sol +1 -1
- package/src/precompiles/ArbAggregator.sol +1 -1
- package/src/precompiles/ArbBLS.sol +1 -1
- package/src/precompiles/ArbDebug.sol +1 -1
- package/src/precompiles/ArbFunctionTable.sol +1 -1
- package/src/precompiles/ArbGasInfo.sol +1 -1
- package/src/precompiles/ArbInfo.sol +1 -1
- package/src/precompiles/ArbOwner.sol +4 -1
- package/src/precompiles/ArbOwnerPublic.sol +1 -1
- package/src/precompiles/ArbRetryableTx.sol +1 -1
- package/src/precompiles/ArbStatistics.sol +1 -1
- package/src/precompiles/ArbSys.sol +1 -1
- package/src/precompiles/ArbosTest.sol +1 -1
- package/src/rollup/BridgeCreator.sol +1 -1
- package/src/rollup/Config.sol +43 -0
- package/src/rollup/IRollupAdmin.sol +138 -0
- package/src/rollup/IRollupCore.sol +16 -3
- package/src/rollup/IRollupEventInbox.sol +2 -2
- package/src/rollup/IRollupLogic.sol +4 -132
- package/src/rollup/Node.sol +15 -1
- package/src/rollup/RollupAdminLogic.sol +7 -9
- package/src/rollup/RollupCore.sol +46 -3
- package/src/rollup/RollupCreator.sol +33 -45
- package/src/rollup/RollupEventInbox.sol +8 -3
- package/src/rollup/RollupLib.sol +2 -40
- package/src/rollup/RollupProxy.sol +26 -11
- package/src/rollup/RollupUserLogic.sol +6 -4
- package/src/rollup/ValidatorUtils.sol +2 -1
- package/src/rollup/ValidatorWallet.sol +1 -1
- package/src/rollup/ValidatorWalletCreator.sol +1 -1
- package/src/state/Deserialize.sol +2 -2
- package/src/state/GlobalState.sol +1 -1
- package/src/state/Instructions.sol +1 -1
- package/src/state/Machine.sol +1 -1
- package/src/state/MerkleProof.sol +1 -1
- package/src/state/Module.sol +3 -3
- package/src/state/ModuleMemory.sol +3 -8
- package/src/state/ModuleMemoryCompact.sol +17 -0
- package/src/state/PcArray.sol +1 -1
- package/src/state/StackFrame.sol +1 -1
- package/src/state/Value.sol +1 -1
- package/src/state/ValueArray.sol +1 -1
- package/src/state/ValueStack.sol +1 -1
- package/src/test-helpers/BridgeTester.sol +1 -1
- package/src/test-helpers/CryptographyPrimitivesTester.sol +1 -1
- package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
- package/src/test-helpers/MessageTester.sol +1 -1
- package/src/test-helpers/OutboxWithoutOptTester.sol +1 -1
- package/src/test-helpers/RollupMock.sol +1 -1
- package/src/test-helpers/ValueArrayTester.sol +1 -1
package/src/bridge/Bridge.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -230,7 +230,7 @@ contract Bridge is Initializable, DelegateCallAware, IBridge {
|
|
230
230
|
InOutInfo storage info = allowedDelayedInboxesMap[inbox];
|
231
231
|
bool alreadyEnabled = info.allowed;
|
232
232
|
emit InboxToggle(inbox, enabled);
|
233
|
-
if (
|
233
|
+
if (alreadyEnabled == enabled) {
|
234
234
|
return;
|
235
235
|
}
|
236
236
|
if (enabled) {
|
@@ -252,7 +252,7 @@ contract Bridge is Initializable, DelegateCallAware, IBridge {
|
|
252
252
|
InOutInfo storage info = allowedOutboxesMap[outbox];
|
253
253
|
bool alreadyEnabled = info.allowed;
|
254
254
|
emit OutboxToggle(outbox, enabled);
|
255
|
-
if (
|
255
|
+
if (alreadyEnabled == enabled) {
|
256
256
|
return;
|
257
257
|
}
|
258
258
|
if (enabled) {
|
package/src/bridge/IBridge.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
package/src/bridge/IInbox.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
package/src/bridge/IOutbox.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
package/src/bridge/IOwnable.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
@@ -69,14 +69,24 @@ interface ISequencerInbox is IDelayedMessageProvider {
|
|
69
69
|
|
70
70
|
function isBatchPoster(address) external view returns (bool);
|
71
71
|
|
72
|
+
function isSequencer(address) external view returns (bool);
|
73
|
+
|
72
74
|
struct DasKeySetInfo {
|
73
75
|
bool isValidKeyset;
|
74
76
|
uint64 creationBlock;
|
75
77
|
}
|
76
78
|
|
77
|
-
|
78
|
-
|
79
|
-
|
79
|
+
function maxTimeVariation()
|
80
|
+
external
|
81
|
+
view
|
82
|
+
returns (
|
83
|
+
uint256,
|
84
|
+
uint256,
|
85
|
+
uint256,
|
86
|
+
uint256
|
87
|
+
);
|
88
|
+
|
89
|
+
function dasKeySetInfo(bytes32) external view returns (bool, uint64);
|
80
90
|
|
81
91
|
/// @notice Remove force inclusion delay after a L1 chainId fork
|
82
92
|
function removeDelayAfterFork() external;
|
@@ -154,6 +164,14 @@ interface ISequencerInbox is IDelayedMessageProvider {
|
|
154
164
|
*/
|
155
165
|
function invalidateKeysetHash(bytes32 ksHash) external;
|
156
166
|
|
167
|
+
/**
|
168
|
+
* @notice Updates whether an address is authorized to be a sequencer.
|
169
|
+
* @dev The IsSequencer information is used only off-chain by the nitro node to validate sequencer feed signer.
|
170
|
+
* @param addr the address
|
171
|
+
* @param isSequencer_ if the specified address should be authorized as a sequencer
|
172
|
+
*/
|
173
|
+
function setIsSequencer(address addr, bool isSequencer_) external;
|
174
|
+
|
157
175
|
// ---------- initializer ----------
|
158
176
|
|
159
177
|
function initialize(IBridge bridge_, MaxTimeVariation calldata maxTimeVariation_) external;
|
package/src/bridge/Inbox.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -352,7 +352,7 @@ contract Inbox is DelegateCallAware, PausableUpgradeable, IInbox {
|
|
352
352
|
nonce,
|
353
353
|
uint256(uint160(address(100))), // ArbSys address
|
354
354
|
value,
|
355
|
-
abi.
|
355
|
+
abi.encodeWithSelector(ArbSys.withdrawEth.selector, withdrawTo)
|
356
356
|
)
|
357
357
|
);
|
358
358
|
}
|
package/src/bridge/Messages.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
package/src/bridge/Outbox.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -64,6 +64,8 @@ contract SequencerInbox is DelegateCallAware, GasRefundEnabled, ISequencerInbox
|
|
64
64
|
|
65
65
|
uint256 internal immutable deployTimeChainId = block.chainid;
|
66
66
|
|
67
|
+
mapping(address => bool) public isSequencer;
|
68
|
+
|
67
69
|
function _chainIdChanged() internal view returns (bool) {
|
68
70
|
return deployTimeChainId != block.chainid;
|
69
71
|
}
|
@@ -450,6 +452,12 @@ contract SequencerInbox is DelegateCallAware, GasRefundEnabled, ISequencerInbox
|
|
450
452
|
emit OwnerFunctionCalled(3);
|
451
453
|
}
|
452
454
|
|
455
|
+
/// @inheritdoc ISequencerInbox
|
456
|
+
function setIsSequencer(address addr, bool isSequencer_) external onlyRollupOwner {
|
457
|
+
isSequencer[addr] = isSequencer_;
|
458
|
+
emit OwnerFunctionCalled(4);
|
459
|
+
}
|
460
|
+
|
453
461
|
function isValidKeysetHash(bytes32 ksHash) external view returns (bool) {
|
454
462
|
return dasKeySetInfo[ksHash].isValidKeyset;
|
455
463
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -107,13 +107,13 @@ contract AdminFallbackProxy is Proxy, DoubleLogicERC1967Upgrade {
|
|
107
107
|
* Only the `adminAddr` is able to use the `adminLogic` functions
|
108
108
|
* All other addresses can interact with the `userLogic` functions
|
109
109
|
*/
|
110
|
-
|
110
|
+
function _initialize(
|
111
111
|
address adminLogic,
|
112
112
|
bytes memory adminData,
|
113
113
|
address userLogic,
|
114
114
|
bytes memory userData,
|
115
115
|
address adminAddr
|
116
|
-
)
|
116
|
+
) internal {
|
117
117
|
assert(_ADMIN_SLOT == bytes32(uint256(keccak256("eip1967.proxy.admin")) - 1));
|
118
118
|
assert(
|
119
119
|
_IMPLEMENTATION_SLOT == bytes32(uint256(keccak256("eip1967.proxy.implementation")) - 1)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
package/src/libraries/Error.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
// solhint-disable-next-line compiler-version
|
@@ -21,10 +21,7 @@ abstract contract GasRefundEnabled {
|
|
21
21
|
uint256 startGasLeft = gasleft();
|
22
22
|
_;
|
23
23
|
if (address(gasRefunder) != address(0)) {
|
24
|
-
uint256 calldataSize;
|
25
|
-
assembly {
|
26
|
-
calldataSize := calldatasize()
|
27
|
-
}
|
24
|
+
uint256 calldataSize = msg.data.length;
|
28
25
|
uint256 calldataWords = (calldataSize + 31) / 32;
|
29
26
|
// account for the CALLDATACOPY cost of the proxy contract, including the memory expansion cost
|
30
27
|
startGasLeft += calldataWords * 6 + (calldataWords**2) / 512;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.4;
|
package/src/mocks/BridgeStub.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -139,7 +139,7 @@ contract BridgeStub is IBridge {
|
|
139
139
|
InOutInfo storage info = allowedDelayedInboxesMap[inbox];
|
140
140
|
bool alreadyEnabled = info.allowed;
|
141
141
|
emit InboxToggle(inbox, enabled);
|
142
|
-
if (
|
142
|
+
if (alreadyEnabled == enabled) {
|
143
143
|
return;
|
144
144
|
}
|
145
145
|
if (enabled) {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
package/src/mocks/InboxStub.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
package/src/mocks/Simple.sol
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -43,6 +43,10 @@ contract Simple {
|
|
43
43
|
return block.number;
|
44
44
|
}
|
45
45
|
|
46
|
+
function getBlockDifficulty() external view returns (uint256) {
|
47
|
+
return block.difficulty;
|
48
|
+
}
|
49
|
+
|
46
50
|
function noop() external pure {}
|
47
51
|
|
48
52
|
function pleaseRevert() external pure {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -98,8 +98,10 @@ interface NodeInterface {
|
|
98
98
|
/**
|
99
99
|
* @notice Estimates a transaction's l1 costs.
|
100
100
|
* @dev Use eth_call to call.
|
101
|
-
* This method is
|
101
|
+
* This method is similar to gasEstimateComponents, but doesn't include the l2 component
|
102
102
|
* so that the l1 component can be known even when the tx may fail.
|
103
|
+
* This method also doesn't pad the estimate as gas estimation normally does.
|
104
|
+
* If using this value to submit a transaction, we'd recommend first padding it by 10%.
|
103
105
|
* @param data the tx's calldata. Everything else like "From" and "Gas" are copied over
|
104
106
|
* @param to the tx's "To" (ignored when contractCreation is true)
|
105
107
|
* @param contractCreation whether "To" is omitted
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -7,6 +7,7 @@ pragma solidity ^0.8.0;
|
|
7
7
|
import "../state/Machine.sol";
|
8
8
|
import "../state/Module.sol";
|
9
9
|
import "../state/Instructions.sol";
|
10
|
+
import "../state/GlobalState.sol";
|
10
11
|
import "../bridge/ISequencerInbox.sol";
|
11
12
|
import "../bridge/IBridge.sol";
|
12
13
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -7,6 +7,7 @@ pragma solidity ^0.8.0;
|
|
7
7
|
import "../state/Value.sol";
|
8
8
|
import "../state/Machine.sol";
|
9
9
|
import "../state/Deserialize.sol";
|
10
|
+
import "../state/ModuleMemory.sol";
|
10
11
|
import "./IOneStepProver.sol";
|
11
12
|
import "../bridge/Messages.sol";
|
12
13
|
import "../bridge/IBridge.sol";
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity ^0.8.0;
|
@@ -7,6 +7,7 @@ pragma solidity ^0.8.0;
|
|
7
7
|
import "../state/Value.sol";
|
8
8
|
import "../state/Machine.sol";
|
9
9
|
import "../state/Deserialize.sol";
|
10
|
+
import "../state/ModuleMemory.sol";
|
10
11
|
import "./IOneStepProver.sol";
|
11
12
|
|
12
13
|
contract OneStepProverMemory is IOneStepProver {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2023, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/OffchainLabs/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
-
// For license information, see https://github.com/nitro/blob/
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
3
|
// SPDX-License-Identifier: BUSL-1.1
|
4
4
|
|
5
5
|
pragma solidity >=0.4.21 <0.9.0;
|
@@ -84,6 +84,9 @@ interface ArbOwner {
|
|
84
84
|
/// @notice Releases surplus funds from L1PricerFundsPoolAddress for use
|
85
85
|
function releaseL1PricerSurplusFunds(uint256 maxWeiToRelease) external returns (uint256);
|
86
86
|
|
87
|
+
/// @notice Sets serialized chain config in ArbOS state
|
88
|
+
function setChainConfig(string calldata chainConfig) external;
|
89
|
+
|
87
90
|
// Emitted when a successful call is made to this precompile
|
88
91
|
event OwnerActs(bytes4 indexed method, address indexed owner, bytes data);
|
89
92
|
}
|