gate-evm-tools 1.0.27 → 1.0.31

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 (641) hide show
  1. package/README.md +16 -1
  2. package/bin/cli.js +3 -0
  3. package/bin/delivery.cjs +51 -0
  4. package/bin/manifest-bootstrap.js +4 -15
  5. package/bin/workflow.cjs +1 -1
  6. package/dist/commands/plan/file-store.d.ts.map +1 -0
  7. package/dist/commands/plan/generate-deployment.d.ts +48 -0
  8. package/dist/commands/plan/generate-deployment.d.ts.map +1 -0
  9. package/dist/commands/plan/generate-deployment.js +211 -0
  10. package/dist/commands/plan/generate-deployment.js.map +1 -0
  11. package/dist/commands/plan/helpers.d.ts.map +1 -0
  12. package/dist/commands/plan/index.d.ts +3 -0
  13. package/dist/commands/plan/index.d.ts.map +1 -0
  14. package/dist/commands/plan/index.js +88 -0
  15. package/dist/commands/plan/index.js.map +1 -0
  16. package/dist/commands/sync.js +1 -1
  17. package/dist/commands/sync.js.map +1 -1
  18. package/dist/core/BytecodeChecker.d.ts.map +1 -1
  19. package/dist/core/BytecodeChecker.js +27 -8
  20. package/dist/core/BytecodeChecker.js.map +1 -1
  21. package/dist/core/preparation/artifacts.d.ts +2 -0
  22. package/dist/core/preparation/artifacts.d.ts.map +1 -1
  23. package/dist/core/preparation/artifacts.js +9 -3
  24. package/dist/core/preparation/artifacts.js.map +1 -1
  25. package/dist/core/preparation/evm.d.ts +38 -2
  26. package/dist/core/preparation/evm.d.ts.map +1 -1
  27. package/dist/core/preparation/evm.js +104 -32
  28. package/dist/core/preparation/evm.js.map +1 -1
  29. package/dist/core/preparation/evmManifestSync.d.ts +63 -0
  30. package/dist/core/preparation/evmManifestSync.d.ts.map +1 -0
  31. package/dist/core/preparation/evmManifestSync.js +146 -0
  32. package/dist/core/preparation/evmManifestSync.js.map +1 -0
  33. package/dist/core/preparation/index.d.ts +40 -2
  34. package/dist/core/preparation/index.d.ts.map +1 -1
  35. package/dist/core/preparation/index.js +3 -3
  36. package/dist/core/preparation/index.js.map +1 -1
  37. package/dist/core/preparation/manifest.d.ts +15 -3
  38. package/dist/core/preparation/manifest.d.ts.map +1 -1
  39. package/dist/core/preparation/manifest.js +21 -26
  40. package/dist/core/preparation/manifest.js.map +1 -1
  41. package/dist/core/preparation/normalize.d.ts.map +1 -1
  42. package/dist/core/preparation/normalize.js +14 -9
  43. package/dist/core/preparation/normalize.js.map +1 -1
  44. package/dist/core/preparation/types.d.ts +7 -2
  45. package/dist/core/preparation/types.d.ts.map +1 -1
  46. package/dist/custody/hardhat-runtime.d.ts.map +1 -1
  47. package/dist/custody/hardhat-runtime.js +2 -0
  48. package/dist/custody/hardhat-runtime.js.map +1 -1
  49. package/dist/custody/hardhat.d.ts +1 -0
  50. package/dist/custody/hardhat.d.ts.map +1 -1
  51. package/dist/custody/hardhat.js +1 -0
  52. package/dist/custody/hardhat.js.map +1 -1
  53. package/dist/custody/index.d.ts +1 -0
  54. package/dist/custody/index.d.ts.map +1 -1
  55. package/dist/custody/index.js +1 -0
  56. package/dist/custody/index.js.map +1 -1
  57. package/dist/custody/provider-wait.d.ts +13 -0
  58. package/dist/custody/provider-wait.d.ts.map +1 -0
  59. package/dist/custody/provider-wait.js +78 -0
  60. package/dist/custody/provider-wait.js.map +1 -0
  61. package/dist/delivery/policy.d.ts +6 -0
  62. package/dist/delivery/policy.d.ts.map +1 -0
  63. package/dist/delivery/policy.js +24 -0
  64. package/dist/delivery/policy.js.map +1 -0
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +5 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/sync/index.d.ts +15 -0
  69. package/dist/sync/index.d.ts.map +1 -1
  70. package/dist/sync/index.js +8 -0
  71. package/dist/sync/index.js.map +1 -1
  72. package/dist/workflow/index.d.ts +6 -1
  73. package/dist/workflow/index.d.ts.map +1 -1
  74. package/dist/workflow/index.js +4 -0
  75. package/dist/workflow/index.js.map +1 -1
  76. package/dist-cjs/core/BytecodeChecker.js +526 -0
  77. package/dist-cjs/core/BytecodeChecker.js.map +1 -0
  78. package/dist-cjs/core/legacyProxyArtifact.js +42 -0
  79. package/dist-cjs/core/legacyProxyArtifact.js.map +1 -0
  80. package/dist-cjs/core/preparation/artifacts.js +11 -4
  81. package/dist-cjs/core/preparation/artifacts.js.map +1 -1
  82. package/dist-cjs/core/preparation/evm.js +105 -32
  83. package/dist-cjs/core/preparation/evm.js.map +1 -1
  84. package/dist-cjs/core/preparation/evmManifestSync.js +155 -0
  85. package/dist-cjs/core/preparation/evmManifestSync.js.map +1 -0
  86. package/dist-cjs/core/preparation/index.js +3 -3
  87. package/dist-cjs/core/preparation/index.js.map +1 -1
  88. package/dist-cjs/core/preparation/manifest.js +23 -28
  89. package/dist-cjs/core/preparation/manifest.js.map +1 -1
  90. package/dist-cjs/core/preparation/normalize.js +14 -9
  91. package/dist-cjs/core/preparation/normalize.js.map +1 -1
  92. package/dist-cjs/custody/hardhat-runtime.js +2 -0
  93. package/dist-cjs/custody/hardhat-runtime.js.map +1 -1
  94. package/dist-cjs/custody/hardhat.js +3 -1
  95. package/dist-cjs/custody/hardhat.js.map +1 -1
  96. package/dist-cjs/custody/index.js +3 -1
  97. package/dist-cjs/custody/index.js.map +1 -1
  98. package/dist-cjs/custody/provider-wait.js +81 -0
  99. package/dist-cjs/custody/provider-wait.js.map +1 -0
  100. package/dist-cjs/delivery/policy.js +29 -0
  101. package/dist-cjs/delivery/policy.js.map +1 -0
  102. package/dist-cjs/sync/index.js +8 -0
  103. package/dist-cjs/sync/index.js.map +1 -1
  104. package/dist-cjs/workflow/index.js +12 -1
  105. package/dist-cjs/workflow/index.js.map +1 -1
  106. package/dist-runtime/config/hardhatAdapters.d.ts +2 -0
  107. package/dist-runtime/config/hardhatAdapters.js +8 -0
  108. package/dist-runtime/config/hardhatAdapters.js.map +1 -1
  109. package/dist-runtime/config/networks.d.ts +25 -1
  110. package/dist-runtime/config/networks.js +8 -2
  111. package/dist-runtime/config/networks.js.map +1 -1
  112. package/dist-runtime/config/openzeppelin.d.ts +2 -1
  113. package/dist-runtime/config/openzeppelin.js +2 -19
  114. package/dist-runtime/config/openzeppelin.js.map +1 -1
  115. package/dist-runtime/delivery/abi.d.ts +14 -0
  116. package/dist-runtime/delivery/abi.js +161 -0
  117. package/dist-runtime/delivery/abi.js.map +1 -0
  118. package/dist-runtime/delivery/aggregate-bootstrap.d.ts +12 -0
  119. package/dist-runtime/delivery/aggregate-bootstrap.js +40 -0
  120. package/dist-runtime/delivery/aggregate-bootstrap.js.map +1 -0
  121. package/dist-runtime/delivery/aggregate-channel.d.ts +28 -0
  122. package/dist-runtime/delivery/aggregate-channel.js +155 -0
  123. package/dist-runtime/delivery/aggregate-channel.js.map +1 -0
  124. package/dist-runtime/delivery/aggregate-inputs.d.ts +168 -0
  125. package/dist-runtime/delivery/aggregate-inputs.js +57 -0
  126. package/dist-runtime/delivery/aggregate-inputs.js.map +1 -0
  127. package/dist-runtime/delivery/aggregate-source.d.ts +25 -0
  128. package/dist-runtime/delivery/aggregate-source.js +79 -0
  129. package/dist-runtime/delivery/aggregate-source.js.map +1 -0
  130. package/dist-runtime/delivery/aggregate-worker.d.ts +1 -0
  131. package/dist-runtime/delivery/aggregate-worker.js +191 -0
  132. package/dist-runtime/delivery/aggregate-worker.js.map +1 -0
  133. package/dist-runtime/delivery/aggregate.d.ts +51 -0
  134. package/dist-runtime/delivery/aggregate.js +190 -0
  135. package/dist-runtime/delivery/aggregate.js.map +1 -0
  136. package/dist-runtime/delivery/bindings.d.ts +21 -0
  137. package/dist-runtime/delivery/bindings.js +53 -0
  138. package/dist-runtime/delivery/bindings.js.map +1 -0
  139. package/dist-runtime/delivery/check-code.d.ts +19 -0
  140. package/dist-runtime/delivery/check-code.js +63 -0
  141. package/dist-runtime/delivery/check-code.js.map +1 -0
  142. package/dist-runtime/delivery/closure-format.d.ts +77 -0
  143. package/dist-runtime/delivery/closure-format.js +225 -0
  144. package/dist-runtime/delivery/closure-format.js.map +1 -0
  145. package/dist-runtime/delivery/codec-pin.d.ts +2 -0
  146. package/dist-runtime/delivery/codec-pin.js +7 -0
  147. package/dist-runtime/delivery/codec-pin.js.map +1 -0
  148. package/dist-runtime/delivery/codec.d.ts +19 -0
  149. package/dist-runtime/delivery/codec.js +73 -0
  150. package/dist-runtime/delivery/codec.js.map +1 -0
  151. package/dist-runtime/delivery/compiler-dependency-pins.d.ts +7 -0
  152. package/dist-runtime/delivery/compiler-dependency-pins.js +1689 -0
  153. package/dist-runtime/delivery/compiler-dependency-pins.js.map +1 -0
  154. package/dist-runtime/delivery/compiler-files.d.ts +40 -0
  155. package/dist-runtime/delivery/compiler-files.js +220 -0
  156. package/dist-runtime/delivery/compiler-files.js.map +1 -0
  157. package/dist-runtime/delivery/compiler-io.d.ts +2 -0
  158. package/dist-runtime/delivery/compiler-io.js +13 -0
  159. package/dist-runtime/delivery/compiler-io.js.map +1 -0
  160. package/dist-runtime/delivery/compiler-pins.d.ts +10 -0
  161. package/dist-runtime/delivery/compiler-pins.js +147 -0
  162. package/dist-runtime/delivery/compiler-pins.js.map +1 -0
  163. package/dist-runtime/delivery/compiler.d.ts +188 -0
  164. package/dist-runtime/delivery/compiler.js +850 -0
  165. package/dist-runtime/delivery/compiler.js.map +1 -0
  166. package/dist-runtime/delivery/config.d.ts +48 -0
  167. package/dist-runtime/delivery/config.js +99 -0
  168. package/dist-runtime/delivery/config.js.map +1 -0
  169. package/dist-runtime/delivery/configuration-definition.d.ts +22 -0
  170. package/dist-runtime/delivery/configuration-definition.js +316 -0
  171. package/dist-runtime/delivery/configuration-definition.js.map +1 -0
  172. package/dist-runtime/delivery/configuration-hre.d.ts +17 -0
  173. package/dist-runtime/delivery/configuration-hre.js +198 -0
  174. package/dist-runtime/delivery/configuration-hre.js.map +1 -0
  175. package/dist-runtime/delivery/configuration-runtime.d.ts +36 -0
  176. package/dist-runtime/delivery/configuration-runtime.js +248 -0
  177. package/dist-runtime/delivery/configuration-runtime.js.map +1 -0
  178. package/dist-runtime/delivery/configuration.d.ts +35 -0
  179. package/dist-runtime/delivery/configuration.js +83 -0
  180. package/dist-runtime/delivery/configuration.js.map +1 -0
  181. package/dist-runtime/delivery/create2.d.ts +3 -0
  182. package/dist-runtime/delivery/create2.js +48 -0
  183. package/dist-runtime/delivery/create2.js.map +1 -0
  184. package/dist-runtime/delivery/custom-closure.d.ts +27 -0
  185. package/dist-runtime/delivery/custom-closure.js +818 -0
  186. package/dist-runtime/delivery/custom-closure.js.map +1 -0
  187. package/dist-runtime/delivery/custom-format.d.ts +35 -0
  188. package/dist-runtime/delivery/custom-format.js +383 -0
  189. package/dist-runtime/delivery/custom-format.js.map +1 -0
  190. package/dist-runtime/delivery/custom.d.ts +32 -0
  191. package/dist-runtime/delivery/custom.js +158 -0
  192. package/dist-runtime/delivery/custom.js.map +1 -0
  193. package/dist-runtime/delivery/data.d.ts +7 -0
  194. package/dist-runtime/delivery/data.js +86 -0
  195. package/dist-runtime/delivery/data.js.map +1 -0
  196. package/dist-runtime/delivery/development.d.ts +91 -0
  197. package/dist-runtime/delivery/development.js +395 -0
  198. package/dist-runtime/delivery/development.js.map +1 -0
  199. package/dist-runtime/delivery/engine.d.ts +9 -0
  200. package/dist-runtime/delivery/engine.js +23 -0
  201. package/dist-runtime/delivery/engine.js.map +1 -0
  202. package/dist-runtime/delivery/eoa-observation.d.ts +43 -0
  203. package/dist-runtime/delivery/eoa-observation.js +145 -0
  204. package/dist-runtime/delivery/eoa-observation.js.map +1 -0
  205. package/dist-runtime/delivery/eoa-signed.d.ts +2 -0
  206. package/dist-runtime/delivery/eoa-signed.js +74 -0
  207. package/dist-runtime/delivery/eoa-signed.js.map +1 -0
  208. package/dist-runtime/delivery/eoa.d.ts +81 -0
  209. package/dist-runtime/delivery/eoa.js +274 -0
  210. package/dist-runtime/delivery/eoa.js.map +1 -0
  211. package/dist-runtime/delivery/execution-db.d.ts +20 -0
  212. package/dist-runtime/delivery/execution-db.js +153 -0
  213. package/dist-runtime/delivery/execution-db.js.map +1 -0
  214. package/dist-runtime/delivery/execution-files.d.ts +9 -0
  215. package/dist-runtime/delivery/execution-files.js +138 -0
  216. package/dist-runtime/delivery/execution-files.js.map +1 -0
  217. package/dist-runtime/delivery/execution-model.d.ts +56 -0
  218. package/dist-runtime/delivery/execution-model.js +66 -0
  219. package/dist-runtime/delivery/execution-model.js.map +1 -0
  220. package/dist-runtime/delivery/execution-store.d.ts +48 -0
  221. package/dist-runtime/delivery/execution-store.js +361 -0
  222. package/dist-runtime/delivery/execution-store.js.map +1 -0
  223. package/dist-runtime/delivery/existing-code.d.ts +37 -0
  224. package/dist-runtime/delivery/existing-code.js +75 -0
  225. package/dist-runtime/delivery/existing-code.js.map +1 -0
  226. package/dist-runtime/delivery/export.d.ts +51 -0
  227. package/dist-runtime/delivery/export.js +69 -0
  228. package/dist-runtime/delivery/export.js.map +1 -0
  229. package/dist-runtime/delivery/forkAudit.d.ts +119 -0
  230. package/dist-runtime/delivery/forkAudit.js +473 -0
  231. package/dist-runtime/delivery/forkAudit.js.map +1 -0
  232. package/dist-runtime/delivery/hardhat.d.ts +3 -0
  233. package/dist-runtime/delivery/hardhat.js +45 -0
  234. package/dist-runtime/delivery/hardhat.js.map +1 -0
  235. package/dist-runtime/delivery/history-registration.d.ts +2 -0
  236. package/dist-runtime/delivery/history-registration.js +17 -0
  237. package/dist-runtime/delivery/history-registration.js.map +1 -0
  238. package/dist-runtime/delivery/identities.d.ts +22 -0
  239. package/dist-runtime/delivery/identities.js +97 -0
  240. package/dist-runtime/delivery/identities.js.map +1 -0
  241. package/dist-runtime/delivery/input-files.d.ts +5 -0
  242. package/dist-runtime/delivery/input-files.js +70 -0
  243. package/dist-runtime/delivery/input-files.js.map +1 -0
  244. package/dist-runtime/delivery/inputs.d.ts +62 -0
  245. package/dist-runtime/delivery/inputs.js +187 -0
  246. package/dist-runtime/delivery/inputs.js.map +1 -0
  247. package/dist-runtime/delivery/journal.d.ts +35 -0
  248. package/dist-runtime/delivery/journal.js +270 -0
  249. package/dist-runtime/delivery/journal.js.map +1 -0
  250. package/dist-runtime/delivery/manifest.d.ts +14 -0
  251. package/dist-runtime/delivery/manifest.js +68 -0
  252. package/dist-runtime/delivery/manifest.js.map +1 -0
  253. package/dist-runtime/delivery/materialization.d.ts +20 -0
  254. package/dist-runtime/delivery/materialization.js +138 -0
  255. package/dist-runtime/delivery/materialization.js.map +1 -0
  256. package/dist-runtime/delivery/observations.d.ts +31 -0
  257. package/dist-runtime/delivery/observations.js +38 -0
  258. package/dist-runtime/delivery/observations.js.map +1 -0
  259. package/dist-runtime/delivery/parameters.d.ts +53 -0
  260. package/dist-runtime/delivery/parameters.js +257 -0
  261. package/dist-runtime/delivery/parameters.js.map +1 -0
  262. package/dist-runtime/delivery/pending.d.ts +70 -0
  263. package/dist-runtime/delivery/pending.js +99 -0
  264. package/dist-runtime/delivery/pending.js.map +1 -0
  265. package/dist-runtime/delivery/plan.d.ts +50 -0
  266. package/dist-runtime/delivery/plan.js +209 -0
  267. package/dist-runtime/delivery/plan.js.map +1 -0
  268. package/dist-runtime/delivery/planning.d.ts +81 -0
  269. package/dist-runtime/delivery/planning.js +302 -0
  270. package/dist-runtime/delivery/planning.js.map +1 -0
  271. package/dist-runtime/delivery/policy.d.ts +4 -0
  272. package/dist-runtime/delivery/policy.js +9 -0
  273. package/dist-runtime/delivery/policy.js.map +1 -0
  274. package/dist-runtime/delivery/preparation.d.ts +6 -0
  275. package/dist-runtime/delivery/preparation.js +158 -0
  276. package/dist-runtime/delivery/preparation.js.map +1 -0
  277. package/dist-runtime/delivery/production-environment.d.ts +2 -0
  278. package/dist-runtime/delivery/production-environment.js +12 -0
  279. package/dist-runtime/delivery/production-environment.js.map +1 -0
  280. package/dist-runtime/delivery/production-finalization.d.ts +86 -0
  281. package/dist-runtime/delivery/production-finalization.js +278 -0
  282. package/dist-runtime/delivery/production-finalization.js.map +1 -0
  283. package/dist-runtime/delivery/production.d.ts +461 -0
  284. package/dist-runtime/delivery/production.js +396 -0
  285. package/dist-runtime/delivery/production.js.map +1 -0
  286. package/dist-runtime/delivery/project-files.d.ts +8 -0
  287. package/dist-runtime/delivery/project-files.js +82 -0
  288. package/dist-runtime/delivery/project-files.js.map +1 -0
  289. package/dist-runtime/delivery/project.d.ts +15 -0
  290. package/dist-runtime/delivery/project.js +157 -0
  291. package/dist-runtime/delivery/project.js.map +1 -0
  292. package/dist-runtime/delivery/protocol.d.ts +49 -0
  293. package/dist-runtime/delivery/protocol.js +112 -0
  294. package/dist-runtime/delivery/protocol.js.map +1 -0
  295. package/dist-runtime/delivery/references.d.ts +19 -0
  296. package/dist-runtime/delivery/references.js +84 -0
  297. package/dist-runtime/delivery/references.js.map +1 -0
  298. package/dist-runtime/delivery/release-graph.d.ts +93 -0
  299. package/dist-runtime/delivery/release-graph.js +106 -0
  300. package/dist-runtime/delivery/release-graph.js.map +1 -0
  301. package/dist-runtime/delivery/release-history-capture.d.ts +7 -0
  302. package/dist-runtime/delivery/release-history-capture.js +76 -0
  303. package/dist-runtime/delivery/release-history-capture.js.map +1 -0
  304. package/dist-runtime/delivery/release-history.d.ts +43 -0
  305. package/dist-runtime/delivery/release-history.js +246 -0
  306. package/dist-runtime/delivery/release-history.js.map +1 -0
  307. package/dist-runtime/delivery/release.d.ts +172 -0
  308. package/dist-runtime/delivery/release.js +209 -0
  309. package/dist-runtime/delivery/release.js.map +1 -0
  310. package/dist-runtime/delivery/safe-manifest.d.ts +9 -0
  311. package/dist-runtime/delivery/safe-manifest.js +13 -0
  312. package/dist-runtime/delivery/safe-manifest.js.map +1 -0
  313. package/dist-runtime/delivery/safe-observation.d.ts +30 -0
  314. package/dist-runtime/delivery/safe-observation.js +487 -0
  315. package/dist-runtime/delivery/safe-observation.js.map +1 -0
  316. package/dist-runtime/delivery/safe-prepare.d.ts +13 -0
  317. package/dist-runtime/delivery/safe-prepare.js +81 -0
  318. package/dist-runtime/delivery/safe-prepare.js.map +1 -0
  319. package/dist-runtime/delivery/safe.d.ts +91 -0
  320. package/dist-runtime/delivery/safe.js +243 -0
  321. package/dist-runtime/delivery/safe.js.map +1 -0
  322. package/dist-runtime/delivery/same-fork-baseline.d.ts +8 -0
  323. package/dist-runtime/delivery/same-fork-baseline.js +20 -0
  324. package/dist-runtime/delivery/same-fork-baseline.js.map +1 -0
  325. package/dist-runtime/delivery/setup.d.ts +31 -0
  326. package/dist-runtime/delivery/setup.js +215 -0
  327. package/dist-runtime/delivery/setup.js.map +1 -0
  328. package/dist-runtime/delivery/source.d.ts +41 -0
  329. package/dist-runtime/delivery/source.js +137 -0
  330. package/dist-runtime/delivery/source.js.map +1 -0
  331. package/dist-runtime/delivery/target-fields.d.ts +2 -0
  332. package/dist-runtime/delivery/target-fields.js +11 -0
  333. package/dist-runtime/delivery/target-fields.js.map +1 -0
  334. package/dist-runtime/delivery/validation.d.ts +9 -0
  335. package/dist-runtime/delivery/validation.js +150 -0
  336. package/dist-runtime/delivery/validation.js.map +1 -0
  337. package/dist-runtime/delivery/verification.d.ts +16 -0
  338. package/dist-runtime/delivery/verification.js +65 -0
  339. package/dist-runtime/delivery/verification.js.map +1 -0
  340. package/dist-runtime/migrate.js +1 -0
  341. package/dist-runtime/migrate.js.map +1 -1
  342. package/dist-runtime/miner/binary.d.ts +2 -0
  343. package/dist-runtime/miner/binary.js +54 -0
  344. package/dist-runtime/miner/binary.js.map +1 -0
  345. package/dist-runtime/miner/cli.d.ts +1 -0
  346. package/dist-runtime/miner/cli.js +131 -0
  347. package/dist-runtime/miner/cli.js.map +1 -0
  348. package/dist-runtime/miner/index.d.ts +5 -0
  349. package/dist-runtime/miner/index.js +13 -0
  350. package/dist-runtime/miner/index.js.map +1 -0
  351. package/dist-runtime/miner/request.d.ts +7 -0
  352. package/dist-runtime/miner/request.js +73 -0
  353. package/dist-runtime/miner/request.js.map +1 -0
  354. package/dist-runtime/miner/runner.d.ts +2 -0
  355. package/dist-runtime/miner/runner.js +131 -0
  356. package/dist-runtime/miner/runner.js.map +1 -0
  357. package/dist-runtime/miner/types.d.ts +89 -0
  358. package/dist-runtime/miner/types.js +3 -0
  359. package/dist-runtime/miner/types.js.map +1 -0
  360. package/dist-runtime/miner/verify.d.ts +2 -0
  361. package/dist-runtime/miner/verify.js +75 -0
  362. package/dist-runtime/miner/verify.js.map +1 -0
  363. package/dist-runtime/runtime-identity.json +2 -2
  364. package/dist-runtime/vendor/plan-codec/index.cjs +820 -0
  365. package/dist-runtime/vendor/plan-codec/index.d.cts +32 -0
  366. package/dist-runtime/vendor/plan-codec/provenance.json +24 -0
  367. package/dist-runtime/workflow/engine.d.ts +14 -0
  368. package/dist-runtime/workflow/engine.js +160 -0
  369. package/dist-runtime/workflow/engine.js.map +1 -0
  370. package/dist-runtime/workflow/lib/authority.d.ts +6 -3
  371. package/dist-runtime/workflow/lib/authority.js.map +1 -1
  372. package/dist-runtime/workflow/lib/calls.d.ts +1 -1
  373. package/dist-runtime/workflow/lib/calls.js +43 -34
  374. package/dist-runtime/workflow/lib/calls.js.map +1 -1
  375. package/dist-runtime/workflow/lib/canonicalData.d.ts +8 -0
  376. package/dist-runtime/workflow/lib/canonicalData.js +68 -0
  377. package/dist-runtime/workflow/lib/canonicalData.js.map +1 -0
  378. package/dist-runtime/workflow/lib/config.d.ts +3 -1
  379. package/dist-runtime/workflow/lib/config.js.map +1 -1
  380. package/dist-runtime/workflow/lib/context.d.ts +76 -0
  381. package/dist-runtime/workflow/lib/context.js +3 -0
  382. package/dist-runtime/workflow/lib/context.js.map +1 -0
  383. package/dist-runtime/workflow/lib/controlledMulticallAbi.d.ts +2 -0
  384. package/dist-runtime/workflow/lib/controlledMulticallAbi.js +10 -0
  385. package/dist-runtime/workflow/lib/controlledMulticallAbi.js.map +1 -0
  386. package/dist-runtime/workflow/lib/create2.d.ts +1 -1
  387. package/dist-runtime/workflow/lib/create2.js +9 -12
  388. package/dist-runtime/workflow/lib/create2.js.map +1 -1
  389. package/dist-runtime/workflow/lib/deployments.d.ts +5 -5
  390. package/dist-runtime/workflow/lib/deployments.js +5 -13
  391. package/dist-runtime/workflow/lib/deployments.js.map +1 -1
  392. package/dist-runtime/workflow/lib/evidencePorts.d.ts +55 -0
  393. package/dist-runtime/workflow/lib/evidencePorts.js +3 -0
  394. package/dist-runtime/workflow/lib/evidencePorts.js.map +1 -0
  395. package/dist-runtime/workflow/lib/executionPlan.d.ts +4 -42
  396. package/dist-runtime/workflow/lib/executionPlan.js +15 -210
  397. package/dist-runtime/workflow/lib/executionPlan.js.map +1 -1
  398. package/dist-runtime/workflow/lib/gateTool.d.ts +6 -2
  399. package/dist-runtime/workflow/lib/gateTool.js +20 -10
  400. package/dist-runtime/workflow/lib/gateTool.js.map +1 -1
  401. package/dist-runtime/workflow/lib/gateToolSync.d.ts +1 -1
  402. package/dist-runtime/workflow/lib/gateToolSync.js +3 -2
  403. package/dist-runtime/workflow/lib/gateToolSync.js.map +1 -1
  404. package/dist-runtime/workflow/lib/operationNames.d.ts +3 -0
  405. package/dist-runtime/workflow/lib/operationNames.js +34 -0
  406. package/dist-runtime/workflow/lib/operationNames.js.map +1 -0
  407. package/dist-runtime/workflow/lib/parameters.d.ts +1 -1
  408. package/dist-runtime/workflow/lib/parameters.js +9 -24
  409. package/dist-runtime/workflow/lib/parameters.js.map +1 -1
  410. package/dist-runtime/workflow/lib/pendingDeploymentReuse.js +18 -52
  411. package/dist-runtime/workflow/lib/pendingDeploymentReuse.js.map +1 -1
  412. package/dist-runtime/workflow/lib/pendingUupsBinding.d.ts +42 -0
  413. package/dist-runtime/workflow/lib/pendingUupsBinding.js +39 -0
  414. package/dist-runtime/workflow/lib/pendingUupsBinding.js.map +1 -0
  415. package/dist-runtime/workflow/lib/plan.d.ts +55 -0
  416. package/dist-runtime/workflow/lib/plan.js +324 -0
  417. package/dist-runtime/workflow/lib/plan.js.map +1 -0
  418. package/dist-runtime/workflow/lib/planCli.d.ts +14 -0
  419. package/dist-runtime/workflow/lib/planCli.js +279 -0
  420. package/dist-runtime/workflow/lib/planCli.js.map +1 -0
  421. package/dist-runtime/workflow/lib/preparationEvidence.d.ts +4 -0
  422. package/dist-runtime/workflow/lib/preparationEvidence.js +19 -0
  423. package/dist-runtime/workflow/lib/preparationEvidence.js.map +1 -0
  424. package/dist-runtime/workflow/lib/proxy.d.ts +3 -2
  425. package/dist-runtime/workflow/lib/proxy.js +3 -4
  426. package/dist-runtime/workflow/lib/proxy.js.map +1 -1
  427. package/dist-runtime/workflow/lib/runtime.d.ts +6 -0
  428. package/dist-runtime/workflow/lib/runtime.js +48 -0
  429. package/dist-runtime/workflow/lib/runtime.js.map +1 -0
  430. package/dist-runtime/workflow/lib/signer.d.ts +3 -2
  431. package/dist-runtime/workflow/lib/signer.js +18 -18
  432. package/dist-runtime/workflow/lib/signer.js.map +1 -1
  433. package/dist-runtime/workflow/lib/simulation.d.ts +13 -6
  434. package/dist-runtime/workflow/lib/simulation.js +39 -31
  435. package/dist-runtime/workflow/lib/simulation.js.map +1 -1
  436. package/dist-runtime/workflow/lib/state.js +3 -3
  437. package/dist-runtime/workflow/lib/state.js.map +1 -1
  438. package/dist-runtime/workflow/lib/staticValidation.d.ts +28 -0
  439. package/dist-runtime/workflow/lib/staticValidation.js +54 -10
  440. package/dist-runtime/workflow/lib/staticValidation.js.map +1 -1
  441. package/dist-runtime/workflow/lib/transactionPlanner.d.ts +62 -0
  442. package/dist-runtime/workflow/lib/transactionPlanner.js +258 -0
  443. package/dist-runtime/workflow/lib/transactionPlanner.js.map +1 -0
  444. package/dist-runtime/workflow/lib/typedValue.d.ts +3 -0
  445. package/dist-runtime/workflow/lib/typedValue.js +76 -0
  446. package/dist-runtime/workflow/lib/typedValue.js.map +1 -0
  447. package/dist-runtime/workflow/lib/validation.d.ts +23 -0
  448. package/dist-runtime/workflow/lib/validation.js +15 -0
  449. package/dist-runtime/workflow/lib/validation.js.map +1 -0
  450. package/dist-runtime/workflow/planAdd.d.ts +1 -0
  451. package/dist-runtime/workflow/planAdd.js +11 -0
  452. package/dist-runtime/workflow/planAdd.js.map +1 -0
  453. package/dist-runtime/workflow/planRead.d.ts +1 -0
  454. package/dist-runtime/workflow/planRead.js +11 -0
  455. package/dist-runtime/workflow/planRead.js.map +1 -0
  456. package/dist-runtime/workflow/planStatus.d.ts +1 -0
  457. package/dist-runtime/workflow/planStatus.js +11 -0
  458. package/dist-runtime/workflow/planStatus.js.map +1 -0
  459. package/dist-runtime/workflow/planWrite.d.ts +1 -0
  460. package/dist-runtime/workflow/planWrite.js +11 -0
  461. package/dist-runtime/workflow/planWrite.js.map +1 -0
  462. package/dist-runtime/workflow/run.d.ts +1 -40
  463. package/dist-runtime/workflow/run.js +68 -136
  464. package/dist-runtime/workflow/run.js.map +1 -1
  465. package/dist-runtime/workflow/staticValidate.js +8 -3
  466. package/dist-runtime/workflow/staticValidate.js.map +1 -1
  467. package/dist-runtime/workflow/steps/call.d.ts +1 -1
  468. package/dist-runtime/workflow/steps/check.d.ts +1 -1
  469. package/dist-runtime/workflow/steps/custom.d.ts +1 -1
  470. package/dist-runtime/workflow/steps/deploy.d.ts +1 -1
  471. package/dist-runtime/workflow/steps/deploy.js +58 -55
  472. package/dist-runtime/workflow/steps/deploy.js.map +1 -1
  473. package/dist-runtime/workflow/steps/upgrade.d.ts +1 -1
  474. package/dist-runtime/workflow/steps/upgrade.js +63 -41
  475. package/dist-runtime/workflow/steps/upgrade.js.map +1 -1
  476. package/dist-runtime/workflow/steps/view.d.ts +1 -1
  477. package/docs/compiler-qualification.md +32 -0
  478. package/docs/configuration-runtime-observation.md +29 -0
  479. package/docs/create2-miner.md +100 -0
  480. package/docs/delivery-aggregate.md +27 -0
  481. package/docs/delivery-custom-input-closure.md +51 -0
  482. package/docs/delivery-development.md +32 -0
  483. package/docs/delivery-eoa.md +46 -0
  484. package/docs/delivery-evm-manifest.md +20 -0
  485. package/docs/delivery-execution-store.md +33 -0
  486. package/docs/delivery-inputs.md +46 -0
  487. package/docs/delivery-parameters.md +65 -0
  488. package/docs/delivery-planning.md +140 -0
  489. package/docs/delivery-release.md +65 -0
  490. package/docs/delivery-safe.md +72 -0
  491. package/docs/delivery-setup.md +146 -0
  492. package/docs/delivery-source.md +67 -0
  493. package/docs/direct-package-acceptance.md +20 -0
  494. package/docs/external-infrastructure-acceptance.md +33 -0
  495. package/docs/network-runtime-acceptance.md +18 -0
  496. package/docs/plans/2026-09-09-workflow-extraction.md +16 -0
  497. package/docs/superpowers/plans/2026-07-22-manifest-bootstrap-transaction.md +50 -0
  498. package/docs/superpowers/plans/2026-07-22-manifest-review-remediation.md +49 -0
  499. package/docs/superpowers/plans/2026-08-17-custody-hardhat-signers.md +227 -0
  500. package/docs/superpowers/plans/2026-09-09-remove-template-infrastructure-contracts.md +11 -0
  501. package/docs/superpowers/plans/2026-09-24-scheme-aware-static-validation.md +193 -0
  502. package/docs/superpowers/plans/2026-10-28-create2-miner.md +82 -0
  503. package/docs/workflow-reference.md +1181 -0
  504. package/docs/workflow-runtime-acceptance.md +17 -0
  505. package/docs/workflow-runtime.md +56 -0
  506. package/package.json +134 -9
  507. package/resources/create2/LICENSE +21 -0
  508. package/resources/create2/README.md +9 -0
  509. package/resources/create2/darwin-arm64/smartflow_miner +0 -0
  510. package/resources/create2/darwin-x64/smartflow_miner +0 -0
  511. package/resources/create2/manifest.json +27 -0
  512. package/runtime/config/hardhatAdapters.ts +8 -0
  513. package/runtime/config/networks.ts +20 -11
  514. package/runtime/config/openzeppelin.ts +3 -21
  515. package/runtime/delivery/abi.ts +225 -0
  516. package/runtime/delivery/aggregate-bootstrap.ts +29 -0
  517. package/runtime/delivery/aggregate-channel.ts +85 -0
  518. package/runtime/delivery/aggregate-inputs.ts +39 -0
  519. package/runtime/delivery/aggregate-source.ts +53 -0
  520. package/runtime/delivery/aggregate-worker.ts +133 -0
  521. package/runtime/delivery/aggregate.ts +139 -0
  522. package/runtime/delivery/bindings.ts +37 -0
  523. package/runtime/delivery/check-code.ts +38 -0
  524. package/runtime/delivery/closure-format.ts +350 -0
  525. package/runtime/delivery/codec-pin.ts +3 -0
  526. package/runtime/delivery/codec.ts +50 -0
  527. package/runtime/delivery/compiler-dependency-pins.ts +1685 -0
  528. package/runtime/delivery/compiler-files.ts +179 -0
  529. package/runtime/delivery/compiler-io.ts +10 -0
  530. package/runtime/delivery/compiler-pins.ts +143 -0
  531. package/runtime/delivery/compiler.ts +700 -0
  532. package/runtime/delivery/config.ts +93 -0
  533. package/runtime/delivery/configuration-definition.ts +133 -0
  534. package/runtime/delivery/configuration-hre.ts +130 -0
  535. package/runtime/delivery/configuration-runtime.ts +163 -0
  536. package/runtime/delivery/configuration.ts +64 -0
  537. package/runtime/delivery/create2.ts +57 -0
  538. package/runtime/delivery/custom-closure.ts +993 -0
  539. package/runtime/delivery/custom-format.ts +464 -0
  540. package/runtime/delivery/custom.ts +219 -0
  541. package/runtime/delivery/data.ts +94 -0
  542. package/runtime/delivery/development.ts +262 -0
  543. package/runtime/delivery/engine.ts +29 -0
  544. package/runtime/delivery/eoa-observation.ts +106 -0
  545. package/runtime/delivery/eoa-signed.ts +55 -0
  546. package/runtime/delivery/eoa.ts +288 -0
  547. package/runtime/delivery/execution-db.ts +131 -0
  548. package/runtime/delivery/execution-files.ts +135 -0
  549. package/runtime/delivery/execution-model.ts +102 -0
  550. package/runtime/delivery/execution-store.ts +411 -0
  551. package/runtime/delivery/existing-code.ts +44 -0
  552. package/runtime/delivery/export.ts +99 -0
  553. package/runtime/delivery/forkAudit.ts +620 -0
  554. package/runtime/delivery/hardhat.ts +38 -0
  555. package/runtime/delivery/history-registration.ts +10 -0
  556. package/runtime/delivery/identities.ts +132 -0
  557. package/runtime/delivery/input-files.ts +46 -0
  558. package/runtime/delivery/inputs.ts +197 -0
  559. package/runtime/delivery/journal.ts +201 -0
  560. package/runtime/delivery/manifest.ts +54 -0
  561. package/runtime/delivery/materialization.ts +53 -0
  562. package/runtime/delivery/observations.ts +60 -0
  563. package/runtime/delivery/parameters.ts +349 -0
  564. package/runtime/delivery/pending.ts +98 -0
  565. package/runtime/delivery/plan.ts +337 -0
  566. package/runtime/delivery/planning.ts +397 -0
  567. package/runtime/delivery/policy.ts +9 -0
  568. package/runtime/delivery/preparation.ts +224 -0
  569. package/runtime/delivery/production-environment.ts +6 -0
  570. package/runtime/delivery/production-finalization.ts +172 -0
  571. package/runtime/delivery/production.ts +375 -0
  572. package/runtime/delivery/project-files.ts +58 -0
  573. package/runtime/delivery/project.ts +117 -0
  574. package/runtime/delivery/protocol.ts +94 -0
  575. package/runtime/delivery/references.ts +106 -0
  576. package/runtime/delivery/release-graph.ts +49 -0
  577. package/runtime/delivery/release-history-capture.ts +32 -0
  578. package/runtime/delivery/release-history.ts +120 -0
  579. package/runtime/delivery/release.ts +128 -0
  580. package/runtime/delivery/safe-manifest.ts +11 -0
  581. package/runtime/delivery/safe-observation.ts +626 -0
  582. package/runtime/delivery/safe-prepare.ts +101 -0
  583. package/runtime/delivery/safe.ts +344 -0
  584. package/runtime/delivery/same-fork-baseline.ts +16 -0
  585. package/runtime/delivery/setup.ts +172 -0
  586. package/runtime/delivery/source.ts +130 -0
  587. package/runtime/delivery/target-fields.ts +7 -0
  588. package/runtime/delivery/validation.ts +247 -0
  589. package/runtime/delivery/verification.ts +47 -0
  590. package/runtime/migrate.ts +1 -0
  591. package/runtime/miner/binary.ts +41 -0
  592. package/runtime/miner/cli.ts +87 -0
  593. package/runtime/miner/index.ts +5 -0
  594. package/runtime/miner/request.ts +54 -0
  595. package/runtime/miner/runner.ts +90 -0
  596. package/runtime/miner/types.ts +71 -0
  597. package/runtime/miner/verify.ts +61 -0
  598. package/runtime/vendor/plan-codec/index.cjs +820 -0
  599. package/runtime/vendor/plan-codec/index.d.cts +32 -0
  600. package/runtime/vendor/plan-codec/provenance.json +24 -0
  601. package/runtime/workflow/engine.ts +174 -0
  602. package/runtime/workflow/lib/authority.ts +3 -3
  603. package/runtime/workflow/lib/calls.ts +46 -37
  604. package/runtime/workflow/lib/canonicalData.ts +45 -0
  605. package/runtime/workflow/lib/config.ts +1 -1
  606. package/runtime/workflow/lib/context.ts +76 -0
  607. package/runtime/workflow/lib/controlledMulticallAbi.ts +6 -0
  608. package/runtime/workflow/lib/create2.ts +10 -12
  609. package/runtime/workflow/lib/deployments.ts +6 -14
  610. package/runtime/workflow/lib/evidencePorts.ts +20 -0
  611. package/runtime/workflow/lib/executionPlan.ts +17 -268
  612. package/runtime/workflow/lib/gateTool.ts +20 -8
  613. package/runtime/workflow/lib/gateToolSync.ts +3 -3
  614. package/runtime/workflow/lib/operationNames.ts +32 -0
  615. package/runtime/workflow/lib/parameters.ts +7 -23
  616. package/runtime/workflow/lib/pendingDeploymentReuse.ts +4 -56
  617. package/runtime/workflow/lib/pendingUupsBinding.ts +43 -0
  618. package/runtime/workflow/lib/plan.ts +334 -0
  619. package/runtime/workflow/lib/planCli.ts +279 -0
  620. package/runtime/workflow/lib/preparationEvidence.ts +14 -0
  621. package/runtime/workflow/lib/proxy.ts +5 -3
  622. package/runtime/workflow/lib/runtime.ts +46 -0
  623. package/runtime/workflow/lib/signer.ts +8 -5
  624. package/runtime/workflow/lib/simulation.ts +41 -17
  625. package/runtime/workflow/lib/state.ts +3 -3
  626. package/runtime/workflow/lib/staticValidation.ts +92 -11
  627. package/runtime/workflow/lib/transactionPlanner.ts +314 -0
  628. package/runtime/workflow/lib/typedValue.ts +46 -0
  629. package/runtime/workflow/lib/validation.ts +50 -0
  630. package/runtime/workflow/planAdd.ts +8 -0
  631. package/runtime/workflow/planRead.ts +8 -0
  632. package/runtime/workflow/planStatus.ts +8 -0
  633. package/runtime/workflow/planWrite.ts +8 -0
  634. package/runtime/workflow/run.ts +41 -174
  635. package/runtime/workflow/staticValidate.ts +8 -3
  636. package/runtime/workflow/steps/call.ts +1 -1
  637. package/runtime/workflow/steps/check.ts +1 -1
  638. package/runtime/workflow/steps/custom.ts +1 -1
  639. package/runtime/workflow/steps/deploy.ts +59 -59
  640. package/runtime/workflow/steps/upgrade.ts +71 -47
  641. package/runtime/workflow/steps/view.ts +1 -1
