@arbitrum/nitro-contracts 1.2.1 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) 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/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
  5. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
  6. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
  7. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
  8. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
  9. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
  10. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
  11. package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
  12. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  13. package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  14. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  15. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  16. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  17. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  18. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
  19. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
  20. package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
  21. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  22. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  23. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
  24. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  25. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  26. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  27. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
  28. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
  29. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
  30. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
  31. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
  32. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
  33. package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
  34. package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  35. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
  36. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
  37. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
  38. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
  39. package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
  40. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
  41. package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
  42. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
  43. package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
  44. package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
  45. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
  46. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
  47. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
  48. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
  49. package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
  50. package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
  51. package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
  52. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
  53. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +2 -2
  54. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +1 -1
  55. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.json +2 -2
  56. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +1 -1
  57. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +2 -2
  58. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +1 -1
  59. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +1 -1
  60. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
  61. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
  62. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
  63. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
  64. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
  65. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
  66. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
  67. package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
  68. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
  69. package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
  70. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
  71. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
  72. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  73. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
  74. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
  75. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +1 -1
  76. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +2 -2
  77. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +4 -0
  78. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.json +36 -0
  79. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
  80. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
  81. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +2 -2
  82. package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
  83. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
  84. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +1 -1
  85. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +2 -2
  86. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +1 -1
  87. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +2 -2
  88. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
  89. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
  90. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
  91. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
  92. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
  93. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +48 -0
  94. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
  95. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +2 -2
  96. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
  97. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
  98. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +50 -2
  99. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
  100. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
  101. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
  102. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
  103. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
  104. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
  105. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
  106. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
  107. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
  108. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
  109. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
  110. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
  111. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
  112. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
  113. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
  114. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
  115. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
  116. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
  117. package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
  118. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
  119. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +2 -2
  120. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
  121. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
  122. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
  123. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
  124. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
  125. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
  126. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +1 -1
  127. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +1 -1
  128. package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +1 -1
  129. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
  130. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +2 -2
  131. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
  132. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
  133. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +2 -2
  134. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
  135. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
  136. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +2 -2
  137. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
  138. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +2 -2
  139. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +1 -1
  140. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +1 -1
  141. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +2 -2
  142. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
  143. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +2 -2
  144. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +1 -1
  145. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +2 -2
  146. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
  147. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +2 -2
  148. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
  149. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +2 -2
  150. package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
  151. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
  152. package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
  153. package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
  154. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
  155. package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
  156. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
  157. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
  158. package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
  159. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
  160. package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
  161. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
  162. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
  163. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
  164. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
  165. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
  166. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
  167. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
  168. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
  169. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
  170. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
  171. package/package.json +11 -6
  172. package/src/challenge/ChallengeLib.sol +0 -45
  173. package/src/challenge/ChallengeManager.sol +2 -5
  174. package/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +29 -0
  175. package/src/osp/IOneStepProofEntry.sol +10 -0
  176. package/src/osp/OneStepProofEntry.sol +47 -0
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/7de232cc334b063903f669aaef0a3136.json"
3
+ "buildInfo": "../../../build-info/239eb2848a7b622fb5b92eeb732909cf.json"
4
4
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbitrum/nitro-contracts",
3
- "version": "1.2.1",
3
+ "version": "1.3.0",
4
4
  "description": "Layer 2 precompiles and rollup for Arbitrum Nitro",
5
5
  "author": "Offchain Labs, Inc.",
6
6
  "license": "BUSL-1.1",
@@ -18,6 +18,8 @@
18
18
  "url": "https://github.com/offchainlabs/nitro-contracts/issues"
19
19
  },
20
20
  "scripts": {
21
+ "audit:ci": "audit-ci --config ./audit-ci.jsonc",
22
+ "audit:fix": "yarn-audit-fix",
21
23
  "prepublishOnly": "hardhat clean && forge clean && hardhat compile && yarn build:forge:yul",
22
24
  "build:all": "yarn build && yarn build:forge",
23
25
  "build": "hardhat compile",
@@ -39,7 +41,8 @@
39
41
  "postinstall": "patch-package",
40
42
  "deploy-factory": "hardhat run scripts/deployment.ts",
41
43
  "deploy-eth-rollup": "hardhat run scripts/createEthRollup.ts",
42
- "deploy-erc20-rollup": "hardhat run scripts/createERC20Rollup.ts"
44
+ "deploy-erc20-rollup": "hardhat run scripts/createERC20Rollup.ts",
45
+ "create-rollup-testnode": "hardhat run scripts/local-deployment/deployCreatorAndCreateRollup.ts"
43
46
  },
