@arbitrum/nitro-contracts 2.1.0 → 3.0.0-alpha.0

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.
Files changed (503) hide show
  1. package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
  2. package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
  3. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
  4. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +2 -2
  5. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
  6. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
  7. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
  8. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
  9. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +2 -2
  10. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
  11. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +2 -2
  12. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
  13. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +2 -2
  14. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
  15. package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
  16. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  17. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
  18. package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  19. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  20. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.dbg.json +4 -0
  21. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.json +86 -0
  22. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  23. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.json +2 -2
  24. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  25. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.json +2 -2
  26. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  27. package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.dbg.json +4 -0
  28. package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.json +10 -0
  29. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
  30. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +2 -2
  31. package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +1 -1
  32. package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +2 -2
  33. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
  34. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +13 -0
  35. package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
  36. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  37. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +13 -0
  38. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  39. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +15 -1
  40. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
  41. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +13 -0
  42. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  43. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +2 -2
  44. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  45. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +15 -1
  46. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.dbg.json +4 -0
  47. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.json +10 -0
  48. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
  49. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.json +2 -2
  50. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
  51. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.json +2 -2
  52. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
  53. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.json +13 -0
  54. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
  55. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.dbg.json +4 -0
  56. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.json +10 -0
  57. package/build/contracts/src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.dbg.json +4 -0
  58. package/build/contracts/{@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json → src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.json} +41 -95
  59. package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.dbg.json +4 -0
  60. package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.json +340 -0
  61. package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.dbg.json +4 -0
  62. package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.json +89 -0
  63. package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.dbg.json +4 -0
  64. package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.json +248 -0
  65. package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.dbg.json +4 -0
  66. package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.json +83 -0
  67. package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.dbg.json +4 -0
  68. package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.json +16 -0
  69. package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.dbg.json +4 -0
  70. package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.json +140 -0
  71. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.dbg.json +4 -0
  72. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.json +324 -0
  73. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.dbg.json +4 -0
  74. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.json +84 -0
  75. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.dbg.json +4 -0
  76. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.json +232 -0
  77. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.dbg.json +4 -0
  78. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.json +78 -0
  79. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
  80. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.json +13 -0
  81. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
  82. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.json +20 -7
  83. package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
  84. package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  85. package/build/contracts/src/bridge/Bridge.sol/Bridge.json +15 -2
  86. package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.dbg.json +4 -0
  87. package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.json +24 -0
  88. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
  89. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.json +15 -2
  90. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
  91. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +22 -9
  92. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
  93. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.json +2 -2
  94. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
  95. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.json +2 -2
  96. package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
  97. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
  98. package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
  99. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
  100. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.json +1 -1
  101. package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
  102. package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
  103. package/build/contracts/src/bridge/IInbox.sol/IInbox.json +1 -1
  104. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
  105. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.json +1 -1
  106. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
  107. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
  108. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
  109. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +441 -0
  110. package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
  111. package/build/contracts/src/bridge/Inbox.sol/Inbox.json +22 -4
  112. package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
  113. package/build/contracts/src/bridge/Messages.sol/Messages.json +2 -2
  114. package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
  115. package/build/contracts/src/bridge/Outbox.sol/Outbox.json +2 -2
  116. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
  117. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +564 -7
  118. package/build/contracts/src/chain/CacheManager.sol/CacheManager.dbg.json +1 -1
  119. package/build/contracts/src/chain/CacheManager.sol/CacheManager.json +15 -2
  120. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.dbg.json +4 -0
  121. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.json +1631 -0
  122. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.dbg.json +4 -0
  123. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.json +762 -0
  124. package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.dbg.json +4 -0
  125. package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.json +247 -0
  126. package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.dbg.json +4 -0
  127. package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.json +10 -0
  128. package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.dbg.json +4 -0
  129. package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.json +10 -0
  130. package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.dbg.json +4 -0
  131. package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.json +24 -0
  132. package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.dbg.json +4 -0
  133. package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.json +24 -0
  134. package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.dbg.json +4 -0
  135. package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.json +10 -0
  136. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
  137. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.json +2 -2
  138. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
  139. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.json +2 -2
  140. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
  141. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
  142. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.json +2 -2
  143. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
  144. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.json +2 -2
  145. package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.dbg.json +1 -1
  146. package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.json +2 -2
  147. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
  148. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
  149. package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
  150. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
  151. package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
  152. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
  153. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +2 -2
  154. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
  155. package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.dbg.json +1 -1
  156. package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.json +2 -2
  157. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  158. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +8 -8
  159. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
  160. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +28 -2
  161. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
  162. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +2 -2
  163. package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.dbg.json +4 -0
  164. package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.json +227 -0
  165. package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.dbg.json +4 -0
  166. package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.json +133 -0
  167. package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.dbg.json +1 -1
  168. package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.json +2 -2
  169. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +1 -1
  170. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.json +2 -2
  171. package/build/contracts/src/mocks/Program.sol/ProgramTest.dbg.json +1 -1
  172. package/build/contracts/src/mocks/Program.sol/ProgramTest.json +2 -2
  173. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
  174. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +2 -2
  175. package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.dbg.json +1 -1
  176. package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.json +2 -2
  177. package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.dbg.json +4 -0
  178. package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.json +1632 -0
  179. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
  180. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +564 -7
  181. package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
  182. package/build/contracts/src/mocks/Simple.sol/Simple.json +2 -2
  183. package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.dbg.json +1 -1
  184. package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.json +2 -2
  185. package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.dbg.json +4 -0
  186. package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.json +142 -0
  187. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
  188. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +2 -2
  189. package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.dbg.json +4 -0
  190. package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.json +31 -0
  191. package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.dbg.json +4 -0
  192. package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.json +317 -0
  193. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
  194. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.json +15 -2
  195. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
  196. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
  197. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
  198. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.json +2 -2
  199. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
  200. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +33 -9
  201. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
  202. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +2 -2
  203. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
  204. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.json +5 -0
  205. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
  206. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +35 -11
  207. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
  208. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +7 -2
  209. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
  210. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +7 -2
  211. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
  212. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +7 -2
  213. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
  214. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +7 -2
  215. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
  216. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
  217. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
  218. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
  219. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
  220. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
  221. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
  222. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
  223. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
  224. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
  225. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
  226. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
  227. package/build/contracts/src/precompiles/ArbWasm.sol/ArbWasm.dbg.json +1 -1
  228. package/build/contracts/src/precompiles/ArbWasmCache.sol/ArbWasmCache.dbg.json +1 -1
  229. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
  230. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
  231. package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
  232. package/build/contracts/src/rollup/Assertion.sol/AssertionNodeLib.dbg.json +4 -0
  233. package/build/contracts/src/rollup/{Node.sol/NodeLib.json → Assertion.sol/AssertionNodeLib.json} +4 -4
  234. package/build/contracts/src/rollup/AssertionState.sol/AssertionStateLib.dbg.json +4 -0
  235. package/build/contracts/src/{challenge/ChallengeLib.sol/ChallengeLib.json → rollup/AssertionState.sol/AssertionStateLib.json} +4 -4
  236. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.dbg.json +4 -0
  237. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.json +807 -0
  238. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.dbg.json +4 -0
  239. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.json +35 -0
  240. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.dbg.json +4 -0
  241. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.json +361 -0
  242. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.dbg.json +4 -0
  243. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.json +38 -0
  244. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.dbg.json +4 -0
  245. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.json +41 -0
  246. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.dbg.json +4 -0
  247. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.json +385 -0
  248. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.dbg.json +4 -0
  249. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.json +203 -0
  250. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
  251. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +62 -10
  252. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
  253. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +2 -2
  254. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
  255. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.json +2 -2
  256. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.dbg.json +1 -1
  257. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.json +2 -2
  258. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IDeployHelper.dbg.json +1 -1
  259. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20.dbg.json +1 -1
  260. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20Bridge.dbg.json +1 -1
  261. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IInboxBase.dbg.json +1 -1
  262. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
  263. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.json +473 -99
  264. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
  265. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.json +315 -221
  266. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
  267. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
  268. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +678 -499
  269. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
  270. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +806 -435
  271. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
  272. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.json +323 -235
  273. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
  274. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +98 -36
  275. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
  276. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +2 -2
  277. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
  278. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +2 -2
  279. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
  280. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +97 -16
  281. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
  282. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +924 -535
  283. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
  284. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +15 -43
  285. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
  286. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +2 -2
  287. package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
  288. package/build/contracts/src/state/Deserialize.sol/Deserialize.json +2 -2
  289. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
  290. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.json +2 -2
  291. package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
  292. package/build/contracts/src/state/Instructions.sol/Instructions.json +2 -2
  293. package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
  294. package/build/contracts/src/state/Machine.sol/MachineLib.json +2 -2
  295. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
  296. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.json +2 -2
  297. package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
  298. package/build/contracts/src/state/Module.sol/ModuleLib.json +2 -2
  299. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
  300. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.json +2 -2
  301. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
  302. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.json +2 -2
  303. package/build/contracts/src/state/MultiStack.sol/MultiStackLib.dbg.json +1 -1
  304. package/build/contracts/src/state/MultiStack.sol/MultiStackLib.json +2 -2
  305. package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
  306. package/build/contracts/src/state/PcArray.sol/PcArrayLib.json +2 -2
  307. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
  308. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.json +2 -2
  309. package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
  310. package/build/contracts/src/state/Value.sol/ValueLib.json +2 -2
  311. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
  312. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.json +2 -2
  313. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
  314. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.json +2 -2
  315. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
  316. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +15 -2
  317. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
  318. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.json +2 -2
  319. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
  320. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.json +2 -2
  321. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
  322. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.json +2 -2
  323. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
  324. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +2 -2
  325. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
  326. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.json +2 -15
  327. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
  328. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.json +2 -2
  329. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
  330. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.json +2 -2
  331. package/out/yul/Reader4844.yul/Reader4844.json +1 -1
  332. package/package.json +15 -5
  333. package/src/assertionStakingPool/AbsBoldStakingPool.sol +66 -0
  334. package/src/assertionStakingPool/AssertionStakingPool.sol +70 -0
  335. package/src/assertionStakingPool/AssertionStakingPoolCreator.sol +35 -0
  336. package/src/assertionStakingPool/EdgeStakingPool.sol +57 -0
  337. package/src/assertionStakingPool/EdgeStakingPoolCreator.sol +34 -0
  338. package/src/assertionStakingPool/StakingPoolCreatorUtils.sol +25 -0
  339. package/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol +41 -0
  340. package/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol +36 -0
  341. package/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol +31 -0
  342. package/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol +27 -0
  343. package/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol +28 -0
  344. package/src/bridge/AbsBridge.sol +38 -48
  345. package/src/bridge/AbsInbox.sol +88 -97
  346. package/src/bridge/AbsOutbox.sol +23 -37
  347. package/src/bridge/Bridge.sol +6 -4
  348. package/src/bridge/DelayBuffer.sol +123 -0
  349. package/src/bridge/DelayBufferTypes.sol +38 -0
  350. package/src/bridge/ERC20Bridge.sol +8 -4
  351. package/src/bridge/ERC20Inbox.sol +46 -53
  352. package/src/bridge/ERC20Outbox.sol +7 -3
  353. package/src/bridge/GasRefunder.sol +38 -24
  354. package/src/bridge/IBridge.sol +30 -21
  355. package/src/bridge/IERC20Bridge.sol +1 -1
  356. package/src/bridge/IERC20Inbox.sol +4 -2
  357. package/src/bridge/IEthBridge.sol +4 -2
  358. package/src/bridge/IInbox.sol +4 -2
  359. package/src/bridge/IInboxBase.sol +17 -13
  360. package/src/bridge/IOutbox.sol +13 -8
  361. package/src/bridge/ISequencerInbox.sol +118 -13
  362. package/src/bridge/Inbox.sol +131 -151
  363. package/src/bridge/Messages.sol +48 -18
  364. package/src/bridge/Outbox.sol +6 -2
  365. package/src/bridge/SequencerInbox.sol +339 -274
  366. package/src/chain/CacheManager.sol +49 -18
  367. package/src/challengeV2/EdgeChallengeManager.sol +783 -0
  368. package/src/challengeV2/IAssertionChain.sol +39 -0
  369. package/src/challengeV2/libraries/ArrayUtilsLib.sol +61 -0
  370. package/src/challengeV2/libraries/ChallengeEdgeLib.sol +333 -0
  371. package/src/challengeV2/libraries/ChallengeErrors.sol +108 -0
  372. package/src/challengeV2/libraries/EdgeChallengeManagerLib.sol +930 -0
  373. package/src/challengeV2/libraries/Enums.sol +26 -0
  374. package/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol +390 -0
  375. package/src/challengeV2/libraries/UintUtilsLib.sol +74 -0
  376. package/src/libraries/AddressAliasHelper.sol +6 -2
  377. package/src/libraries/AdminFallbackProxy.sol +8 -4
  378. package/src/libraries/ArbitrumChecker.sol +3 -4
  379. package/src/libraries/CryptographyPrimitives.sol +39 -46
  380. package/src/libraries/DecimalsConverterHelper.sol +2 -4
  381. package/src/libraries/DoubleLogicUUPSUpgradeable.sol +10 -7
  382. package/src/libraries/Error.sol +18 -3
  383. package/src/libraries/GasRefundEnabled.sol +3 -4
  384. package/src/libraries/MerkleLib.sol +6 -5
  385. package/src/libraries/UUPSNotUpgradeable.sol +2 -4
  386. package/src/mocks/BridgeStub.sol +50 -48
  387. package/src/mocks/BridgeUnproxied.sol +2 -0
  388. package/src/mocks/InboxStub.sol +22 -17
  389. package/src/mocks/MerkleTreeAccess.sol +72 -0
  390. package/src/mocks/MockRollupEventInbox.sol +59 -0
  391. package/src/mocks/MultiCallTest.sol +3 -1
  392. package/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +3 -1
  393. package/src/mocks/Program.sol +9 -7
  394. package/src/mocks/SequencerInboxBlobMock.sol +38 -0
  395. package/src/mocks/SequencerInboxStub.sol +9 -12
  396. package/src/mocks/Simple.sol +13 -25
  397. package/src/mocks/SimpleCacheManager.sol +10 -3
  398. package/src/mocks/SimpleOneStepProofEntry.sol +60 -0
  399. package/src/mocks/SimpleProxy.sol +3 -1
  400. package/src/mocks/TestWETH9.sol +30 -0
  401. package/src/mocks/UpgradeExecutorMock.sol +10 -17
  402. package/src/node-interface/NodeInterface.sol +23 -22
  403. package/src/node-interface/NodeInterfaceDebug.sol +5 -3
  404. package/src/osp/HashProofHelper.sol +9 -10
  405. package/src/osp/IOneStepProofEntry.sol +14 -9
  406. package/src/osp/IOneStepProver.sol +1 -0
  407. package/src/osp/OneStepProofEntry.sol +63 -54
  408. package/src/osp/OneStepProver0.sol +14 -27
  409. package/src/osp/OneStepProverHostIo.sol +31 -58
  410. package/src/osp/OneStepProverMath.sol +15 -23
  411. package/src/osp/OneStepProverMemory.sol +9 -23
  412. package/src/precompiles/ArbAddressTable.sol +19 -9
  413. package/src/precompiles/ArbAggregator.sol +12 -4
  414. package/src/precompiles/ArbBLS.sol +1 -3
  415. package/src/precompiles/ArbDebug.sol +5 -11
  416. package/src/precompiles/ArbFunctionTable.sol +7 -10
  417. package/src/precompiles/ArbGasInfo.sol +9 -43
  418. package/src/precompiles/ArbInfo.sol +6 -2
  419. package/src/precompiles/ArbOwner.sol +101 -34
  420. package/src/precompiles/ArbOwnerPublic.sol +6 -2
  421. package/src/precompiles/ArbRetryableTx.sol +15 -5
  422. package/src/precompiles/ArbStatistics.sol +1 -8
  423. package/src/precompiles/ArbSys.sol +16 -18
  424. package/src/precompiles/ArbWasm.sol +24 -14
  425. package/src/precompiles/ArbWasmCache.sol +15 -5
  426. package/src/precompiles/ArbosTest.sol +3 -1
  427. package/src/rollup/AbsRollupEventInbox.sol +15 -16
  428. package/src/rollup/Assertion.sol +100 -0
  429. package/src/rollup/AssertionState.sol +29 -0
  430. package/src/rollup/BOLDUpgradeAction.sol +631 -0
  431. package/src/rollup/BridgeCreator.sol +42 -15
  432. package/src/rollup/Config.sol +15 -7
  433. package/src/rollup/DeployHelper.sol +12 -31
  434. package/src/rollup/ERC20RollupEventInbox.sol +8 -9
  435. package/src/rollup/FactoryDeployerHelper.sol +8 -10
  436. package/src/rollup/IRollupAdmin.sol +127 -45
  437. package/src/rollup/IRollupCore.sol +64 -84
  438. package/src/rollup/IRollupEventInbox.sol +3 -1
  439. package/src/rollup/IRollupLogic.sol +35 -72
  440. package/src/rollup/RollupAdminLogic.sol +224 -203
  441. package/src/rollup/RollupCore.sol +407 -428
  442. package/src/rollup/RollupCreator.sol +88 -75
  443. package/src/rollup/RollupEventInbox.sol +7 -7
  444. package/src/rollup/RollupLib.sol +50 -86
  445. package/src/rollup/RollupProxy.sol +8 -12
  446. package/src/rollup/RollupUserLogic.sol +279 -644
  447. package/src/rollup/ValidatorUtils.sol +0 -242
  448. package/src/rollup/ValidatorWallet.sol +22 -38
  449. package/src/rollup/ValidatorWalletCreator.sol +8 -8
  450. package/src/state/Deserialize.sol +74 -96
  451. package/src/state/GlobalState.sol +74 -20
  452. package/src/state/Instructions.sol +4 -3
  453. package/src/state/Machine.sol +18 -19
  454. package/src/state/Module.sol +14 -13
  455. package/src/state/ModuleMemory.sol +6 -25
  456. package/src/state/ModuleMemoryCompact.sol +3 -1
  457. package/src/state/MultiStack.sol +16 -20
  458. package/src/state/PcArray.sol +7 -7
  459. package/src/state/StackFrame.sol +21 -14
  460. package/src/state/Value.sol +18 -6
  461. package/src/state/ValueArray.sol +7 -7
  462. package/src/state/ValueStack.sol +9 -3
  463. package/src/test-helpers/BridgeTester.sol +32 -42
  464. package/src/test-helpers/CryptographyPrimitivesTester.sol +12 -13
  465. package/src/test-helpers/EthVault.sol +4 -2
  466. package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
  467. package/src/test-helpers/MessageTester.sol +3 -10
  468. package/src/test-helpers/OutboxWithoutOptTester.sol +12 -19
  469. package/src/test-helpers/RollupMock.sol +3 -7
  470. package/src/test-helpers/TestToken.sol +4 -2
  471. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +0 -4
  472. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +0 -4
  473. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +0 -4
  474. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +0 -746
  475. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +0 -4
  476. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.json +0 -441
  477. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +0 -4
  478. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.json +0 -34
  479. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +0 -4
  480. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +0 -188
  481. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +0 -4
  482. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +0 -797
  483. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +0 -4
  484. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +0 -746
  485. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +0 -4
  486. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +0 -1332
  487. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +0 -4
  488. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +0 -1466
  489. package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +0 -4
  490. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +0 -4
  491. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +0 -1614
  492. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +0 -4
  493. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +0 -1748
  494. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +0 -4
  495. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +0 -379
  496. package/src/challenge/ChallengeLib.sol +0 -88
  497. package/src/challenge/ChallengeManager.sol +0 -375
  498. package/src/challenge/IChallengeManager.sol +0 -86
  499. package/src/challenge/IChallengeResultReceiver.sol +0 -13
  500. package/src/mocks/MockResultReceiver.sol +0 -59
  501. package/src/mocks/SingleExecutionChallenge.sol +0 -41
  502. package/src/mocks/TimedOutChallengeManager.sol +0 -13
  503. package/src/rollup/Node.sol +0 -113