@@ -0,0 +1,72 @@
1
+ # Official Safe 1.4.1 delivery
2
+
3
+ The supported adapter is `safe-1.4.1-call-only/v1`: the published ordinary Safe
4
+ singleton and SafeProxy, with either a single CALL or DELEGATECALL to the official
5
+ MultiSendCallOnly containing only CALL entries. SafeL2, modules, ordinary MultiSend,
6
+ arbitrary delegatecall and nested Safe execution are unsupported. Reviewed runtime
7
+ hashes are code-owned; caller-provided hashes cannot add implementations.
8
+
9
+ The developer delivers this optional target policy in the existing `config.yaml`.
10
+ It is included in the captured release inputs, with no production business override:
11
+
12
+ ```yaml
13
+ production:
14
+ environment: prod
15
+ finality: { confirmations: 1 }
16
+ openzeppelin: { manifestDir: .openzeppelin }
17
+ safe:
18
+ adapter: safe-1.4.1-call-only/v1
19
+ multiSendCallOnly: '0x<deployed official MultiSendCallOnly address>'
20
+ safeTxGas: '500000'
21
+ submitterPolicy: { kind: any }
22
+ ```
23
+
24
+ Safe address is the current original plan executor. After final plan preparation,
25
+ the host retains READY, exits the project simulation, and starts a separate static
26
+ worker. Only that worker receives the observation provider and durable store. It
27
+ checks the actual proxy/singleton/batch identities and nonce at one canonical block
28
+ and freezes the current contiguous external segment, complete Safe envelope,
29
+ transaction IDs, EIP-712 hash, explicit finality and zero-refund policy. It never
30
+ allocates a future segment's nonce. Existing published bindings are immutable;
31
+ consumed nonces require reconciliation of the original hash, not rebasing.
32
+
33
+ Pure renderers perform zero provider, signer or broadcast calls. JSON and Markdown
34
+ contain the full plan and frozen Safe payload, with signatures left for external
35
+ collection. An unprepared current Safe segment reports `preparation-required` and
36
+ still exports the complete ordinary plan. Later segments await preparation when
37
+ executable. The existing host export boundary separately revalidates completed
38
+ progress using readonly RPC; this is distinct from pure rendering.
39
+
40
+ Reconciliation requires an explicit original outer transaction hash. The collector
41
+ strictly checks all execTransaction fields, ABI canonicality, packed CALL lengths,
42
+ values and complete range coverage. Signatures may vary. The outer sender can be a
43
+ distinct relayer under the sealed any-relayer policy. Base gas/gas price are zero,
44
+ gas token/refund receiver are zero addresses, and actual payment must be zero.
45
+ Exactly the expected SafeTxHash ExecutionSuccess, canonical inclusion and finality
46
+ are required. ExecutionFailure never advances, even when receipt status is one.
47
+ One verified Safe batch is committed atomically to its exact inner indices. The
48
+ EOA duplicate-hash rule is unchanged, and only a complete finalized prefix allows
49
+ the original operator continuation. Successful calls do not replace business
50
+ assertions or production finalization.
51
+
52
+ The finite evidence collector supports Geth 1.15.11 prestateTracer plus its default
53
+ opcode trace. It requests its own fixed options for the same hash, checks full
54
+ address-keyed transaction-time code and proxy slot zero, binds proxy pc 28 SLOAD /
55
+ pc 94 DELEGATECALL and singleton/batch call frames, and tracks CALL versus
56
+ DELEGATECALL storage context. Missing, malformed, incomplete, oversized or
57
+ unavailable evidence is refused. No VERSION/block-end identity fallback exists.
58
+ Type-4 authorization transactions and delegation-designator assets are unsupported.
59
+ The client's declared version is a compatibility gate, not remote binary attestation;
60
+ ordinary configured-RPC trust applies. The host limits both options and response
61
+ size and retains its request/scope/effect guards.
62
+
63
+ Local acceptance uses the already prepared official native Geth 1.15.11 source
64
+ build, dev mode with Prague enabled, and vendored official Safe artifacts. Set
65
+ `GATE_SAFE_GETH_ACCEPTANCE=1` for `node --test test/delivery-safe-geth.test.mjs` after
66
+ starting the pinned isolated fixture at 127.0.0.1:19545. The fixture retains its
67
+ own deployment state under `/tmp/gate-r5-20261023-implementation`; it never clears
68
+ historic accepted chains. The gated suite covers real owners/signatures, value,
69
+ relayers, batch failures, extra calls, same-block fake switch/restore, later-index
70
+ execution, reentry/slot-zero refusal, malformed provider evidence and original
71
+ operator continuation. Local confirmations/finalized tags do not prove production
72
+ consensus finality. R6 owns the final frozen-version packaged lifecycle.
@@ -0,0 +1,146 @@
1
+ # Core 项目的按需部署接入
2
+
3
+ `gate-delivery` 只接受已完成生成的 `gateflow-evm-core@1` / `profile: core` 项目。
4
+ 它不迁移 full/旧模板,不复制 workflow 源码,也不管理项目的 RPC 网络目录。
5
+ 正常的 `compile`、`test`、`typecheck`、`clean` 在接入前后均不需要 `config.yaml`、钱包或外部 RPC。
6
+
7
+ ## 本地接入
8
+
9
+ 创建 JSON 选项文件,例如:
10
+
11
+ ```json
12
+ {
13
+ "workspaceRoot": "/absolute/workspace",
14
+ "projectRoot": "contracts",
15
+ "toolPackage": "/absolute/build/gate-evm-tools-1.0.29.tgz",
16
+ "targets": [
17
+ {
18
+ "network": "sepolia",
19
+ "environment": "dev",
20
+ "finality": { "confirmations": 1 },
21
+ "create2": {
22
+ "scheme": "evm",
23
+ "factory": "0x1111111111111111111111111111111111111111"
24
+ }
25
+ }
26
+ ]
27
+ }
28
+ ```
29
+
30
+ 工厂地址只是格式示例,应填写项目实际设施地址。`create2`、
31
+ `uups: { placeholderImplementation }` 和 `multicall: { controlledMulticall }`
32
+ 都可省略;call/view/check 类项目无需部署设施。提供设施配置时,setup 和 `loadDeliveryTarget` 均校验其地址为非零 EVM 地址。
33
+ `loadDeliveryTarget` 保留 YAML 中的额外人工字段,不采用 setup 选项的严格字段白名单。具体操作需要哪些设施由执行输入验证决定。
34
+
35
+ ```sh
36
+ gate-delivery inspect --options delivery-options.json
37
+ gate-delivery setup --options delivery-options.json
38
+ ```
39
+
40
+ `inspect` 是只读诊断。`setup` 完成冲突预检后,仅补充缺失的选中目标配置、
41
+ 缺失的 `contractInfo.json`(内容为 `{}`)和所需的开发依赖声明。
42
+ 已有 YAML 注释、其他目标、自定义字段、业务代码、注册表、Git 元数据和生成器 marker 均保留。
43
+ 已有值与明确请求冲突、路径包含 symlink、模板不受支持时,在写入前拒绝。
44
+
45
+ 依赖未就绪时返回 `dependencies_pending`,CLI 退出码为 `2`;不会安装依赖或添加失败的插件 import。
46
+ 用户在目标项目显式安装依赖后再次运行 setup,才会把
47
+ `import "gate-evm-tools/delivery-hardhat";` 放在其他 import 之前。
48
+ 重复 setup 不改写已满足要求的文件。退出码 `0` / `ready` 只表示接入完成,
49
+ 不表示 source 已验证、RPC 已连接、部署获准或合约已部署。`setup_pending` 是 inspect 发现仍有配置修改待完成。
50
+
51
+ 当前未发布的 API 应使用显式本地构建 tarball:在 GateTool 仓库运行 `npm run build` 和
52
+ `npm pack --pack-destination /absolute/build`,并把 tarball 绝对路径写入 `toolPackage`。
53
+ 该字段可省略,但仅有 `gate-evm-tools@1.0.29` 版本号不能证明 API 已存在;诊断会检查本地 exports。
54
+ 如 package.json 已声明另一来源,先显式调整该依赖,不会静默覆盖人工声明。
55
+
56
+ 验证的 core 工具链是 Hardhat `2.26.3`、ethers `6.15.0`、hardhat-ethers `3.1.0`、
57
+ TypeScript `5.9.3`、ts-node `10.9.2`。按需声明 OZ hardhat-upgrades `3.9.1`、
58
+ upgrades-core `1.44.2`、contracts `5.4.0`;业务 Solidity 源码引用 contracts-upgradeable 时才声明 `5.4.0`。
59
+ 诊断检查实际本地包、delivery exports 和本地 npm 依赖树,不把祖先目录的依赖当作本项目就绪。
60
+ 不添加 toolbox、zkSync、Foundry、patch-package 或 postinstall 补丁。
61
+
62
+ 网络仍只定义在项目 `hardhat.config.ts`。接入读取静态 const/default-export 对象中的选中网络,
63
+ 支持字面 URL、`process.env.NAME`、`||` 和 `??`;动态计算的选中网络需要人工改为可验证的静态定义。业务依赖扫描遵循静态 `paths.sources`(默认 `contracts`),且只读取项目内目录。
64
+ 诊断只输出 network、chainId 和 rpcConfigured,不输出解析后的 RPC URL。
65
+ 可通过项目生成器或手工增加网络,无需发布 GateTool。
66
+
67
+ ## 公共 API
68
+
69
+ - `gate-evm-tools/delivery-setup`:`inspectDeliveryProject(options)`、`setupDeliveryProject(options)`、
70
+ `readProjectNetworkSnapshots(root, aliases, env?)`、`loadDeliveryTarget(root, network, environment?)`、
71
+ `configureDeliveryEnvironment({ root, env?, argv? })`。
72
+ - `gate-evm-tools/delivery-protocol`:`parseDeliveryRequest(input)`、
73
+ `validateDeliveryRpc(input, selectedProjectSnapshot, loadProvider)` 及请求类型。
74
+ - `gate-evm-tools/delivery-hardhat`:项目配置的薄插件入口,带 Hardhat ethers/upgrades 类型扩展。
75
+ - `gate-evm-tools/delivery-policy`:不加载 OZ 的共享 manifest 策略。
76
+
77
+ `readProjectNetworkSnapshots` 提供给本地 provider 装配使用,包含解析后的 URL,
78
+ 不要把它写入交付文件或日志。`validateDeliveryRpc` 首先校验请求语法,之后才调用
79
+ 注入的 `loadProvider(snapshot)`;provider 的 `request({ method: "eth_chainId", params: [] })`
80
+ 必须返回与项目快照一致的真实 chain ID。RPC 失败或链 ID 不符直接拒绝,没有备用网络。
81
+
82
+ ## 显式 runtime 请求协议
83
+
84
+ ```json
85
+ {
86
+ "version": 1,
87
+ "environment": "dev",
88
+ "purpose": "dev-execution",
89
+ "mode": "simulate",
90
+ "network": "sepolia",
91
+ "sourceRef": {
92
+ "path": "handoff/task-1/handoff.md",
93
+ "taskId": "task-1",
94
+ "planKey": "rollout",
95
+ "rev": 1
96
+ },
97
+ "devSigner": "0x2222222222222222222222222222222222222222"
98
+ }
99
+ ```
100
+
101
+ 所有字段严格校验,不存在默认 execute。environment、purpose、mode 必须是字符串,不接受数组或对象的隐式转换。
102
+ sourceRef.path 必须是 workspace-relative POSIX 路径,releaseRef.path 必须是 project-relative POSIX 路径;
103
+ ID、network alias 和路径禁止 traversal/prototype 名称。
104
+
105
+ | purpose | environment | mode | 额外约束 |
106
+ | --- | --- | --- | --- |
107
+ | dev-execution | dev | simulate / execute / reconcile / verify | devSigner;禁止 operator |
108
+ | prod-qualification | prod | simulate / verify | operator;simulate 必需 fork `{ blockNumber, blockHash, readOnly: true }`;verify 不带 fork/releaseRef,只读、不广播 |
109
+ | prod-execution | prod | simulate / execute / export-calldata / reconcile / verify | operator;必需 releaseRef `{ path, releaseId, inputsHash }` |
110
+
111
+ `inputsHash` 是 64 位小写 hex,不含 `0x`。fork blockNumber 是非负安全整数;只有 simulate 可带 fork。
112
+ qualification verify 不需要伪造 fork 或 releaseRef,不接受 execute/export-calldata/reconcile;具体只读 verification orchestration 在后续阶段实现。
113
+ 所有 signer/operator 地址只是请求约束,不是授权证明。业务 owner 留在冻结 source 的业务参数中,
114
+ 不会从 devSigner/operator 推导,也不接受 `businessOwner` 或参数覆盖字段。
115
+ 不支持 `admin_release`、旧 SuperTask 字段、`mergeCommit`、`parameterOverrides`、`authorized: true`。
116
+
117
+ 这一步只定义语法、路由和 RPC 一致性验证;canonical source 文件内容核验、输入冻结、prod host 授权、
118
+ 执行/finalize/export CLI 在后续交付阶段实现。这里没有把新请求转译给旧 `workflow/run.ts`。
119
+
120
+ ## Manifest 与普通开发命令
121
+
122
+ 插件只有在显式设置 `GATE_DELIVERY_CONTEXT`(上述请求的 JSON)时读取选中目标。
123
+ 它在任何 OZ import 之前设置 `MANIFEST_DEFAULT_DIR` 和 `GATE_WORKFLOW_TARGET`;
124
+ `prod` 必须使用 `.openzeppelin`,`dev` 必须使用隔离目录(默认 `.openzeppelin.dev`)。
125
+ 两种环境可以使用同一 chain ID。每个 runtime target 应使用全新子进程;继承的目录/目标冲突、
126
+ 不同的 Hardhat config/tsconfig、网络路由冲突或已提前加载 OZ 均拒绝。
127
+ 所有重复 CLI 参数和对应环境变量都会逐一核对,不能用 CLI 掩盖继承的冲突值。
128
+ 无显式 network selector 时读取项目的静态 `defaultNetwork`;插件还会在 HRE 初始化时核对实际
129
+ `hre.network.name`、project root 和 configFile,拒绝 config extender 改写后的不一致。
130
+ 只有 simulate 可一致地选择本地 hardhat;该例外不会覆盖显式 selector 冲突或错误的默认网络。
131
+
132
+ 没有 delivery context 时不读取 YAML。插件启用 OZ 原生 storageLayout 和 canonical ERC1967Proxy
133
+ 依赖编译,不重写 compiler、optimizer、viaIR、artifact/cache 路径,也不读取钱包。
134
+ 旧 workflow 配置入口仅接受 local/development/production,拒绝 dev/prod;新协议通过独立 loader 只接受 dev/prod。
135
+ 共享 manifest/preparation 策略支持两套环境名称,但不会将新环境转换为旧 workflow 请求。
136
+
137
+ 真实本地验收:`npm run test:delivery:core`。测试需要相邻的 `EvmHardhatCli` checkout 已构建。该测试生成全新 core、安装本地 tarball、
138
+ 编译临时 UUPS 合约并验证 canonical prepare,确认重复 setup 稳定及删除 YAML 后普通命令正常;
139
+ 它不发布 npm 包,也不连接真实链。
140
+
141
+ The read-only [`delivery-source` API](delivery-source.md) binds actual confined handoff tasks and canonical definitions before RPC validation. It is separate from setup, lifecycle persistence and host authorization.
142
+
143
+ Owned multi-target input qualification is available through
144
+ `gate-evm-tools/delivery-aggregate`; see [aggregate lifecycle and API](delivery-aggregate.md).
145
+
146
+ Node 最低版本为 22.13.0(node:sqlite);本次本地组合使用 Node 24.3.0 / npm 11.4.2。
@@ -0,0 +1,67 @@
1
+ # Actual handoff source binding
2
+
3
+ `gate-evm-tools/delivery-source` is a read-only API for the new template delivery protocol. It reads the actual workspace handoff using the vendored canonical `gateflow-plan/v2` codec. It does not load HRE, a provider, a signer, or SmartFlowAI, and does not persist lifecycle state or grant execution authority.
4
+
5
+ ```ts
6
+ import { readDeliverySource, validateDeliverySourceRpc } from 'gate-evm-tools/delivery-source';
7
+
8
+ const source = readDeliverySource({
9
+ workspaceRoot: '/absolute/workspace',
10
+ projectRoot: 'contracts/vault', // workspace-relative; '.' is supported
11
+ sourceRoots: ['qualify-mainnet'], // upstream selection owned by caller policy
12
+ request, // DeliveryRequest from delivery-protocol
13
+ });
14
+
15
+ // If RPC validation is needed, this wrapper checks actual source first.
16
+ const bound = await validateDeliverySourceRpc(options, selectedNetworkSnapshot, loadProvider);
17
+ ```
18
+
19
+ `request.sourceRef.path` is workspace-relative. The reference identifies the **invocation task** using taskId, planKey and rev. The selected task's deployment projectRoot must exactly equal the configured workspace-relative projectRoot. Its environment, targetNetwork, allowedActions and exact releaseRef must match the request. The project must carry the supported completed core-template marker. A disabled or cancelled invocation is refused.
20
+
21
+ Purpose is bound to task steps:
22
+
23
+ | Purpose | Steps |
24
+ | --- | --- |
25
+ | dev-execution | deploy, check-code |
26
+ | prod-qualification | deploy-test |
27
+ | prod-execution | release-prepare, release-execute, release-verify |
28
+
29
+ The Task 4 protocol still controls legal modes: dev reconcile is valid; qualification verify needs neither fork nor releaseRef; qualification simulate requires a pinned read-only fork. Source binding adds the actual task's allowedActions constraint. The release reference's path remains **project-relative**; source checking does not read or validate release package contents.
30
+
31
+ Traversal, symlinks, hardlinks, nonregular files, missing/invalid handoffs, incorrect task identity/revision and route/ref mismatches fail before the wrapper invokes `loadProvider`. The file is opened without following a final symlink, and its identity and modification metadata are checked across the read. Parsing and projections use the same observed text. Subsequent lifecycle operations must revalidate against their freeze policy; this is not a filesystem lock.
32
+
33
+ ## Definition identity
34
+
35
+ `sourceRoots` is separate from the invocation reference. The caller's trusted selection policy chooses upstream roots; the canonical projector includes their dependency closure and refuses any generated release-prepare/release-execute/release-verify root or dependency. Qualification tasks may be upstream. Selected deployment contracts belonging to another projectRoot are rejected, including those found only through dependencies. Generic source tasks remain available for dependency closure.
36
+
37
+ The returned recursively immutable binding contains:
38
+
39
+ - `request` and `invocation` (lane and complete parsed task).
40
+ - `sourceDefinition`, `sourceDefinitionBytes` and SHA-256 `sourceDefinitionHash`.
41
+ - For prod execution, `prodTaskGraph`, `prodTaskGraphBytes` and `prodTaskGraphHash`: all matching-release tasks for the selected project, across target networks, with full dependency closure and full releaseRef data.
42
+ - `observation.path` and raw file SHA-256 for audit observation only.
43
+
44
+ Definition bytes bind schema/taskId/flow, chosen roots, planKey/rev/lane, selected relative task order, used lane state/skill/step IDs, and objective/acceptance/dependsOn/step/scope/parameters/expectedArtifacts/allowedChanges. They exclude presentation, tools, progress and unrelated tasks. Thus ordinary progress updates change the observation hash without changing the upstream definition hash; an updated rev still binds when semantics return to their prior value.
45
+
46
+ The later lifecycle must construct `inputsHash` from sourceDefinitionHash plus operation/parameter/artifact/script/config/executor bindings. It must keep the production task graph hash independent of inputsHash, because production task definitions contain releaseRef.inputsHash. **Neither the raw handoff hash nor prodTaskGraphHash is an inputsHash substitute.**
47
+
48
+ The wrapper verifies source constraints; it does not replace host approval, root selection/freeze policy, revision adoption, progress ordering, release sealing, or release package checks. No runtime actor information is inserted into portable task definitions.
49
+
50
+ `parseCanonicalPlan(text)` and `projectCanonicalDefinitions(text, { roots, mode: 'upstream' | 'full' })` also expose the canonical read-only surface. The projector reparses text rather than accepting a mutable parsed snapshot. Full mode permits complete independent prod projections. Canonical JSON uses sorted mapping keys and preserves prototype-named own metadata as data.
51
+
52
+ ## Vendor provenance and build
53
+
54
+ The checked-in files are under `runtime/vendor/plan-codec`: a standalone CJS bundle, `.d.cts` declarations and provenance manifest. SmartFlowAI's `scripts/build-plan-codec.mjs` produces them from committed sources using its existing esbuild. The manifest records the actual commit, relevant source SHA-256s, schema/definition contract, version, builder version and artifact hashes. Its recorded source commit continues to be valid after unrelated SmartFlow commits; `--verify` uses that commit, not current HEAD.
55
+
56
+ Maintainer refresh, from a SmartFlowAI checkout with the corresponding committed sources:
57
+
58
+ ```sh
59
+ node scripts/build-plan-codec.mjs --out ../EvmGateTools/runtime/vendor/plan-codec
60
+ node scripts/build-plan-codec.mjs --out ../EvmGateTools/runtime/vendor/plan-codec --verify
61
+ ```
62
+
63
+ After reviewing the rebuilt artifact, explicitly update `runtime/delivery/codec-pin.ts` with its manifest SHA-256 and sourceCommit, and copy the canonical `definition-golden.json` and `evm-cases.json` into `test/fixtures/plan-codec`. The pin is a reviewed repository/package integrity anchor; changing all trusted package code is outside its threat boundary.
64
+
65
+ `npm run build` compiles TypeScript, runs `scripts/stage-plan-codec.mjs` to verify the pinned manifest and both artifact digests, copies them into `dist-runtime/vendor/plan-codec`, verifies staged bytes, and only then writes runtime identity. Normal builds never fetch or rebuild/re-pin canonical sources. Runtime source entry points verify the same pin and artifact hashes before loading the codec. The compiled pin binds the manifest to runtime identity; the staged CJS bundle is also hashed directly.
66
+
67
+ Both vendor locations are included by existing npm package file rules. Pack tests extract an isolated tarball and read actual source plus shared complete-object/exact-byte golden fixtures with no SmartFlow checkout and no installed dependencies. Tampering with bundle, declarations or provenance fails in runtime and staging checks. Tracked `dist-runtime` files must accompany source changes.
@@ -0,0 +1,20 @@
1
+ # Direct-package template acceptance — 2026-09-09
2
+
3
+ New full projects use `gate-workflow` directly through the existing npm command names. Hardhat and tests import `gate-evm-tools/runtime-config/*` and `runtime/*`; the template no longer contains `scripts/workflow` or `scripts/config` forwarding directories. Business contracts, task/custom scripts, configuration and state remain project-owned.
4
+
5
+ Local artifact: `/Users/vector/gate/local-packages/direct-package/gate-evm-tools-1.1.0-local.0.tgz`. Its SHA-256 is recorded alongside it in `sha256.txt`. This preview is unpublished. The installed runtime digest is `612a6704b8bd379c97ee352a47a04402615a49c38718bc3542ca0f6252097de2`.
6
+
7
+ Validation:
8
+
9
+ - GateTool: 131 tests passed after rebuilding the migration utility.
10
+ - EVM generator/template: build and all 374 tests passed, including direct commands, legacy upgrades and conflict handling.
11
+ - Isolated full project: installed the tarball and refreshed its existing npm lockfile, then `npm ci`, 9 Hardhat tests and a two-custom-step simulation (`direct-final-2`) passed.
12
+ - GateFlow `evm-runtime-check`: accepted the direct-package fixture and reported the matching version/digest.
13
+ - Historical full-template baseline: migration removed 72 recognized files, updated 4 consumers, and backed up originals. All 72 backups matched the baseline. Hardhat differed only in import paths; compiler settings were unchanged. A repeated migration reported 72 current entries and made no changes.
14
+ - Migration skill: quick validation and 89 workflow policy tests passed.
15
+
16
+ Logs, migration plans, GateFlow output and tarball metadata are in the artifact directory above. The historical baseline check shares the isolated project's installed node_modules for resolution; the isolated full project itself was validated using a real frozen npm install.
17
+
18
+ Migration refuses custom/unknown executable references and unsafe paths instead of deleting them. Install the approved package and update dependency/lockfile first, review `gate-workflow migrate`, then apply once. Later compatible upgrades update the exact package and existing lockfile; breaking API/config changes still need migration. Active execution bindings must stay on their original runtime build.
19
+
20
+ No remote transaction broadcast, npm publication, commit/push or active SuperTask mutation was performed in this acceptance.
@@ -0,0 +1,33 @@
1
+ # External infrastructure template acceptance
2
+
3
+ The full template no longer ships Multicall3.sol or UUPSPlaceholder.sol. GateTool queries deployed Multicall authority with a packaged ABI. New proxy deployment steps identify the same business implementation in contract and firstUpgrade.contract; the old placeholder identifier remains supported without loading that artifact.
4
+
5
+ No project proxy Solidity entry remains. registerWorkflowDependencyCompiler adds the canonical OpenZeppelin ERC1967Proxy source name to Hardhat compilation through the project subtask API. Project compiler settings remain authoritative. No infrastructure addresses, salts, deployments or existing project source files were changed by this template update.
6
+
7
+ Pending versions: GateTool 1.0.28, EVM generator 2.1.23 (^1.0.28 dependency), GateFlow 4.2.2. The template capability workflow.external-infrastructure.v1 selects the new integrity checks; historical templates retain their source/artifact checks. Upgrade GateFlow and workflow skills before using this template in a task. The migration helper does not delete existing infrastructure source automatically.
8
+
9
+ Validation:
10
+ - GateTool: 135 tests passed.
11
+ - EVM generator: final full run 374 tests passed, including source-level deployment and upgrade lifecycle regression.
12
+ - GateFlow: 34 tests passed; CLI build passed.
13
+ - ai-workflows: 89 policy tests passed; migration skill validation passed. Initialization accepted the real new fixture without either infrastructure source.
14
+ - Local 1.0.28 tarball installed into an isolated full project, npm ci succeeded, clean Hardhat compilation and 9 tests passed without the two source files.
15
+ - OpenZeppelin proxy bytecode and deployedBytecode were byte-for-byte identical when compiling with and without the two infrastructure sources. Final fixture was cleaned and rebuilt without them.
16
+ - GateFlow accepted the real compiled project with the new capability, actual installed runtime and proxy artifact.
17
+ - Direct dependency compilation without any proxy import source passed 9 Hardhat tests and zkSync compilation (9 sources). EVM proxy bytecode and deployedBytecode matched the original import-based compilation exactly.
18
+
19
+ Local tarball: /Users/vector/gate/local-packages/external-infrastructure/gate-evm-tools-1.0.28.tgz. Final direct OpenZeppelin compilation logs use /tmp/direct-oz-* and are archived beside the tarball; earlier logs use /tmp/external-infra-*; the isolated project is /Users/vector/gate/local-packages/direct-package/full-runtime-check.
20
+
21
+ No broadcast, npm publication, commit or push performed. Existing execution bindings cannot resume under a changed runtime digest; use the original runtime to finish those tasks.
22
+
23
+ ## New-workflow package acceptance
24
+
25
+ Both gate-evm-tools-1.0.28.tgz and gate-evm-hardhat-foundry-2.1.23.tgz were built and inspected. The generator tarball contains none of the three removed Solidity files. The GateTool tarball contains the compiled authority ABI and dependency compiler adapter.
26
+
27
+ Installed the generator tarball in an isolated directory, generated a fresh project, installed the local GateTool tarball and ran npm ci with lifecycle scripts enabled. The retained OpenZeppelin patch applied successfully. Nine Hardhat tests, EVM compilation, zkSync compilation, and static validation of a normal task created from the example passed. The reserved _examples/counter-rollout path is not accepted as a static-validation deployment ID; copy the example to a normal task ID before validating it.
28
+
29
+ GateFlow: 34 tests passed again, and frontend/server/CLI/Electron code builds passed after restoring dependencies from the existing Bun lockfile. The built CLI accepted the fresh generated project. Updated the bundled Universal workflow as well as ai-workflows so new tasks no longer require removed source files. This run did not produce a desktop installer or replace the installed application.
30
+
31
+ ai-workflows: 89 tests passed, all 62 workflow YAML files parsed, initialization and migration skills validated. Acceptance scope is the new workflow only.
32
+
33
+ Artifacts and release-removal-* logs are in /Users/vector/gate/local-packages/external-infrastructure; SHA256SUMS records both tarballs. The fresh project is release-removal-check/project under that directory. No publication, push or remote transaction broadcast was performed.
@@ -0,0 +1,18 @@
1
+ # Network/RPC extraction — local acceptance
2
+
3
+ The full-template Hardhat configuration now calls GateTool's compiled runtime-config exports. RPC parsing and zksyncSolcPath retain compatibility shims. Standard networks and fork validation live in networks.ts; project-provided Hardhat APIs register the solc adapter, without loading an HRE from inside config helpers.
4
+
5
+ The Hardhat config went from 401 to 90 lines. Its Solidity and zkSolc sections were compared byte-for-byte and are unchanged. Overlay projects retain old compiler versions/settings/overrides and merge only helper integration. Per-network `overrides` shallow-merge named network fields; other networks keep their defaults. Manifest/plugin/env/account loading order stays in the project.
6
+
7
+ Validation:
8
+
9
+ - GateTool: 128 tests passed, including differential comparison of all 36 network entries against the original config under fallback, Base RPC and fork environments; overrides and compiler preservation; fork parameter rejection; project-owned compiler hook registration.
10
+ - Template generator: build and all 372 tests passed, including legacy upgrade and packaged config preservation.
11
+ - Generated isolated project: installed the local tarball, completed npm ci, passed 9 Hardhat tests and a two-custom-step no-broadcast workflow simulation. Installed runtime identity matches the build.
12
+ - Migration utility: 72 baseline workflow/helper files replaced; repeated apply is a no-op; hardhat.config.ts remains byte-for-byte unchanged by the migration utility.
13
+ - GateFlow: 32 readiness/context/integrity/RPC tests passed; the built CLI accepted the new installed runtime.
14
+ - Migration skill: 9 policy tests and skill validation passed. The skill now describes helper-based network migration while preserving old compiler settings.
15
+
16
+ The template generator's legacy upgrader also recognizes packaged network config/RPC shims and preserves them rather than injecting old inline logic. Historical upgrade coverage keeps an explicit old-config fixture. The template source tests read network/adapter implementation from the installed package, while separate installed-package integration verifies the real Hardhat boundary.
17
+
18
+ Local artifact and logs: `/Users/vector/gate/local-packages/network-extraction/`. This is a new local build of `1.1.0-local.0` with a distinct runtime digest/tarball hash; the earlier workflow-extraction artifact is retained. Existing execution bindings must not be reused with this different build. No npm publication, commit/push, live SuperTask change or remote transaction broadcast.
@@ -0,0 +1,16 @@
1
+ # Packaged workflow extraction
2
+
3
+ Scope: Move the full template workflow into GateTool, retaining existing project commands, data paths and business hooks. No npm publication or blockchain broadcast. Local tarball installation is the acceptance source. Existing proxy-check changes are preserved.
4
+
5
+ - [x] Record template baseline and GateFlow callers.
6
+ - [x] Package runtime implementations with explicit project runtime resolution and public type/module entrypoints.
7
+ - [x] Preserve old script paths through thin compatibility shims; resolve internal child entrypoints from the installed package.
8
+ - [x] Add runtime version compatibility guards for resumable executions without rewriting old state.
9
+ - [x] Build and pack locally; install the tarball into an isolated full-template fixture.
10
+ - [x] Run configuration, checks, execution/retry/custom-step and template/GateFlow compatibility tests without broadcasting.
11
+ - [x] Provide a migration plan/apply tool that only replaces unchanged known template files, preserving custom files and running task records.
12
+ - [x] Document supported upgrades, limitations, validation results, and rollback.
13
+
14
+ Non-goals: npm publication, moving business contracts or data into node_modules, implementation vanity-policy changes, modifying live SuperTask execution state.
15
+
16
+ Acceptance: `docs/workflow-runtime-acceptance.md`. Tests use packaged source fixtures plus a separately installed compiled-runtime project. No remote EVM or zkSync transaction was broadcast.
@@ -0,0 +1,50 @@
1
+ # Manifest Bootstrap and Transaction Implementation Plan
2
+
3
+ > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
4
+
5
+ **Goal:** Make bare gate-tool manifest commands route to the intended release-stage directory before OpenZeppelin loads and recover the exact manifest after any failed sync.
6
+
7
+ **Architecture:** A dependency-free bin bootstrap validates CLI/environment routing before dynamically importing the compiled command tree. A focused manifest transaction utility owns confinement, locking, byte snapshots, atomic writes, rollback, hashes, and audit reports around `forceImport`.
8
+
9
+ **Tech Stack:** Node.js ESM, TypeScript, OpenZeppelin upgrades-core, Node test runner.
10
+
11
+ ---
12
+
13
+ ### Task 1: Pre-import manifest bootstrap
14
+
15
+ **Files:**
16
+ - Create: `bin/manifest-bootstrap.js`
17
+ - Modify: `bin/cli.js`
18
+ - Create: `test/manifest-bootstrap.test.mjs`
19
+ - Modify: `package.json`
20
+
21
+ - [ ] Write failing tests for `bscDev`, `bscProd`, local, explicit custom directories, environment conflicts, ambiguous mutating networks, traversal, and symlink escape.
22
+ - [ ] Add a module-load-order test proving the environment is set before a simulated upgrades-core import observes it.
23
+ - [ ] Run the focused tests and confirm missing bootstrap behavior.
24
+ - [ ] Implement strict argv parsing and confinement, invoke it before `import('../dist/index.js')`, then re-run tests.
25
+
26
+ ### Task 2: Transactional sync
27
+
28
+ **Files:**
29
+ - Create: `src/utils/manifestTransaction.ts`
30
+ - Modify: `src/core/syncUpgradeJson.ts`
31
+ - Create: `test/manifest-transaction.test.mjs`
32
+
33
+ - [ ] Write failing tests for success hashes, concurrent lock rejection, exact-byte rollback, new-file removal, atomic replacement, and symlink rejection.
34
+ - [ ] Implement a dedicated gate-tool lock, snapshots, atomic write helper, rollback, and JSON audit report.
35
+ - [ ] Wrap `forceImport`, manifest validation, and tx-hash enrichment in the transaction and expose report/hash fields in the result.
36
+ - [ ] Run focused and full tests.
37
+
38
+ ### Task 3: Packaging, docs, and integration
39
+
40
+ **Files:**
41
+ - Modify: `src/core/BytecodeChecker.ts` or its import to use canonical casing
42
+ - Modify: `README.md`
43
+ - Modify: `package.json`
44
+ - Modify: `package-lock.json`
45
+ - Verify: `dist/**`
46
+
47
+ - [ ] Add tests that package metadata runs the Node suite and includes bootstrap files.
48
+ - [ ] Correct the existing filename/import casing mismatch so Linux and case-sensitive builds agree.
49
+ - [ ] Document conventional routing, explicit custom `MANIFEST_DEFAULT_DIR`, fail-closed behavior, transaction reports, and full-workflow usage.
50
+ - [ ] Bump gate-tool to `1.0.21`, build `dist`, run all tests, and perform a bare CLI fixture integration check.
@@ -0,0 +1,49 @@
1
+ # Manifest Review Remediation Implementation Plan
2
+
3
+ > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
4
+
5
+ **Goal:** Close the reviewed rollback, writer-serialization, CLI bootstrap, local-network, and report-collision gaps without weakening fail-closed manifest routing.
6
+
7
+ **Architecture:** Resolve OpenZeppelin's canonical and fallback manifest paths together, confine and lock them by the canonical path, snapshot both exact byte streams, reject dual-file ambiguity, and restore both names exactly on failure. Reuse the same lock around every `sync` and `validate` mutation; emit a per-manifest report path. Treat OpenZeppelin development manifests outside the repository as unsupported for mutating commands.
8
+
9
+ **Tech Stack:** Node.js ESM, TypeScript, OpenZeppelin upgrades-core, Node test runner.
10
+
11
+ ---
12
+
13
+ ### Task 1: Bootstrap aliases and local fail-closed behavior
14
+
15
+ **Files:**
16
+ - Modify: `test/manifest-bootstrap.test.mjs`
17
+ - Modify: `bin/manifest-bootstrap.js`
18
+ - Modify: `README.md`
19
+
20
+ - [ ] Add a failing load-order test for `-n bscDev`.
21
+ - [ ] Change the local-network expectation to an explicit unsupported error and confirm RED.
22
+ - [ ] Parse `--network` and `-n` before command imports; reject local manifest mutations with an actionable error.
23
+ - [ ] Re-run the focused bootstrap tests.
24
+
25
+ ### Task 2: Canonical/fallback transaction and shared writers
26
+
27
+ **Files:**
28
+ - Modify: `test/manifest-transaction.test.mjs`
29
+ - Modify: `src/utils/openzeppelin.ts`
30
+ - Modify: `src/utils/manifestTransaction.ts`
31
+ - Modify: `src/core/syncUpgradeJson.ts`
32
+ - Modify: `src/core/validateAndGenerateCalldata.ts`
33
+
34
+ - [ ] Add failing tests for fallback rename rollback, dual-file ambiguity, temporary exact restore, and a shared lock blocking a concurrent writer.
35
+ - [ ] Expose both OpenZeppelin manifest paths.
36
+ - [ ] Implement a canonical lock plus exact two-path snapshots/restoration.
37
+ - [ ] Wrap persistent and temporary `validate` mutations with the shared protocol.
38
+ - [ ] Require sync success to leave one canonical regular file and emit a distinct per-manifest report.
39
+ - [ ] Re-run focused tests after each behavior.
40
+
41
+ ### Task 3: Packaging and verification
42
+
43
+ **Files:**
44
+ - Modify: `README.md`
45
+ - Verify: `dist/**`
46
+
47
+ - [ ] Document fallback restoration, shared writer locking, local rejection, and returned report paths.
48
+ - [ ] Build `dist`, run the complete test suite, and run `npm pack --dry-run` with the isolated cache.
49
+ - [ ] Inspect the diff and commit the remediation.