44
47
  "dependencies": {
45
48
  "@offchainlabs/upgrade-executor": "1.1.0-beta.0",
@@ -63,14 +66,15 @@
63
66
  "@typescript-eslint/eslint-plugin": "^5.14.0",
64
67
  "@typescript-eslint/eslint-plugin-tslint": "^5.27.1",
65
68
  "@typescript-eslint/parser": "^5.14.0",
69
+ "audit-ci": "^6.6.1",
66
70
  "chai": "^4.3.4",
67
71
  "dotenv": "^16.3.1",
68
72
  "eslint": "^8.23.1",
69
73
  "eslint-config-prettier": "^8.3.0",
70
74
  "eslint-plugin-mocha": "^9.0.0",
71
75
  "eslint-plugin-prettier": "^4.0.0",
72
- "ethereum-waffle": "^3.4.0",
73
- "ethers": "^5.5.2",
76
+ "ethereum-waffle": "^4.0.10",
77
+ "ethers": "^5.5.4",
74
78
  "hardhat": "^2.17.2",
75
79
  "hardhat-deploy": "^0.11.37",
76
80
  "hardhat-gas-reporter": "^1.0.9",
@@ -83,7 +87,8 @@
83
87
  "solidity-coverage": "^0.8.4",
84
88
  "ts-node": "^10.4.0",
85
89
  "tslint": "^6.1.3",
86
- "typechain": "^8.0.0",
87
- "typescript": "^4.5.4"
90
+ "typechain": "^8.3.2",
91
+ "typescript": "^4.5.4",
92
+ "yarn-audit-fix": "^10.0.7"
88
93
  }
89
94
  }
@@ -48,51 +48,6 @@ library ChallengeLib {
48
48
  return challenge.timeUsedSinceLastMove() > challenge.current.timeLeft;
49
49
  }
50
50
 
51
- function getStartMachineHash(bytes32 globalStateHash, bytes32 wasmModuleRoot)
52
- internal
53
- pure
54
- returns (bytes32)
55
- {
56
- // Start the value stack with the function call ABI for the entrypoint
57
- Value[] memory startingValues = new Value[](3);
58
- startingValues[0] = ValueLib.newRefNull();
59
- startingValues[1] = ValueLib.newI32(0);
60
- startingValues[2] = ValueLib.newI32(0);
61
- ValueArray memory valuesArray = ValueArray({inner: startingValues});
62
- ValueStack memory values = ValueStack({proved: valuesArray, remainingHash: 0});
63
- ValueStack memory internalStack;
64
- StackFrameWindow memory frameStack;
65
-
66
- Machine memory mach = Machine({
67
- status: MachineStatus.RUNNING,
68
- valueStack: values,
69
- internalStack: internalStack,
70
- frameStack: frameStack,
71
- globalStateHash: globalStateHash,
72
- moduleIdx: 0,
73
- functionIdx: 0,
74
- functionPc: 0,
75
- modulesRoot: wasmModuleRoot
76
- });
77
- return mach.hash();
78
- }
79
-
80
- function getEndMachineHash(MachineStatus status, bytes32 globalStateHash)
81
- internal
82
- pure
83
- returns (bytes32)
84
- {
85
- if (status == MachineStatus.FINISHED) {
86
- return keccak256(abi.encodePacked("Machine finished:", globalStateHash));
87
- } else if (status == MachineStatus.ERRORED) {
88
- return keccak256(abi.encodePacked("Machine errored:"));
89
- } else if (status == MachineStatus.TOO_FAR) {
90
- return keccak256(abi.encodePacked("Machine too far:"));
91
- } else {
92
- revert("BAD_BLOCK_STATUS");
93
- }
94
- }
95
-
96
51
  function extractChallengeSegment(SegmentSelection calldata selection)
97
52
  internal
98
53
  pure
@@ -233,11 +233,8 @@ contract ChallengeManager is DelegateCallAware, IChallengeManager {
233
233
  }
234
234
 
235
235
  bytes32[] memory segments = new bytes32[](2);
236
- segments[0] = ChallengeLib.getStartMachineHash(
237
- globalStateHashes[0],
238
- challenge.wasmModuleRoot
239
- );
240
- segments[1] = ChallengeLib.getEndMachineHash(machineStatuses[1], globalStateHashes[1]);
236
+ segments[0] = osp.getStartMachineHash(globalStateHashes[0], challenge.wasmModuleRoot);
237
+ segments[1] = osp.getEndMachineHash(machineStatuses[1], globalStateHashes[1]);
241
238
 
