@0xsequence/catapult 1.3.17 → 1.5.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 (232) hide show
  1. package/README.md +276 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +1 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/index.d.ts +1 -0
  6. package/dist/commands/index.d.ts.map +1 -1
  7. package/dist/commands/index.js +1 -0
  8. package/dist/commands/index.js.map +1 -1
  9. package/dist/commands/list.d.ts.map +1 -1
  10. package/dist/commands/list.js +12 -0
  11. package/dist/commands/list.js.map +1 -1
  12. package/dist/commands/provenance.d.ts +3 -0
  13. package/dist/commands/provenance.d.ts.map +1 -0
  14. package/dist/commands/provenance.js +138 -0
  15. package/dist/commands/provenance.js.map +1 -0
  16. package/dist/lib/__tests__/deployer.spec.js +118 -1
  17. package/dist/lib/__tests__/deployer.spec.js.map +1 -1
  18. package/dist/lib/__tests__/network-loader.spec.js.map +1 -1
  19. package/dist/lib/__tests__/provenance.spec.d.ts +2 -0
  20. package/dist/lib/__tests__/provenance.spec.d.ts.map +1 -0
  21. package/dist/lib/__tests__/provenance.spec.js +205 -0
  22. package/dist/lib/__tests__/provenance.spec.js.map +1 -0
  23. package/dist/lib/contracts/__tests__/repository.spec.js +243 -0
  24. package/dist/lib/contracts/__tests__/repository.spec.js.map +1 -1
  25. package/dist/lib/contracts/repository.d.ts +9 -1
  26. package/dist/lib/contracts/repository.d.ts.map +1 -1
  27. package/dist/lib/contracts/repository.js +93 -7
  28. package/dist/lib/contracts/repository.js.map +1 -1
  29. package/dist/lib/core/__tests__/assert-action.spec.d.ts +2 -0
  30. package/dist/lib/core/__tests__/assert-action.spec.d.ts.map +1 -0
  31. package/dist/lib/core/__tests__/assert-action.spec.js +377 -0
  32. package/dist/lib/core/__tests__/assert-action.spec.js.map +1 -0
  33. package/dist/lib/core/__tests__/engine.spec.js +80 -0
  34. package/dist/lib/core/__tests__/engine.spec.js.map +1 -1
  35. package/dist/lib/core/__tests__/loader.spec.js +29 -0
  36. package/dist/lib/core/__tests__/loader.spec.js.map +1 -1
  37. package/dist/lib/core/__tests__/resolver.spec.js +405 -0
  38. package/dist/lib/core/__tests__/resolver.spec.js.map +1 -1
  39. package/dist/lib/core/__tests__/sign-actions.spec.d.ts +2 -0
  40. package/dist/lib/core/__tests__/sign-actions.spec.d.ts.map +1 -0
  41. package/dist/lib/core/__tests__/sign-actions.spec.js +128 -0
  42. package/dist/lib/core/__tests__/sign-actions.spec.js.map +1 -0
  43. package/dist/lib/core/__tests__/signer.spec.d.ts +2 -0
  44. package/dist/lib/core/__tests__/signer.spec.d.ts.map +1 -0
  45. package/dist/lib/core/__tests__/signer.spec.js +40 -0
  46. package/dist/lib/core/__tests__/signer.spec.js.map +1 -0
  47. package/dist/lib/core/context.d.ts +3 -2
  48. package/dist/lib/core/context.d.ts.map +1 -1
  49. package/dist/lib/core/context.js +3 -2
  50. package/dist/lib/core/context.js.map +1 -1
  51. package/dist/lib/core/engine.d.ts +4 -0
  52. package/dist/lib/core/engine.d.ts.map +1 -1
  53. package/dist/lib/core/engine.js +206 -0
  54. package/dist/lib/core/engine.js.map +1 -1
  55. package/dist/lib/core/loader.d.ts +1 -0
  56. package/dist/lib/core/loader.d.ts.map +1 -1
  57. package/dist/lib/core/loader.js +6 -1
  58. package/dist/lib/core/loader.js.map +1 -1
  59. package/dist/lib/core/resolver.d.ts +2 -0
  60. package/dist/lib/core/resolver.d.ts.map +1 -1
  61. package/dist/lib/core/resolver.js +89 -0
  62. package/dist/lib/core/resolver.js.map +1 -1
  63. package/dist/lib/core/signer.d.ts +7 -0
  64. package/dist/lib/core/signer.d.ts.map +1 -0
  65. package/dist/lib/core/signer.js +60 -0
  66. package/dist/lib/core/signer.js.map +1 -0
  67. package/dist/lib/deployer.d.ts.map +1 -1
  68. package/dist/lib/deployer.js +21 -4
  69. package/dist/lib/deployer.js.map +1 -1
  70. package/dist/lib/index.d.ts +1 -0
  71. package/dist/lib/index.d.ts.map +1 -1
  72. package/dist/lib/index.js +1 -0
  73. package/dist/lib/index.js.map +1 -1
  74. package/dist/lib/parsers/__tests__/job.spec.js +77 -0
  75. package/dist/lib/parsers/__tests__/job.spec.js.map +1 -1
  76. package/dist/lib/parsers/__tests__/source.spec.d.ts +2 -0
  77. package/dist/lib/parsers/__tests__/source.spec.d.ts.map +1 -0
  78. package/dist/lib/parsers/__tests__/source.spec.js +158 -0
  79. package/dist/lib/parsers/__tests__/source.spec.js.map +1 -0
  80. package/dist/lib/parsers/index.d.ts +1 -0
  81. package/dist/lib/parsers/index.d.ts.map +1 -1
  82. package/dist/lib/parsers/index.js +1 -0
  83. package/dist/lib/parsers/index.js.map +1 -1
  84. package/dist/lib/parsers/job.d.ts.map +1 -1
  85. package/dist/lib/parsers/job.js +11 -0
  86. package/dist/lib/parsers/job.js.map +1 -1
  87. package/dist/lib/parsers/source.d.ts +4 -0
  88. package/dist/lib/parsers/source.d.ts.map +1 -0
  89. package/dist/lib/parsers/source.js +107 -0
  90. package/dist/lib/parsers/source.js.map +1 -0
  91. package/dist/lib/provenance.d.ts +34 -0
  92. package/dist/lib/provenance.d.ts.map +1 -0
  93. package/dist/lib/provenance.js +694 -0
  94. package/dist/lib/provenance.js.map +1 -0
  95. package/dist/lib/types/actions.d.ts +42 -2
  96. package/dist/lib/types/actions.d.ts.map +1 -1
  97. package/dist/lib/types/actions.js +4 -0
  98. package/dist/lib/types/actions.js.map +1 -1
  99. package/dist/lib/types/contracts.d.ts +3 -0
  100. package/dist/lib/types/contracts.d.ts.map +1 -1
  101. package/dist/lib/types/definitions.d.ts +1 -0
  102. package/dist/lib/types/definitions.d.ts.map +1 -1
  103. package/dist/lib/types/index.d.ts +1 -0
  104. package/dist/lib/types/index.d.ts.map +1 -1
  105. package/dist/lib/types/index.js +1 -0
  106. package/dist/lib/types/index.js.map +1 -1
  107. package/dist/lib/types/source.d.ts +26 -0
  108. package/dist/lib/types/source.d.ts.map +1 -0
  109. package/dist/lib/types/source.js +3 -0
  110. package/dist/lib/types/source.js.map +1 -0
  111. package/dist/lib/types/values.d.ts +33 -1
  112. package/dist/lib/types/values.d.ts.map +1 -1
  113. package/package.json +4 -1
  114. package/.eslintrc.json +0 -29
  115. package/.github/workflows/ci.yml +0 -181
  116. package/CONCEPT.md +0 -24
  117. package/contracts/checked-call.huff +0 -65
  118. package/eslint.config.js +0 -48
  119. package/examples/jobs/guards-v1.yaml +0 -17
  120. package/examples/jobs/sequence-seq-0001-patch.yaml +0 -59
  121. package/examples/jobs/sequence-v1.yaml +0 -59
  122. package/examples/templates/sequence-factory-v1.yaml +0 -56
  123. package/jest.config.js +0 -25
  124. package/src/cli.ts +0 -17
  125. package/src/commands/common.ts +0 -61
  126. package/src/commands/dry.ts +0 -209
  127. package/src/commands/etherscan.ts +0 -360
  128. package/src/commands/index.ts +0 -5
  129. package/src/commands/list.ts +0 -249
  130. package/src/commands/run.ts +0 -146
  131. package/src/commands/utils.ts +0 -215
  132. package/src/index.ts +0 -67
  133. package/src/lib/__tests__/deployer-events.spec.ts +0 -338
  134. package/src/lib/__tests__/deployer.spec.ts +0 -2093
  135. package/src/lib/__tests__/network-loader.spec.ts +0 -150
  136. package/src/lib/__tests__/network-selection.spec.ts +0 -41
  137. package/src/lib/__tests__/network-utils.spec.ts +0 -230
  138. package/src/lib/artifacts/__tests__/fixtures/contract1.json +0 -19
  139. package/src/lib/artifacts/__tests__/fixtures/contract2.json +0 -19
  140. package/src/lib/artifacts/__tests__/fixtures/duplicate-name.json +0 -19
  141. package/src/lib/artifacts/__tests__/fixtures/nested/nested-contract.json +0 -18
  142. package/src/lib/artifacts/__tests__/fixtures/not-an-artifact.json +0 -8
  143. package/src/lib/artifacts/__tests__/fixtures/readme.txt +0 -2
  144. package/src/lib/contracts/__tests__/repository.spec.ts +0 -344
  145. package/src/lib/contracts/repository.ts +0 -313
  146. package/src/lib/core/__tests__/context.spec.ts +0 -37
  147. package/src/lib/core/__tests__/engine.spec.ts +0 -1889
  148. package/src/lib/core/__tests__/graph.spec.ts +0 -125
  149. package/src/lib/core/__tests__/json-integration.spec.ts +0 -425
  150. package/src/lib/core/__tests__/loader.spec.ts +0 -334
  151. package/src/lib/core/__tests__/multi-platform-verification.spec.ts +0 -406
  152. package/src/lib/core/__tests__/resolver.spec.ts +0 -2053
  153. package/src/lib/core/__tests__/static-action.spec.ts +0 -172
  154. package/src/lib/core/context.ts +0 -127
  155. package/src/lib/core/engine.ts +0 -1782
  156. package/src/lib/core/graph.ts +0 -252
  157. package/src/lib/core/loader.ts +0 -247
  158. package/src/lib/core/resolver.ts +0 -757
  159. package/src/lib/deployer.ts +0 -981
  160. package/src/lib/events/__tests__/event-system.spec.ts +0 -392
  161. package/src/lib/events/cli-adapter.ts +0 -369
  162. package/src/lib/events/emitter.ts +0 -62
  163. package/src/lib/events/index.ts +0 -3
  164. package/src/lib/events/types.ts +0 -520
  165. package/src/lib/index.ts +0 -14
  166. package/src/lib/network-loader.ts +0 -90
  167. package/src/lib/network-selection.ts +0 -73
  168. package/src/lib/network-utils.ts +0 -64
  169. package/src/lib/parsers/__tests__/buildinfo.spec.ts +0 -122
  170. package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-bytecode-buildinfo.json +0 -62
  171. package/src/lib/parsers/__tests__/fixtures/buildinfo/invalid-json.txt +0 -2
  172. package/src/lib/parsers/__tests__/fixtures/buildinfo/multi-contract-buildinfo.json +0 -89
  173. package/src/lib/parsers/__tests__/fixtures/buildinfo/no-contracts-buildinfo.json +0 -17
  174. package/src/lib/parsers/__tests__/fixtures/buildinfo/simple-buildinfo.json +0 -63
  175. package/src/lib/parsers/__tests__/fixtures/buildinfo/wrong-format.json +0 -4
  176. package/src/lib/parsers/__tests__/job.spec.ts +0 -358
  177. package/src/lib/parsers/__tests__/template.spec.ts +0 -111
  178. package/src/lib/parsers/artifact/__tests__/artifact.spec.ts +0 -117
  179. package/src/lib/parsers/artifact/__tests__/fixtures/empty-bytecode.json +0 -5
  180. package/src/lib/parsers/artifact/__tests__/fixtures/hardhat-artifact.json +0 -67
  181. package/src/lib/parsers/artifact/__tests__/fixtures/invalid-bytecode.json +0 -5
  182. package/src/lib/parsers/artifact/__tests__/fixtures/invalid-json.txt +0 -11
  183. package/src/lib/parsers/artifact/__tests__/fixtures/minimal-artifact.json +0 -5
  184. package/src/lib/parsers/artifact/__tests__/fixtures/missing-abi.json +0 -4
  185. package/src/lib/parsers/artifact/__tests__/fixtures/missing-bytecode.json +0 -11
  186. package/src/lib/parsers/artifact/__tests__/fixtures/missing-contract-name.json +0 -11
  187. package/src/lib/parsers/artifact/__tests__/fixtures/simple-artifact.json +0 -40
  188. package/src/lib/parsers/artifact/__tests__/fixtures/wrong-types.json +0 -7
  189. package/src/lib/parsers/artifact/foundry-1.2.ts +0 -72
  190. package/src/lib/parsers/artifact/index.ts +0 -27
  191. package/src/lib/parsers/artifact/types.ts +0 -9
  192. package/src/lib/parsers/buildinfo.ts +0 -127
  193. package/src/lib/parsers/constants.ts +0 -56
  194. package/src/lib/parsers/index.ts +0 -5
  195. package/src/lib/parsers/job.ts +0 -148
  196. package/src/lib/parsers/template.ts +0 -135
  197. package/src/lib/std/templates/arachnid-deterministic-deployment-proxy.yaml +0 -68
  198. package/src/lib/std/templates/assured-deployment.yaml +0 -46
  199. package/src/lib/std/templates/era-evm-predeploy.yaml +0 -35
  200. package/src/lib/std/templates/erc-2470.yaml +0 -70
  201. package/src/lib/std/templates/min-balance.yaml +0 -35
  202. package/src/lib/std/templates/nano-universal-deployer.yaml +0 -61
  203. package/src/lib/std/templates/raw-erc-2470.yaml +0 -62
  204. package/src/lib/std/templates/raw-nano-universal-deployer.yaml +0 -54
  205. package/src/lib/std/templates/raw-sequence-universal-deployer-2.yaml +0 -52
  206. package/src/lib/std/templates/sequence-universal-deployer-2.yaml +0 -61
  207. package/src/lib/types/__tests__/json-request-action.spec.ts +0 -243
  208. package/src/lib/types/__tests__/read-json-value.spec.ts +0 -278
  209. package/src/lib/types/__tests__/resolve-json-value.spec.ts +0 -769
  210. package/src/lib/types/actions.ts +0 -127
  211. package/src/lib/types/artifacts.ts +0 -21
  212. package/src/lib/types/buildinfo.ts +0 -116
  213. package/src/lib/types/conditions.ts +0 -50
  214. package/src/lib/types/contracts.ts +0 -23
  215. package/src/lib/types/definitions.ts +0 -70
  216. package/src/lib/types/index.ts +0 -8
  217. package/src/lib/types/network.ts +0 -33
  218. package/src/lib/types/project.ts +0 -9
  219. package/src/lib/types/task.ts +0 -9
  220. package/src/lib/types/values.ts +0 -150
  221. package/src/lib/utils/assertion.ts +0 -24
  222. package/src/lib/utils/validation.ts +0 -116
  223. package/src/lib/validation/contract-references.ts +0 -210
  224. package/src/lib/validation/index.ts +0 -1
  225. package/src/lib/verification/__tests__/etherscan.spec.ts +0 -710
  226. package/src/lib/verification/__tests__/sourcify.spec.ts +0 -288
  227. package/src/lib/verification/etherscan.ts +0 -547
  228. package/src/lib/verification/sourcify.ts +0 -248
  229. package/test_validation/artifacts/TestContract.json +0 -9
  230. package/test_validation/jobs/test-missing.yaml +0 -16
  231. package/test_validation/networks.yaml +0 -3
  232. package/tsconfig.json +0 -36