@@ -14,14 +14,18 @@ interface ArbAddressTable {
14
14
  * @param addr address to check for presence in table
15
15
  * @return true if address is in table
16
16
  */
17
- function addressExists(address addr) external view returns (bool);
17
+ function addressExists(
18
+ address addr
19
+ ) external view returns (bool);
18
20
 
19
21
  /**
20
22
  * @notice compress an address and return the result
21
23
  * @param addr address to compress
22
24
  * @return compressed address bytes
23
25
  */
24
- function compress(address addr) external returns (bytes memory);
26
+ function compress(
27
+ address addr
28
+ ) external returns (bytes memory);
25
29
 
26
30
  /**
27
31
  * @notice read a compressed address from a bytes buffer
@@ -29,29 +33,35 @@ interface ArbAddressTable {
29
33
  * @param offset offset of target address
30
34
  * @return resulting address and updated offset into the buffer (revert if buffer is too short)
31
35
  */
32
- function decompress(bytes calldata buf, uint256 offset)
33
- external
34
- view
35
- returns (address, uint256);
36
+ function decompress(
37
+ bytes calldata buf,
38
+ uint256 offset
39
+ ) external view returns (address, uint256);
36
40
 
37
41
  /**
38
42
  * @param addr address to lookup
39
43
  * @return index of an address in the address table (revert if address isn't in the table)
40
44
  */
41
- function lookup(address addr) external view returns (uint256);
45
+ function lookup(
46
+ address addr
47
+ ) external view returns (uint256);
42
48
 
43
49
  /**
44
50
  * @param index index to lookup address
45
51
  * @return address at a given index in address table (revert if index is beyond end of table)
46
52
  */
47
- function lookupIndex(uint256 index) external view returns (address);
53
+ function lookupIndex(
54
+ uint256 index
55
+ ) external view returns (address);
48
56
 
49
57
  /**
50
58
  * @notice Register an address in the address table
51
59
  * @param addr address to register
52
60
  * @return index of the address (existing index, or newly created index if not already registered)
53
61
  */
54
- function register(address addr) external returns (uint256);
62
+ function register(
63
+ address addr
64
+ ) external returns (uint256);
55
65
 
56
66
  /**
57
67
  * @return size of address table (= first unused index)
@@ -11,7 +11,9 @@ interface ArbAggregator {
11
11
  /// @notice Get the address of an arbitrarily chosen batch poster.
12
12
  /// @param addr ignored
13
13
  /// @return (batchPosterAddress, true)
14
- function getPreferredAggregator(address addr) external view returns (address, bool);
14
+ function getPreferredAggregator(
15
+ address addr
16
+ ) external view returns (address, bool);
15
17
 
16
18
  /// @notice Deprecated, there is no longer a single preferred aggregator, use getBatchPosters instead
17
19
  /// @notice Get default aggregator.
@@ -24,12 +26,16 @@ interface ArbAggregator {
24
26
  /// @notice Adds newBatchPoster as a batch poster
25
27
  /// This reverts unless called by a chain owner
26
28
  /// @param newBatchPoster New batch poster
27
- function addBatchPoster(address newBatchPoster) external;
29
+ function addBatchPoster(
30
+ address newBatchPoster
31
+ ) external;
28
32
 
29
33
  /// @notice Get the address where fees to batchPoster are sent.
30
34
  /// @param batchPoster The batch poster to get the fee collector for
31
35
  /// @return The fee collectors address. This will sometimes but not always be the same as the batch poster's address.
32
- function getFeeCollector(address batchPoster) external view returns (address);
36
+ function getFeeCollector(
37
+ address batchPoster
38
+ ) external view returns (address);
33
39
 
34
40
  /// @notice Set the address where fees to batchPoster are sent.
35
41
  /// This reverts unless called by the batch poster, its fee collector, or a chain owner
@@ -40,7 +46,9 @@ interface ArbAggregator {
40
46
  /// @notice Deprecated, always returns zero
41
47
  /// @notice Get the tx base fee (in approximate L1 gas) for aggregator
42
48
  /// @param aggregator The aggregator to get the base fee for
43
- function getTxBaseFee(address aggregator) external view returns (uint256);
49
+ function getTxBaseFee(
50
+ address aggregator
51
+ ) external view returns (uint256);
44
52
 
45
53
  /// @notice Deprecated, is now a no-op
46
54
  /// @notice Set the tx base fee (in approximate L1 gas) for aggregator
@@ -6,6 +6,4 @@ pragma solidity >=0.4.21 <0.9.0;
6
6
 
7
7
  /// @title Disabled precompile, formerly used to register BLS public keys.
8
8
  /// @notice Precompiled contract that exists in every Arbitrum chain at 0x0000000000000000000000000000000000000067.
9
- interface ArbBLS {
10
-
11
- }
9
+ interface ArbBLS {}
@@ -21,21 +21,15 @@ interface ArbDebug {
21
21
  // Events that exist for testing log creation and pricing
22
22
  event Basic(bool flag, bytes32 indexed value);
23
23
  event Mixed(
24
- bool indexed flag,
25
- bool not,
26
- bytes32 indexed value,
27
- address conn,
28
- address indexed caller
24
+ bool indexed flag, bool not, bytes32 indexed value, address conn, address indexed caller
29
25
  );
30
26
  event Store(
31
- bool indexed flag,
32
- address indexed field,
33
- uint24 number,
34
- bytes32 value,
35
- bytes store
27
+ bool indexed flag, address indexed field, uint24 number, bytes32 value, bytes store
36
28
  );
37
29
 
38
- function customRevert(uint64 number) external pure;
30
+ function customRevert(
31
+ uint64 number
32
+ ) external pure;
39
33
 
40
34
  function panic() external;
41
35
 
@@ -12,18 +12,15 @@ pragma solidity >=0.4.21 <0.9.0;
12
12
  /// Precompiled contract that exists in every Arbitrum chain at 0x0000000000000000000000000000000000000068.
13
13
  interface ArbFunctionTable {
14
14
  /// @notice Reverts since the table is empty
15
- function upload(bytes calldata buf) external;
15
+ function upload(
16
+ bytes calldata buf
17
+ ) external;
16
18
 
17
19
  /// @notice Returns the empty table's size, which is 0
18
- function size(address addr) external view returns (uint256);
20
+ function size(
21
+ address addr
22
+ ) external view returns (uint256);
19
23
 
20
24
  /// @notice No-op
21
- function get(address addr, uint256 index)
22
- external
23
- view
24
- returns (
25
- uint256,
26
- bool,
27
- uint256
28
- );
25
+ function get(address addr, uint256 index) external view returns (uint256, bool, uint256);
29
26
  }
@@ -19,17 +19,9 @@ interface ArbGasInfo {
19
19
  /// per ArbGas congestion,
20
20
  /// per ArbGas total
21
21
  /// )
22
- function getPricesInWeiWithAggregator(address aggregator)
23
- external
24
- view
25
- returns (
26
- uint256,
27
- uint256,
28
- uint256,
29
- uint256,
30
- uint256,
31
- uint256
32
- );
22
+ function getPricesInWeiWithAggregator(
23
+ address aggregator
24
+ ) external view returns (uint256, uint256, uint256, uint256, uint256, uint256);
33
25
 
34
26
  /// @notice Get gas prices. Uses the caller's preferred aggregator, or the default if the caller doesn't have a preferred one.
35
27
  /// @return return gas prices in wei
@@ -44,47 +36,21 @@ interface ArbGasInfo {
44
36
  function getPricesInWei()
45
37
  external
46
38
  view
47
- returns (
48
- uint256,
49
- uint256,
50
- uint256,
51
- uint256,
52
- uint256,
53
- uint256
54
- );
39
+ returns (uint256, uint256, uint256, uint256, uint256, uint256);
55
40
 
56
41
  /// @notice Get prices in ArbGas for the supplied aggregator
57
42
  /// @return (per L2 tx, per L1 calldata byte, per storage allocation)
58
- function getPricesInArbGasWithAggregator(address aggregator)
59
- external
60
- view
61
- returns (
62
- uint256,
63
- uint256,
64
- uint256
65
- );
43
+ function getPricesInArbGasWithAggregator(
44
+ address aggregator
45
+ ) external view returns (uint256, uint256, uint256);
66
46
 
67
47
  /// @notice Get prices in ArbGas. Assumes the callers preferred validator, or the default if caller doesn't have a preferred one.
68
48
  /// @return (per L2 tx, per L1 calldata byte, per storage allocation)
69
- function getPricesInArbGas()
70
- external
71
- view
72
- returns (
73
- uint256,
74
- uint256,
75
- uint256
76
- );
49
+ function getPricesInArbGas() external view returns (uint256, uint256, uint256);
77
50
 
78
51
  /// @notice Get the gas accounting parameters. `gasPoolMax` is always zero, as the exponential pricing model has no such notion.
79
52
  /// @return (speedLimitPerSecond, gasPoolMax, maxTxGasLimit)
80
- function getGasAccountingParams()
81
- external
82
- view
83
- returns (
84
- uint256,
85
- uint256,
86
- uint256
87
- );
53
+ function getGasAccountingParams() external view returns (uint256, uint256, uint256);
88
54
 
89
55
  /// @notice Get the minimum gas price needed for a tx to succeed
90
56
  function getMinimumGasPrice() external view returns (uint256);
@@ -8,8 +8,12 @@ pragma solidity >=0.4.21 <0.9.0;
8
8
  /// @notice Precompiled contract that exists in every Arbitrum chain at 0x0000000000000000000000000000000000000065.
9
9
  interface ArbInfo {
10
10
  /// @notice Retrieves an account's balance
11
- function getBalance(address account) external view returns (uint256);
11
+ function getBalance(
12
+ address account
13
+ ) external view returns (uint256);
12
14
 
13
15
  /// @notice Retrieves a contract's deployed code
14
- function getCode(address account) external view returns (bytes memory);
16
+ function getCode(
17
+ address account
18
+ ) external view returns (bytes memory);
15
19
  }
@@ -12,40 +12,61 @@ pragma solidity >=0.4.21 <0.9.0;
12
12
  * - ArbOS upgrades happen with the rest of the system rather than being independent
13
13
  * - Exemptions to address aliasing are no longer offered. Exemptions were intended to support backward compatibility for contracts deployed before aliasing was introduced, but no exemptions were ever requested.
14
14
  * Precompiled contract that exists in every Arbitrum chain at 0x0000000000000000000000000000000000000070.
15
- **/
15
+ *
16
+ */
16
17
  interface ArbOwner {
17
18
  /// @notice Add account as a chain owner
18
- function addChainOwner(address newOwner) external;
19
+ function addChainOwner(
20
+ address newOwner
21
+ ) external;
19
22
 
20
23
  /// @notice Remove account from the list of chain owners
21
- function removeChainOwner(address ownerToRemove) external;
24
+ function removeChainOwner(
25
+ address ownerToRemove
26
+ ) external;
22
27
 
23
28
  /// @notice See if the user is a chain owner
24
- function isChainOwner(address addr) external view returns (bool);
29
+ function isChainOwner(
30
+ address addr
31
+ ) external view returns (bool);
25
32
 
26
33
  /// @notice Retrieves the list of chain owners
27
34
  function getAllChainOwners() external view returns (address[] memory);
28
35
 
29
36
  /// @notice Set how slowly ArbOS updates its estimate of the L1 basefee
30
- function setL1BaseFeeEstimateInertia(uint64 inertia) external;
37
+ function setL1BaseFeeEstimateInertia(
38
+ uint64 inertia
39
+ ) external;
31
40
 
32
41
  /// @notice Set the L2 basefee directly, bypassing the pool calculus
33
- function setL2BaseFee(uint256 priceInWei) external;
42
+ function setL2BaseFee(
43
+ uint256 priceInWei
44
+ ) external;
34
45
 
35
46
  /// @notice Set the minimum basefee needed for a transaction to succeed
36
- function setMinimumL2BaseFee(uint256 priceInWei) external;
47
+ function setMinimumL2BaseFee(
48
+ uint256 priceInWei
49
+ ) external;
37
50
 
38
51
  /// @notice Set the computational speed limit for the chain
39
- function setSpeedLimit(uint64 limit) external;
52
+ function setSpeedLimit(
53
+ uint64 limit
54
+ ) external;
40
55
 
41
56
  /// @notice Set the maximum size a tx (and block) can be
42
- function setMaxTxGasLimit(uint64 limit) external;
57
+ function setMaxTxGasLimit(
58
+ uint64 limit
59
+ ) external;
43
60
 
44
61
  /// @notice Set the L2 gas pricing inertia
45
- function setL2GasPricingInertia(uint64 sec) external;
62
+ function setL2GasPricingInertia(
63
+ uint64 sec
64
+ ) external;
46
65
 
47
66
  /// @notice Set the L2 gas backlog tolerance
48
- function setL2GasBacklogTolerance(uint64 sec) external;
67
+ function setL2GasBacklogTolerance(
68
+ uint64 sec
69
+ ) external;
49
70
 
50
71
  /// @notice Get the network fee collector
51
72
  function getNetworkFeeAccount() external view returns (address);
@@ -54,59 +75,91 @@ interface ArbOwner {
54
75
  function getInfraFeeAccount() external view returns (address);
55
76
 
56
77
  /// @notice Set the network fee collector
57
- function setNetworkFeeAccount(address newNetworkFeeAccount) external;
78
+ function setNetworkFeeAccount(
79
+ address newNetworkFeeAccount
80
+ ) external;
58
81
 
59
82
  /// @notice Set the infrastructure fee collector
60
- function setInfraFeeAccount(address newInfraFeeAccount) external;
83
+ function setInfraFeeAccount(
84
+ address newInfraFeeAccount
85
+ ) external;
61
86
 
62
87
  /// @notice Upgrades ArbOS to the requested version at the requested timestamp
63
88
  function scheduleArbOSUpgrade(uint64 newVersion, uint64 timestamp) external;
64
89
 
65
90
  /// @notice Sets equilibration units parameter for L1 price adjustment algorithm
66
- function setL1PricingEquilibrationUnits(uint256 equilibrationUnits) external;
91
+ function setL1PricingEquilibrationUnits(
92
+ uint256 equilibrationUnits
93
+ ) external;
67
94
 
68
95
  /// @notice Sets inertia parameter for L1 price adjustment algorithm
69
- function setL1PricingInertia(uint64 inertia) external;
96
+ function setL1PricingInertia(
97
+ uint64 inertia
98
+ ) external;
70
99
 
71
100
  /// @notice Sets reward recipient address for L1 price adjustment algorithm
72
- function setL1PricingRewardRecipient(address recipient) external;
101
+ function setL1PricingRewardRecipient(
102
+ address recipient
103
+ ) external;
73
104
 
74
105
  /// @notice Sets reward amount for L1 price adjustment algorithm, in wei per unit
75
- function setL1PricingRewardRate(uint64 weiPerUnit) external;
106
+ function setL1PricingRewardRate(
107
+ uint64 weiPerUnit
108
+ ) external;
76
109
 
77
110
  /// @notice Set how much ArbOS charges per L1 gas spent on transaction data.
78
- function setL1PricePerUnit(uint256 pricePerUnit) external;
111
+ function setL1PricePerUnit(
112
+ uint256 pricePerUnit
113
+ ) external;
79
114
 
80
115
  /// @notice Sets the base charge (in L1 gas) attributed to each data batch in the calldata pricer
81
- function setPerBatchGasCharge(int64 cost) external;
116
+ function setPerBatchGasCharge(
117
+ int64 cost
118
+ ) external;
82
119
 
83
120
  /**
84
121
  * @notice Sets the Brotli compression level used for fast compression
85
122
  * Available in ArbOS version 12 with default level as 1
86
123
  */
87
- function setBrotliCompressionLevel(uint64 level) external;
124
+ function setBrotliCompressionLevel(
125
+ uint64 level
126
+ ) external;
88
127
 
89
128
  /// @notice Sets the cost amortization cap in basis points
90
- function setAmortizedCostCapBips(uint64 cap) external;
129
+ function setAmortizedCostCapBips(
130
+ uint64 cap
131
+ ) external;
91
132
 
92
133
  /// @notice Releases surplus funds from L1PricerFundsPoolAddress for use
93
- function releaseL1PricerSurplusFunds(uint256 maxWeiToRelease) external returns (uint256);
134
+ function releaseL1PricerSurplusFunds(
135
+ uint256 maxWeiToRelease
136
+ ) external returns (uint256);
94
137
 
95
138
  /// @notice Sets the amount of ink 1 gas buys
96
139
  /// @param price the conversion rate (must fit in a uint24)
97
- function setInkPrice(uint32 price) external;
140
+ function setInkPrice(
141
+ uint32 price
142
+ ) external;
98
143
 
99
144
  /// @notice Sets the maximum depth (in wasm words) a wasm stack may grow
100
- function setWasmMaxStackDepth(uint32 depth) external;
145
+ function setWasmMaxStackDepth(
146
+ uint32 depth
147
+ ) external;
101
148
 
102
149
  /// @notice Sets the number of free wasm pages a tx gets
103
- function setWasmFreePages(uint16 pages) external;
150
+ function setWasmFreePages(
151
+ uint16 pages
152
+ ) external;
104
153
 
105
154
  /// @notice Sets the base cost of each additional wasm page
106
- function setWasmPageGas(uint16 gas) external;
155
+ function setWasmPageGas(
156
+ uint16 gas
157
+ ) external;
107
158
 
108
159
  /// @notice Sets the maximum number of pages a wasm may allocate
109
- function setWasmPageLimit(uint16 limit) external;
160
+ function setWasmPageLimit(
161
+ uint16 limit
162
+ ) external;
110
163
 
111
164
  /// @notice Sets the minimum costs to invoke a program
112
165
  /// @param gas amount of gas paid in increments of 256 when not the program is not cached
@@ -115,25 +168,39 @@ interface ArbOwner {
115
168
 
116
169
  /// @notice Sets the linear adjustment made to program init costs.
117
170
  /// @param percent the adjustment (100% = no adjustment).
118
- function setWasmInitCostScalar(uint64 percent) external;
171
+ function setWasmInitCostScalar(
172
+ uint64 percent
173
+ ) external;
119
174
 
120
175
  /// @notice Sets the number of days after which programs deactivate
121
- function setWasmExpiryDays(uint16 _days) external;
176
+ function setWasmExpiryDays(
177
+ uint16 _days
178
+ ) external;
122
179
 
123
180
  /// @notice Sets the age a program must be to perform a keepalive
124
- function setWasmKeepaliveDays(uint16 _days) external;
181
+ function setWasmKeepaliveDays(
182
+ uint16 _days
183
+ ) external;
125
184
 
126
185
  /// @notice Sets the number of extra programs ArbOS caches during a given block
127
- function setWasmBlockCacheSize(uint16 count) external;
186
+ function setWasmBlockCacheSize(
187
+ uint16 count
188
+ ) external;
128
189
 
129
190
  /// @notice Adds account as a wasm cache manager
130
- function addWasmCacheManager(address manager) external;
191
+ function addWasmCacheManager(
192
+ address manager
193
+ ) external;
131
194
 
132
195
  /// @notice Removes account from the list of wasm cache managers
133
- function removeWasmCacheManager(address manager) external;
196
+ function removeWasmCacheManager(
197
+ address manager
198
+ ) external;
134
199
 
135
200
  /// @notice Sets serialized chain config in ArbOS state
136
- function setChainConfig(string calldata chainConfig) external;
201
+ function setChainConfig(
202
+ string calldata chainConfig
203
+ ) external;
137
204
 
138
205
  /// Emitted when a successful call is made to this precompile
139
206
  event OwnerActs(bytes4 indexed method, address indexed owner, bytes data);
@@ -8,14 +8,18 @@ pragma solidity >=0.4.21 <0.9.0;
8
8
  /// @notice Precompiled contract that exists in every Arbitrum chain at 0x000000000000000000000000000000000000006b.
9
9
  interface ArbOwnerPublic {
10
10
  /// @notice See if the user is a chain owner
11
- function isChainOwner(address addr) external view returns (bool);
11
+ function isChainOwner(
12
+ address addr
13
+ ) external view returns (bool);
12
14
 
13
15
  /**
14
16
  * @notice Rectify the list of chain owners
15
17
  * If successful, emits ChainOwnerRectified event
16
18
  * Available in ArbOS version 11
17
19
  */
18
- function rectifyChainOwner(address ownerToRectify) external;
20
+ function rectifyChainOwner(
21
+ address ownerToRectify
22
+ ) external;
19
23
 
20
24
  /// @notice Retrieves the list of chain owners
21
25
  function getAllChainOwners() external view returns (address[] memory);
@@ -15,7 +15,9 @@ interface ArbRetryableTx {
15
15
  * @param ticketId unique identifier of retryable message: keccak256(keccak256(ArbchainId, inbox-sequence-number), uint(0) )
16
16
  * @return txId that the redeem attempt will have
17
17
  */
18
- function redeem(bytes32 ticketId) external returns (bytes32);
18
+ function redeem(
19
+ bytes32 ticketId
20
+ ) external returns (bytes32);
19
21
 
20
22
  /**
21
23
  * @notice Return the minimum lifetime of redeemable txn.
@@ -28,7 +30,9 @@ interface ArbRetryableTx {
28
30
  * @param ticketId unique ticket identifier
29
31
  * @return timestamp for ticket's deadline
30
32
  */
31
- function getTimeout(bytes32 ticketId) external view returns (uint256);
33
+ function getTimeout(
34
+ bytes32 ticketId
35
+ ) external view returns (uint256);
32
36
 
33
37
  /**
34
38
  * @notice Adds one lifetime period to the life of ticketId.
@@ -38,7 +42,9 @@ interface ArbRetryableTx {
38
42
  * @param ticketId unique ticket identifier
39
43
  * @return new timeout of ticketId
40
44
  */
41
- function keepalive(bytes32 ticketId) external returns (uint256);
45
+ function keepalive(
46
+ bytes32 ticketId
47
+ ) external returns (uint256);
42
48
 
43
49
  /**
44
50
  * @notice Return the beneficiary of ticketId.
@@ -46,14 +52,18 @@ interface ArbRetryableTx {
46
52
  * @param ticketId unique ticket identifier
47
53
  * @return address of beneficiary for ticket
48
54
  */
49
- function getBeneficiary(bytes32 ticketId) external view returns (address);
55
+ function getBeneficiary(
56
+ bytes32 ticketId
57
+ ) external view returns (address);
50
58
 
51
59
  /**
52
60
  * @notice Cancel ticketId and refund its callvalue to its beneficiary.
53
61
  * Revert if ticketId doesn't exist, or if called by anyone other than ticketId's beneficiary.
54
62
  * @param ticketId unique ticket identifier
55
63
  */
56
- function cancel(bytes32 ticketId) external;
64
+ function cancel(
65
+ bytes32 ticketId
66
+ ) external;
57
67
 
58
68
  /**
59
69
  * @notice Gets the redeemer of the current retryable redeem attempt.
@@ -18,12 +18,5 @@ interface ArbStatistics {
18
18
  function getStats()
19
19
  external
20
20
  view
21
- returns (
22
- uint256,
23
- uint256,
24
- uint256,
25
- uint256,
26
- uint256,
27
- uint256
28
- );
21
+ returns (uint256, uint256, uint256, uint256, uint256, uint256);
29
22
  }
@@ -20,7 +20,9 @@ interface ArbSys {
20
20
  * @notice Get Arbitrum block hash (reverts unless currentBlockNum-256 <= arbBlockNum < currentBlockNum)
21
21
  * @return block hash
22
22
  */
23
- function arbBlockHash(uint256 arbBlockNum) external view returns (bytes32);
23
+ function arbBlockHash(
24
+ uint256 arbBlockNum
25
+ ) external view returns (bytes32);
24
26
 
25
27
  /**
26
28
  * @notice Gets the rollup's unique chain identifier
@@ -53,10 +55,10 @@ interface ArbSys {
53
55
  * @param unused argument no longer used
54
56
  * @return aliased sender address
55
57
  */
56
- function mapL1SenderContractAddressToL2Alias(address sender, address unused)
57
- external
58
- pure
59
- returns (address);
58
+ function mapL1SenderContractAddressToL2Alias(
59
+ address sender,
60
+ address unused
61
+ ) external pure returns (address);
60
62
 
61
63
  /**
62
64
  * @notice check if the caller (of this caller of this) is an aliased L1 contract address
@@ -76,7 +78,9 @@ interface ArbSys {
76
78
  * @param destination recipient address on L1
77
79
  * @return unique identifier for this L2-to-L1 transaction.
78
80
  */
79
- function withdrawEth(address destination) external payable returns (uint256);
81
+ function withdrawEth(
82
+ address destination
83
+ ) external payable returns (uint256);
80
84
 
81
85
  /**
82
86
  * @notice Send a transaction to L1
@@ -86,10 +90,10 @@ interface ArbSys {
86
90
  * @param data (optional) calldata for L1 contract call
87
91
  * @return a unique identifier for this L2-to-L1 transaction.
88
92
  */
89
- function sendTxToL1(address destination, bytes calldata data)
90
- external
91
- payable
92
- returns (uint256);
93
+ function sendTxToL1(
94
+ address destination,
95
+ bytes calldata data
96
+ ) external payable returns (uint256);
93
97
 
94
98
  /**
95
99
  * @notice Get send Merkle tree state
@@ -100,11 +104,7 @@ interface ArbSys {
100
104
  function sendMerkleTreeState()
101
105
  external
102
106
  view
103
- returns (
104
- uint256 size,
105
- bytes32 root,
106
- bytes32[] memory partials
107
- );
107
+ returns (uint256 size, bytes32 root, bytes32[] memory partials);
108
108
 
109
109
  /**
110
110
  * @notice creates a send txn from L2 to L1
@@ -143,9 +143,7 @@ interface ArbSys {
143
143
  * @param position = (level << 192) + leaf
144
144
  */
145
145
  event SendMerkleUpdate(
146
- uint256 indexed reserved,
147
- bytes32 indexed hash,
148
- uint256 indexed position
146
+ uint256 indexed reserved, bytes32 indexed hash, uint256 indexed position
149
147
  );
150
148
 
151
149
  error InvalidBlockNumber(uint256 requested, uint256 current);