242
239
  challenge.mode = ChallengeLib.ChallengeMode.EXECUTION;
243
240
 
@@ -0,0 +1,29 @@
1
+ // Copyright 2021-2022, Offchain Labs, Inc.
2
+ // For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
3
+ // SPDX-License-Identifier: BUSL-1.1
4
+
5
+ pragma solidity ^0.8.0;
6
+
7
+ import "../precompiles/ArbSys.sol";
8
+
9
+ contract PendingBlkTimeAndNrAdvanceCheck {
10
+ uint256 immutable deployedAt;
11
+ uint256 immutable deployedAtBlock;
12
+ ArbSys constant ARB_SYS = ArbSys(address(100));
13
+
14
+ constructor() {
15
+ deployedAt = block.timestamp;
16
+ deployedAtBlock = ARB_SYS.arbBlockNumber();
17
+ }
18
+
19
+ function isAdvancing() external {
20
+ require(block.timestamp > deployedAt, "Time didn't advance");
21
+ require(ARB_SYS.arbBlockNumber() > deployedAtBlock, "Block didn't advance");
22
+ }
23
+
24
+ function checkArbBlockHashReturnsLatest(bytes32 expected) external {
25
+ bytes32 gotBlockHash = ARB_SYS.arbBlockHash(ARB_SYS.arbBlockNumber() - 1);
26
+ require(gotBlockHash != bytes32(0), "ZERO_BLOCK_HASH");
27
+ require(gotBlockHash == expected, "WRONG_BLOCK_HASH");
28
+ }
29
+ }
@@ -11,6 +11,16 @@ library OneStepProofEntryLib {
11
11
  }
12
12
 
13
13
  interface IOneStepProofEntry {
14
+ function getStartMachineHash(bytes32 globalStateHash, bytes32 wasmModuleRoot)
15
+ external
16
+ pure
17
+ returns (bytes32);
18
+
19
+ function getEndMachineHash(MachineStatus status, bytes32 globalStateHash)
20
+ external
21
+ pure
22
+ returns (bytes32);
23
+
14
24
  function proveOneStep(
15
25
  ExecutionContext calldata execCtx,
16
26
  uint256 machineStep,
@@ -31,6 +31,53 @@ contract OneStepProofEntry is IOneStepProofEntry {
31
31
  proverHostIo = proverHostIo_;
32
32
  }
33
33
 
34
+ // Copied from ChallengeLib.sol
35
+ function getStartMachineHash(bytes32 globalStateHash, bytes32 wasmModuleRoot)
36
+ external
37
+ pure
38
+ returns (bytes32)
39
+ {
40
+ // Start the value stack with the function call ABI for the entrypoint
41
+ Value[] memory startingValues = new Value[](3);
42
+ startingValues[0] = ValueLib.newRefNull();
43
+ startingValues[1] = ValueLib.newI32(0);
44
+ startingValues[2] = ValueLib.newI32(0);
45
+ ValueArray memory valuesArray = ValueArray({inner: startingValues});
46
+ ValueStack memory values = ValueStack({proved: valuesArray, remainingHash: 0});
47
+ ValueStack memory internalStack;
48
+ StackFrameWindow memory frameStack;
49
+
50
+ Machine memory mach = Machine({
51
+ status: MachineStatus.RUNNING,
52
+ valueStack: values,
53
+ internalStack: internalStack,
54
+ frameStack: frameStack,
55
+ globalStateHash: globalStateHash,
56
+ moduleIdx: 0,
57
+ functionIdx: 0,
58
+ functionPc: 0,
59
+ modulesRoot: wasmModuleRoot
60
+ });
61
+ return mach.hash();
62
+ }
63
+
64
+ // Copied from ChallengeLib.sol
65
+ function getEndMachineHash(MachineStatus status, bytes32 globalStateHash)
66
+ external
67
+ pure
68
+ returns (bytes32)
69
+ {
70
+ if (status == MachineStatus.FINISHED) {
71
+ return keccak256(abi.encodePacked("Machine finished:", globalStateHash));
72
+ } else if (status == MachineStatus.ERRORED) {
73
+ return keccak256(abi.encodePacked("Machine errored:"));
74
+ } else if (status == MachineStatus.TOO_FAR) {
75
+ return keccak256(abi.encodePacked("Machine too far:"));
76
+ } else {
77
+ revert("BAD_BLOCK_STATUS");
78
+ }
79
+ }
80
+
34
81
  function proveOneStep(
35
82
  ExecutionContext calldata execCtx,
36
83
  uint256 machineStep,