@@ -1,68 +0,0 @@
1
- # Similar to "nano-universal-deployer" but targets Arachnid's Deterministic Deployment Proxy
2
- # (a CREATE2 deployer available at 0x4e59… on every chain). The proxy call reverts when the
3
- # inner CREATE2 fails, so no additional assurance wrapper is needed.
4
- name: "arachnid-deterministic-deployment-proxy"
5
- type: "template"
6
- description: "Deploy contracts through Arachnid's Deterministic Deployment Proxy"
7
-
8
- arguments:
9
- creationCode:
10
- type: "bytes"
11
- description: "Creation code of the contract to deploy"
12
- salt:
13
- type: "bytes32"
14
- description: "Salt supplied to the proxy for CREATE2"
15
-
16
- returns:
17
- address:
18
- type: "address"
19
- description: "Address of the deployed contract"
20
-
21
- setup:
22
- skip_condition:
23
- - type: "contract-exists"
24
- arguments:
25
- address: "0x4e59b44847b379578588920ca78fbf26c0b4956c"
26
- actions:
27
- - type: "test-nicks-method"
28
- - type: "min-balance"
29
- arguments:
30
- address: "0x3fab184622dc19b6109349b94811493bf2a45362"
31
- balance: "10000000000000000"
32
- - type: "send-signed-transaction"
33
- arguments:
34
- transaction: |
35
- 0xf8a58085174876e800830186a08080b853604580600e600039806000f350fe7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a02222222222222222222222222222222222222222222222222222222222222222
36
-
37
- actions:
38
- - type: "send-transaction"
39
- arguments:
40
- to: "0x4e59b44847b379578588920ca78fbf26c0b4956c"
41
- data:
42
- type: "abi-pack"
43
- arguments:
44
- types:
45
- - "bytes32"
46
- - "bytes"
47
- values:
48
- - "{{salt}}"
49
- - "{{creationCode}}"
50
- gasMultiplier: 1.6
51
-
52
- skip_condition:
53
- - type: "contract-exists"
54
- arguments:
55
- address:
56
- type: "compute-create2"
57
- arguments:
58
- deployerAddress: "0x4e59b44847b379578588920ca78fbf26c0b4956c"
59
- salt: "{{salt}}"
60
- initCode: "{{creationCode}}"
61
-
62
- outputs:
63
- address:
64
- type: "compute-create2"
65
- arguments:
66
- deployerAddress: "0x4e59b44847b379578588920ca78fbf26c0b4956c"
67
- salt: "{{salt}}"
68
- initCode: "{{creationCode}}"
@@ -1,46 +0,0 @@
1
- # Wraps a factory call with a CREATE that runs a minimal assurance program.
2
- # Why: Some universal deployers/factories do not revert on low gas; gas estimation
3
- # can therefore succeed even when the inner deployment fails. This wrapper forces
4
- # the top-level transaction to revert if the target was not actually created,
5
- # making gas estimation accurate and avoiding silent failures.
6
- #
7
- # How: We use a contract creation (CREATE) to prepend arbitrary bytecode that:
8
- # - Receives (targetAddress, factoryAddress, callData)
9
- # - Performs the factory call
10
- # - Checks that code exists at targetAddress, reverting if not
11
- # This is implemented by the small Huff program `contracts/checked-call.huff`,
12
- # embedded below as bytecode. Using CREATE is the only way to execute arbitrary
13
- # code before the call data, hence the wrapping pattern.
14
- name: "assured-deployment"
15
- type: "template"
16
- description: "Wraps a factory call with a CREATE that runs a minimal assurance program"
17
-
18
- arguments:
19
- targetAddress:
20
- type: "address"
21
- description: "The address that is expected to exist after the factory call (e.g., CREATE2 result)"
22
- factoryAddress:
23
- type: "address"
24
- description: "The factory that will perform the deployment"
25
- callData:
26
- type: "bytes"
27
- description: "The encoded call to the factory (e.g., abi-encoded deploy(...))"
28
-
29
- actions:
30
- - type: "create-contract"
31
- arguments:
32
- data:
33
- type: "abi-pack"
34
- arguments:
35
- types:
36
- - "bytes"
37
- - "address"
38
- - "address"
39
- - "bytes"
40
- values:
41
- - "0x383d8039602c5160601c3d813b60295780806054380360548260405160601c5af150903b60295780fd5b80f3" # checked-call.huff
42
- - "{{targetAddress}}"
43
- - "{{factoryAddress}}"
44
- - "{{callData}}"
45
-
46
-
@@ -1,35 +0,0 @@
1
- # Calls the EVM predeploy manager to deploy preapproved contracts to ZK Era chains.
2
- # The ZKSync Era predeploy manager is 0x0000000000000000000000000000000000008014.
3
- # https://github.com/matter-labs/era-contracts/blob/540762151e3b030cac8ea274284b249f549e2c2a/system-contracts/contracts/EvmPredeploysManager.sol
4
- name: "era-evm-predeploy"
5
- type: "template"
6
- description: "Deploy an approved predeployed contract to the EVM"
7
-
8
- arguments:
9
- evmPredeployManager:
10
- type: "address"
11
- description: "The address of the EVM predeploy manager"
12
- address:
13
- type: "address"
14
- description: "The address of the predeployed contract to deploy"
15
- bytecode:
16
- type: "bytes"
17
- description: "The deployment bytecode of the predeployed contract to deploy"
18
-
19
- skip_condition:
20
- - type: "contract-exists"
21
- arguments:
22
- address: "{{address}}"
23
-
24
- actions:
25
- - name: "deploy"
26
- type: "send-transaction"
27
- arguments:
28
- to: "{{evmPredeployManager}}"
29
- data:
30
- type: "abi-encode"
31
- arguments:
32
- signature: "deployPredeployedContract(address,bytes)"
33
- values:
34
- - "{{address}}"
35
- - "{{bytecode}}"
@@ -1,70 +0,0 @@
1
- # Similar to "raw-erc-2470" but it
2
- # uses some extra logic, delivered as a create-contract action, that ensures that the top level call fails if the contract
3
- # fails to deploy. This ensures that the gas estimation is accurate and the transaction won't silently fail with out of gas.
4
- name: "erc-2470"
5
- type: "template"
6
-
7
- arguments:
8
- creationCode:
9
- type: "bytes"
10
- description: "The creation code of the contract to deploy"
11
- salt:
12
- type: "bytes32"
13
- description: "The salt for deployment"
14
-
15
- returns:
16
- address:
17
- type: "address"
18
- description: "The address of the deployed contract"
19
-
20
- setup:
21
- skip_condition:
22
- - type: "contract-exists"
23
- arguments:
24
- address: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
25
- actions:
26
- - type: "test-nicks-method"
27
- - type: "min-balance"
28
- arguments:
29
- address: "0xBb6e024b9cFFACB947A71991E386681B1Cd1477D"
30
- balance: "24700000000000000"
31
- - type: "send-signed-transaction"
32
- arguments:
33
- transaction: |
34
- 0xf9016c8085174876e8008303c4d88080b90154608060405234801561001057600080fd5b50610134806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80634af63f0214602d575b600080fd5b60cf60048036036040811015604157600080fd5b810190602081018135640100000000811115605b57600080fd5b820183602082011115606c57600080fd5b80359060200191846001830284011164010000000083111715608d57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925060eb915050565b604080516001600160a01b039092168252519081900360200190f35b6000818351602085016000f5939250505056fea26469706673582212206b44f8a82cb6b156bfcc3dc6aadd6df4eefd204bc928a4397fd15dacf6d5320564736f6c634300060200331b83247000822470
35
-
36
- actions:
37
- - type: "assured-deployment"
38
- arguments:
39
- targetAddress:
40
- type: "compute-create2"
41
- arguments:
42
- deployerAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
43
- salt: "{{salt}}"
44
- initCode: "{{creationCode}}"
45
- factoryAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
46
- callData:
47
- type: "abi-encode"
48
- arguments:
49
- signature: "deploy(bytes,bytes32)"
50
- values:
51
- - "{{creationCode}}"
52
- - "{{salt}}"
53
-
54
- skip_condition:
55
- - type: "contract-exists"
56
- arguments:
57
- address:
58
- type: "compute-create2"
59
- arguments:
60
- deployerAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
61
- salt: "{{salt}}"
62
- initCode: "{{creationCode}}"
63
-
64
- outputs:
65
- address:
66
- type: "compute-create2"
67
- arguments:
68
- deployerAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
69
- salt: "{{salt}}"
70
- initCode: "{{creationCode}}"
@@ -1,35 +0,0 @@
1
- name: "min-balance"
2
- type: "template"
3
- description: "Ensures a minimum balance for any given address"
4
-
5
- arguments:
6
- address:
7
- type: "address"
8
- description: "The address to check the balance of"
9
- balance:
10
- type: "uint256"
11
- description: "The minimum balance required"
12
-
13
- actions:
14
- - type: "send-transaction"
15
- arguments:
16
- to: "{{address}}"
17
- value:
18
- type: "basic-arithmetic"
19
- arguments:
20
- operation: "sub"
21
- values:
22
- - "{{balance}}"
23
- - type: "read-balance"
24
- arguments:
25
- address: "{{address}}"
26
-
27
- skip_condition:
28
- - type: "basic-arithmetic"
29
- arguments:
30
- operation: "gte"
31
- values:
32
- - type: "read-balance"
33
- arguments:
34
- address: "{{address}}"
35
- - "{{balance}}"
@@ -1,61 +0,0 @@
1
- # Similar to "raw-nano-universal-deployer" but it
2
- # uses some extra logic, delivered as a create-contract action, that ensures that the top level call fails if the contract
3
- # fails to deploy. This ensures that the gas estimation is accurate and the transaction won't silently fail with out of gas.
4
- name: "nano-universal-deployer"
5
- type: "template"
6
-
7
- arguments:
8
- creationCode:
9
- type: "bytes"
10
- description: "The creation code of the contract to deploy"
11
-
12
- returns:
13
- address:
14
- type: "address"
15
- description: "The address of the deployed contract"
16
-
17
- setup:
18
- skip_condition:
19
- - type: "contract-exists"
20
- arguments:
21
- address: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
22
- actions:
23
- - type: "test-nicks-method"
24
- - type: "min-balance"
25
- arguments:
26
- address: "0x9c5a87452d4FAC0cbd53BDCA580b20A45526B3AB"
27
- balance: "21700000000140000"
28
- - type: "send-signed-transaction"
29
- arguments:
30
- transaction: |
31
- 0xf9010880852416b84e01830222e08080b8b66080604052348015600f57600080fd5b50609980601d6000396000f3fe60a06020601f369081018290049091028201604052608081815260009260609284918190838280828437600092018290525084519495509392505060208401905034f5604080516001600160a01b0383168152905191935081900360200190a0505000fea26469706673582212205a310755225e3c740b2f013fb6343f4c205e7141fcdf15947f5f0e0e818727fb64736f6c634300060a00331ca01820182018201820182018201820182018201820182018201820182018201820a01820182018201820182018201820182018201820182018201820182018201820
32
-
33
- actions:
34
- - type: "assured-deployment"
35
- arguments:
36
- targetAddress:
37
- type: "compute-create2"
38
- arguments:
39
- deployerAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
40
- salt: "0x0000000000000000000000000000000000000000000000000000000000000000"
41
- initCode: "{{creationCode}}"
42
- factoryAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
43
- callData: "{{creationCode}}"
44
-
45
- skip_condition:
46
- - type: "contract-exists"
47
- arguments:
48
- address:
49
- type: "compute-create2"
50
- arguments:
51
- deployerAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
52
- salt: "0x0000000000000000000000000000000000000000000000000000000000000000"
53
- initCode: "{{creationCode}}"
54
-
55
- outputs:
56
- address:
57
- type: "compute-create2"
58
- arguments:
59
- deployerAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
60
- salt: "0x0000000000000000000000000000000000000000000000000000000000000000"
61
- initCode: "{{creationCode}}"
@@ -1,62 +0,0 @@
1
- name: "raw-erc-2470"
2
- type: "template"
3
-
4
- arguments:
5
- creationCode:
6
- type: "bytes"
7
- description: "The creation code of the contract to deploy"
8
- salt:
9
- type: "bytes32"
10
- description: "The salt for deployment"
11
-
12
- returns:
13
- address:
14
- type: "address"
15
- description: "The address of the deployed contract"
16
-
17
- setup:
18
- skip_condition:
19
- - type: "contract-exists"
20
- arguments:
21
- address: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
22
- actions:
23
- - type: "test-nicks-method"
24
- - type: "min-balance"
25
- arguments:
26
- address: "0xBb6e024b9cFFACB947A71991E386681B1Cd1477D"
27
- balance: "24700000000000000"
28
- - type: "send-signed-transaction"
29
- arguments:
30
- transaction: |
31
- 0xf9016c8085174876e8008303c4d88080b90154608060405234801561001057600080fd5b50610134806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80634af63f0214602d575b600080fd5b60cf60048036036040811015604157600080fd5b810190602081018135640100000000811115605b57600080fd5b820183602082011115606c57600080fd5b80359060200191846001830284011164010000000083111715608d57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925060eb915050565b604080516001600160a01b039092168252519081900360200190f35b6000818351602085016000f5939250505056fea26469706673582212206b44f8a82cb6b156bfcc3dc6aadd6df4eefd204bc928a4397fd15dacf6d5320564736f6c634300060200331b83247000822470
32
-
33
- actions:
34
- - type: "send-transaction"
35
- arguments:
36
- to: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
37
- data:
38
- type: "abi-encode"
39
- arguments:
40
- signature: "deploy(bytes,bytes32)"
41
- values:
42
- - "{{creationCode}}"
43
- - "{{salt}}"
44
- gasMultiplier: 1.6
45
-
46
- skip_condition:
47
- - type: "contract-exists"
48
- arguments:
49
- address:
50
- type: "compute-create2"
51
- arguments:
52
- deployerAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
53
- salt: "{{salt}}"
54
- initCode: "{{creationCode}}"
55
-
56
- outputs:
57
- address:
58
- type: "compute-create2"
59
- arguments:
60
- deployerAddress: "0xce0042B868300000d44A59004Da54A005ffdcf9f"
61
- salt: "{{salt}}"
62
- initCode: "{{creationCode}}"
@@ -1,54 +0,0 @@
1
- name: "raw-nano-universal-deployer"
2
- type: "template"
3
- description: "Deploy a contract using the Nano Universal Deployer"
4
-
5
- arguments:
6
- creationCode:
7
- type: "bytes"
8
- description: "The creation code of the contract to deploy"
9
-
10
- returns:
11
- address:
12
- type: "address"
13
- description: "The address of the deployed contract"
14
-
15
- setup:
16
- skip_condition:
17
- - type: "contract-exists"
18
- arguments:
19
- address: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
20
- actions:
21
- - type: "test-nicks-method"
22
- - type: "min-balance"
23
- arguments:
24
- address: "0x9c5a87452d4FAC0cbd53BDCA580b20A45526B3AB"
25
- balance: "21700000000140000"
26
- - type: "send-signed-transaction"
27
- arguments:
28
- transaction: |
29
- 0xf9010880852416b84e01830222e08080b8b66080604052348015600f57600080fd5b50609980601d6000396000f3fe60a06020601f369081018290049091028201604052608081815260009260609284918190838280828437600092018290525084519495509392505060208401905034f5604080516001600160a01b0383168152905191935081900360200190a0505000fea26469706673582212205a310755225e3c740b2f013fb6343f4c205e7141fcdf15947f5f0e0e818727fb64736f6c634300060a00331ca01820182018201820182018201820182018201820182018201820182018201820a01820182018201820182018201820182018201820182018201820182018201820
30
-
31
- actions:
32
- - type: "send-transaction"
33
- arguments:
34
- to: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
35
- data: "{{creationCode}}"
36
- gasMultiplier: 1.6
37
-
38
- skip_condition:
39
- - type: "contract-exists"
40
- arguments:
41
- address:
42
- type: "compute-create2"
43
- arguments:
44
- deployerAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
45
- salt: "0x0000000000000000000000000000000000000000000000000000000000000000"
46
- initCode: "{{creationCode}}"
47
-
48
- outputs:
49
- address:
50
- type: "compute-create2"
51
- arguments:
52
- deployerAddress: "0x1B926fBB24A9F78DCDd3272f2d86F5D0660E59c0"
53
- salt: "0x0000000000000000000000000000000000000000000000000000000000000000"
54
- initCode: "{{creationCode}}"
@@ -1,52 +0,0 @@
1
- name: "raw-sequence-universal-deployer-2"
2
- type: "template"
3
- description: "Deploy a contract using the Sequence Universal Deployer v2"
4
-
5
- arguments:
6
- creationCode:
7
- type: "bytes"
8
- description: "The creation code of the contract to deploy"
9
- salt:
10
- type: "bytes32"
11
- description: "The salt for deployment"
12
-
13
- returns:
14
- address:
15
- type: "address"
16
- description: "The address of the deployed contract"
17
-
18
- setup:
19
- - type: "nano-universal-deployer"
20
- arguments:
21
- creationCode: "0x608060405234801561001057600080fd5b5061013d806100206000396000f3fe60806040526004361061001e5760003560e01c80639c4ae2d014610023575b600080fd5b6100cb6004803603604081101561003957600080fd5b81019060208101813564010000000081111561005457600080fd5b82018360208201111561006657600080fd5b8035906020019184600183028401116401000000008311171561008857600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506100cd915050565b005b60008183516020850134f56040805173ffffffffffffffffffffffffffffffffffffffff83168152905191925081900360200190a050505056fea264697066735822122033609f614f03931b92d88c309d698449bb77efcd517328d341fa4f923c5d8c7964736f6c63430007060033"
22
-
23
- actions:
24
- - type: "send-transaction"
25
- arguments:
26
- to: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
27
- data:
28
- type: "abi-encode"
29
- arguments:
30
- signature: "deploy(bytes,uint256)"
31
- values:
32
- - "{{creationCode}}"
33
- - "{{salt}}"
34
- gasMultiplier: 1.6
35
-
36
- skip_condition:
37
- - type: "contract-exists"
38
- arguments:
39
- address:
40
- type: "compute-create2"
41
- arguments:
42
- deployerAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
43
- salt: "{{salt}}"
44
- initCode: "{{creationCode}}"
45
-
46
- outputs:
47
- address:
48
- type: "compute-create2"
49
- arguments:
50
- deployerAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
51
- salt: "{{salt}}"
52
- initCode: "{{creationCode}}"
@@ -1,61 +0,0 @@
1
- # Similar to "raw-sequence-universal-deployer-2" but it
2
- # uses some extra logic, delivered as a create-contract action, that ensures that the top level call fails if the contract
3
- # fails to deploy. This ensures that the gas estimation is accurate and the transaction won't silently fail with out of gas.
4
- name: "sequence-universal-deployer-2"
5
- type: "template"
6
- description: "Deploy a contract using the Sequence Universal Deployer v2"
7
-
8
- arguments:
9
- creationCode:
10
- type: "bytes"
11
- description: "The creation code of the contract to deploy"
12
- salt:
13
- type: "bytes32"
14
- description: "The salt for deployment"
15
-
16
- returns:
17
- address:
18
- type: "address"
19
- description: "The address of the deployed contract"
20
-
21
- setup:
22
- - type: "nano-universal-deployer"
23
- arguments:
24
- creationCode: "0x608060405234801561001057600080fd5b5061013d806100206000396000f3fe60806040526004361061001e5760003560e01c80639c4ae2d014610023575b600080fd5b6100cb6004803603604081101561003957600080fd5b81019060208101813564010000000081111561005457600080fd5b82018360208201111561006657600080fd5b8035906020019184600183028401116401000000008311171561008857600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955050913592506100cd915050565b005b60008183516020850134f56040805173ffffffffffffffffffffffffffffffffffffffff83168152905191925081900360200190a050505056fea264697066735822122033609f614f03931b92d88c309d698449bb77efcd517328d341fa4f923c5d8c7964736f6c63430007060033"
25
-
26
- actions:
27
- - type: "assured-deployment"
28
- arguments:
29
- targetAddress:
30
- type: "compute-create2"
31
- arguments:
32
- deployerAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
33
- salt: "{{salt}}"
34
- initCode: "{{creationCode}}"
35
- factoryAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
36
- callData:
37
- type: "abi-encode"
38
- arguments:
39
- signature: "deploy(bytes,uint256)"
40
- values:
41
- - "{{creationCode}}"
42
- - "{{salt}}"
43
-
44
-
45
- skip_condition:
46
- - type: "contract-exists"
47
- arguments:
48
- address:
49
- type: "compute-create2"
50
- arguments:
51
- deployerAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
52
- salt: "{{salt}}"
53
- initCode: "{{creationCode}}"
54
-
55
- outputs:
56
- address:
57
- type: "compute-create2"
58
- arguments:
59
- deployerAddress: "0x8A5Bc19e22D6aD55a2c763B93A75d09F321fe764"
60
- salt: "{{salt}}"
61
- initCode: "{{creationCode}}"