@parity/product-lab 0.0.1-placeholder → 0.1.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 (2987) hide show
  1. package/CHANGELOG.md +993 -0
  2. package/LICENSE +204 -0
  3. package/README.md +325 -2
  4. package/adapters/browser/playwright/README.md +214 -0
  5. package/adapters/browser/playwright/src/axe-scan.d.ts +6 -0
  6. package/adapters/browser/playwright/src/axe-scan.js +41 -0
  7. package/adapters/browser/playwright/src/bytes.d.ts +1 -0
  8. package/adapters/browser/playwright/src/bytes.js +5 -0
  9. package/adapters/browser/playwright/src/conditioned-socket.d.ts +28 -0
  10. package/adapters/browser/playwright/src/conditioned-socket.js +40 -0
  11. package/adapters/browser/playwright/src/devices.d.ts +14 -0
  12. package/adapters/browser/playwright/src/devices.js +24 -0
  13. package/adapters/browser/playwright/src/errors.d.ts +2 -0
  14. package/adapters/browser/playwright/src/errors.js +6 -0
  15. package/adapters/browser/playwright/src/evidence-url.d.ts +4 -0
  16. package/adapters/browser/playwright/src/evidence-url.js +29 -0
  17. package/adapters/browser/playwright/src/faithful-web-socket.d.ts +2 -0
  18. package/adapters/browser/playwright/src/faithful-web-socket.js +9 -0
  19. package/adapters/browser/playwright/src/free-loopback-port.d.ts +2 -0
  20. package/adapters/browser/playwright/src/free-loopback-port.js +13 -0
  21. package/adapters/browser/playwright/src/headless-app-surface.d.ts +30 -0
  22. package/adapters/browser/playwright/src/headless-app-surface.js +68 -0
  23. package/adapters/browser/playwright/src/index.d.ts +16 -0
  24. package/adapters/browser/playwright/src/index.js +18 -0
  25. package/adapters/browser/playwright/src/native-rtc.d.ts +11 -0
  26. package/adapters/browser/playwright/src/native-rtc.js +89 -0
  27. package/adapters/browser/playwright/src/network-evidence.d.ts +25 -0
  28. package/adapters/browser/playwright/src/network-evidence.js +575 -0
  29. package/adapters/browser/playwright/src/page-conditions.d.ts +37 -0
  30. package/adapters/browser/playwright/src/page-conditions.js +81 -0
  31. package/adapters/browser/playwright/src/page-console-watch.d.ts +12 -0
  32. package/adapters/browser/playwright/src/page-console-watch.js +43 -0
  33. package/adapters/browser/playwright/src/page-frame-capture.d.ts +32 -0
  34. package/adapters/browser/playwright/src/page-frame-capture.js +87 -0
  35. package/adapters/browser/playwright/src/page-video.d.ts +15 -0
  36. package/adapters/browser/playwright/src/page-video.js +25 -0
  37. package/adapters/browser/playwright/src/playwright-browser-context.d.ts +20 -0
  38. package/adapters/browser/playwright/src/playwright-browser-context.js +44 -0
  39. package/adapters/browser/playwright/src/playwright-browser-launcher.d.ts +9 -0
  40. package/adapters/browser/playwright/src/playwright-browser-launcher.js +53 -0
  41. package/adapters/browser/playwright/src/playwright-browser.d.ts +57 -0
  42. package/adapters/browser/playwright/src/playwright-browser.js +71 -0
  43. package/adapters/browser/playwright/src/playwright-page.d.ts +68 -0
  44. package/adapters/browser/playwright/src/playwright-page.js +111 -0
  45. package/adapters/browser/playwright/src/playwright-route.d.ts +13 -0
  46. package/adapters/browser/playwright/src/playwright-route.js +29 -0
  47. package/adapters/browser/playwright/src/playwright-slide-renderer.d.ts +11 -0
  48. package/adapters/browser/playwright/src/playwright-slide-renderer.js +26 -0
  49. package/adapters/browser/playwright/src/playwright-web-socket-route.d.ts +16 -0
  50. package/adapters/browser/playwright/src/playwright-web-socket-route.js +27 -0
  51. package/adapters/browser/playwright/src/press-target.d.ts +76 -0
  52. package/adapters/browser/playwright/src/press-target.js +186 -0
  53. package/adapters/browser/playwright/src/socket-routes.d.ts +14 -0
  54. package/adapters/browser/playwright/src/socket-routes.js +20 -0
  55. package/adapters/browser/playwright/src/wire-delivery.d.ts +10 -0
  56. package/adapters/browser/playwright/src/wire-delivery.js +31 -0
  57. package/adapters/browser/playwright/src/worker-hold.d.ts +26 -0
  58. package/adapters/browser/playwright/src/worker-hold.js +115 -0
  59. package/adapters/chain/papi/README.md +203 -0
  60. package/adapters/chain/papi/src/chain-access.d.ts +178 -0
  61. package/adapters/chain/papi/src/chain-access.js +530 -0
  62. package/adapters/chain/papi/src/errors.d.ts +15 -0
  63. package/adapters/chain/papi/src/errors.js +29 -0
  64. package/adapters/chain/papi/src/extrinsic-decoder.d.ts +21 -0
  65. package/adapters/chain/papi/src/extrinsic-decoder.js +396 -0
  66. package/adapters/chain/papi/src/extrinsic-signer.d.ts +2 -0
  67. package/adapters/chain/papi/src/extrinsic-signer.js +14 -0
  68. package/adapters/chain/papi/src/index.d.ts +5 -0
  69. package/adapters/chain/papi/src/index.js +7 -0
  70. package/adapters/chain/papi/src/plain-value.d.ts +7 -0
  71. package/adapters/chain/papi/src/plain-value.js +58 -0
  72. package/adapters/chain/papi/src/signer.d.ts +27 -0
  73. package/adapters/chain/papi/src/signer.js +51 -0
  74. package/adapters/chain/papi/src/statement-store-reader.d.ts +12 -0
  75. package/adapters/chain/papi/src/statement-store-reader.js +146 -0
  76. package/adapters/chain/papi/src/track-transaction.d.ts +47 -0
  77. package/adapters/chain/papi/src/track-transaction.js +97 -0
  78. package/adapters/chain/papi/src/transaction-submitter.d.ts +87 -0
  79. package/adapters/chain/papi/src/transaction-submitter.js +132 -0
  80. package/adapters/deploy/bulletin/README.md +148 -0
  81. package/adapters/deploy/bulletin/src/bulletin-deployer.d.ts +82 -0
  82. package/adapters/deploy/bulletin/src/bulletin-deployer.js +234 -0
  83. package/adapters/deploy/bulletin/src/bytes.d.ts +6 -0
  84. package/adapters/deploy/bulletin/src/bytes.js +25 -0
  85. package/adapters/deploy/bulletin/src/content/bulletin-content-reader.d.ts +35 -0
  86. package/adapters/deploy/bulletin/src/content/bulletin-content-reader.js +58 -0
  87. package/adapters/deploy/bulletin/src/content/car.d.ts +27 -0
  88. package/adapters/deploy/bulletin/src/content/car.js +112 -0
  89. package/adapters/deploy/bulletin/src/content/cid.d.ts +31 -0
  90. package/adapters/deploy/bulletin/src/content/cid.js +114 -0
  91. package/adapters/deploy/bulletin/src/content/dag.d.ts +27 -0
  92. package/adapters/deploy/bulletin/src/content/dag.js +157 -0
  93. package/adapters/deploy/bulletin/src/content/ipfs-gateway-source.d.ts +10 -0
  94. package/adapters/deploy/bulletin/src/content/ipfs-gateway-source.js +14 -0
  95. package/adapters/deploy/bulletin/src/content/retrieve-content.d.ts +3 -0
  96. package/adapters/deploy/bulletin/src/content/retrieve-content.js +18 -0
  97. package/adapters/deploy/bulletin/src/content/site.d.ts +16 -0
  98. package/adapters/deploy/bulletin/src/content/site.js +56 -0
  99. package/adapters/deploy/bulletin/src/deployment-check.d.ts +25 -0
  100. package/adapters/deploy/bulletin/src/deployment-check.js +51 -0
  101. package/adapters/deploy/bulletin/src/dotns/dotns-registrar.d.ts +31 -0
  102. package/adapters/deploy/bulletin/src/dotns/dotns-registrar.js +53 -0
  103. package/adapters/deploy/bulletin/src/dotns/dotns-resolver.d.ts +41 -0
  104. package/adapters/deploy/bulletin/src/dotns/dotns-resolver.js +148 -0
  105. package/adapters/deploy/bulletin/src/dotns/manifest-freshness.d.ts +66 -0
  106. package/adapters/deploy/bulletin/src/dotns/manifest-freshness.js +76 -0
  107. package/adapters/deploy/bulletin/src/dotns/read-only-rpc.d.ts +17 -0
  108. package/adapters/deploy/bulletin/src/dotns/read-only-rpc.js +23 -0
  109. package/adapters/deploy/bulletin/src/endpoints.d.ts +20 -0
  110. package/adapters/deploy/bulletin/src/endpoints.js +36 -0
  111. package/adapters/deploy/bulletin/src/errors.d.ts +13 -0
  112. package/adapters/deploy/bulletin/src/errors.js +13 -0
  113. package/adapters/deploy/bulletin/src/gateway/deployed-content-gateway.d.ts +46 -0
  114. package/adapters/deploy/bulletin/src/gateway/deployed-content-gateway.js +126 -0
  115. package/adapters/deploy/bulletin/src/gateway/gateway-destinations.d.ts +35 -0
  116. package/adapters/deploy/bulletin/src/gateway/gateway-destinations.js +45 -0
  117. package/adapters/deploy/bulletin/src/gateway/gateway-program.d.ts +79 -0
  118. package/adapters/deploy/bulletin/src/gateway/gateway-program.js +181 -0
  119. package/adapters/deploy/bulletin/src/index.d.ts +27 -0
  120. package/adapters/deploy/bulletin/src/index.js +29 -0
  121. package/adapters/deploy/bulletin/src/launch/deployed-local-launcher.d.ts +77 -0
  122. package/adapters/deploy/bulletin/src/launch/deployed-local-launcher.js +90 -0
  123. package/adapters/deploy/bulletin/src/launch/launch-mode.d.ts +12 -0
  124. package/adapters/deploy/bulletin/src/launch/launch-mode.js +23 -0
  125. package/adapters/deploy/bulletin/src/platform/bulletin-store.d.ts +17 -0
  126. package/adapters/deploy/bulletin/src/platform/bulletin-store.js +28 -0
  127. package/adapters/deploy/bulletin/src/platform/chain-ports.d.ts +69 -0
  128. package/adapters/deploy/bulletin/src/platform/chain-ports.js +69 -0
  129. package/adapters/deploy/bulletin/src/platform/platform-requirements.d.ts +34 -0
  130. package/adapters/deploy/bulletin/src/platform/platform-requirements.js +12 -0
  131. package/adapters/deploy/bulletin/src/platform/revive-contracts.d.ts +53 -0
  132. package/adapters/deploy/bulletin/src/platform/revive-contracts.js +86 -0
  133. package/adapters/deploy/bulletin/src/platform/statement-store.d.ts +50 -0
  134. package/adapters/deploy/bulletin/src/platform/statement-store.js +96 -0
  135. package/adapters/deploy/bulletin/src/tool/bulletin-deploy-library.d.ts +64 -0
  136. package/adapters/deploy/bulletin/src/tool/bulletin-deploy-library.js +33 -0
  137. package/adapters/deploy/bulletin/src/tool/bulletin-deploy-tool.d.ts +18 -0
  138. package/adapters/deploy/bulletin/src/tool/bulletin-deploy-tool.js +73 -0
  139. package/adapters/deploy/bulletin/src/tool/environment-file.d.ts +34 -0
  140. package/adapters/deploy/bulletin/src/tool/environment-file.js +36 -0
  141. package/adapters/environment/attached/README.md +75 -0
  142. package/adapters/environment/attached/src/index.d.ts +54 -0
  143. package/adapters/environment/attached/src/index.js +123 -0
  144. package/adapters/environment/attached/src/live-network.d.ts +62 -0
  145. package/adapters/environment/attached/src/live-network.js +96 -0
  146. package/adapters/environment/attached/src/versions.d.ts +29 -0
  147. package/adapters/environment/attached/src/versions.js +51 -0
  148. package/adapters/environment/chopsticks/README.md +200 -0
  149. package/adapters/environment/chopsticks/src/chopsticks-environment-factory.d.ts +140 -0
  150. package/adapters/environment/chopsticks/src/chopsticks-environment-factory.js +55 -0
  151. package/adapters/environment/chopsticks/src/chopsticks-topology.d.ts +176 -0
  152. package/adapters/environment/chopsticks/src/chopsticks-topology.js +287 -0
  153. package/adapters/environment/chopsticks/src/constants.d.ts +11 -0
  154. package/adapters/environment/chopsticks/src/constants.js +15 -0
  155. package/adapters/environment/chopsticks/src/dev-authority.d.ts +21 -0
  156. package/adapters/environment/chopsticks/src/dev-authority.js +66 -0
  157. package/adapters/environment/chopsticks/src/environment.d.ts +133 -0
  158. package/adapters/environment/chopsticks/src/environment.js +358 -0
  159. package/adapters/environment/chopsticks/src/extensions.d.ts +27 -0
  160. package/adapters/environment/chopsticks/src/extensions.js +60 -0
  161. package/adapters/environment/chopsticks/src/general-extrinsic-support.d.ts +17 -0
  162. package/adapters/environment/chopsticks/src/general-extrinsic-support.js +58 -0
  163. package/adapters/environment/chopsticks/src/index.d.ts +15 -0
  164. package/adapters/environment/chopsticks/src/index.js +17 -0
  165. package/adapters/environment/chopsticks/src/options.d.ts +75 -0
  166. package/adapters/environment/chopsticks/src/options.js +56 -0
  167. package/adapters/environment/chopsticks/src/plan.d.ts +49 -0
  168. package/adapters/environment/chopsticks/src/plan.js +68 -0
  169. package/adapters/environment/chopsticks/src/provider.d.ts +43 -0
  170. package/adapters/environment/chopsticks/src/provider.js +78 -0
  171. package/adapters/environment/chopsticks/src/spec-proxy.d.ts +16 -0
  172. package/adapters/environment/chopsticks/src/spec-proxy.js +109 -0
  173. package/adapters/environment/chopsticks/src/sqlite-support.d.ts +15 -0
  174. package/adapters/environment/chopsticks/src/sqlite-support.js +32 -0
  175. package/adapters/environment/chopsticks/src/time.d.ts +18 -0
  176. package/adapters/environment/chopsticks/src/time.js +96 -0
  177. package/adapters/environment/chopsticks/src/topology-options-schema.d.ts +119 -0
  178. package/adapters/environment/chopsticks/src/topology-options-schema.js +58 -0
  179. package/adapters/environment/chopsticks/src/topology.d.ts +11 -0
  180. package/adapters/environment/chopsticks/src/topology.js +64 -0
  181. package/adapters/environment/chopsticks/src/upstream.d.ts +22 -0
  182. package/adapters/environment/chopsticks/src/upstream.js +58 -0
  183. package/adapters/environment/chopsticks/src/versions.d.ts +31 -0
  184. package/adapters/environment/chopsticks/src/versions.js +58 -0
  185. package/adapters/environment/engine/README.md +123 -0
  186. package/adapters/environment/engine/engine.example.json +9 -0
  187. package/adapters/environment/engine/src/engine/approval-pin.d.ts +106 -0
  188. package/adapters/environment/engine/src/engine/approval-pin.js +98 -0
  189. package/adapters/environment/engine/src/engine/chain-clock.d.ts +55 -0
  190. package/adapters/environment/engine/src/engine/chain-clock.js +66 -0
  191. package/adapters/environment/engine/src/engine/checkout-lock.d.ts +52 -0
  192. package/adapters/environment/engine/src/engine/checkout-lock.js +136 -0
  193. package/adapters/environment/engine/src/engine/drain.d.ts +54 -0
  194. package/adapters/environment/engine/src/engine/drain.js +74 -0
  195. package/adapters/environment/engine/src/engine/engine-config.d.ts +97 -0
  196. package/adapters/environment/engine/src/engine/engine-config.js +55 -0
  197. package/adapters/environment/engine/src/engine/engine-health.d.ts +99 -0
  198. package/adapters/environment/engine/src/engine/engine-health.js +217 -0
  199. package/adapters/environment/engine/src/engine/engine-ports.d.ts +13 -0
  200. package/adapters/environment/engine/src/engine/engine-ports.js +60 -0
  201. package/adapters/environment/engine/src/engine/engine-prepare.d.ts +55 -0
  202. package/adapters/environment/engine/src/engine/engine-prepare.js +86 -0
  203. package/adapters/environment/engine/src/engine/engine-setup-jobs.d.ts +16 -0
  204. package/adapters/environment/engine/src/engine/engine-setup-jobs.js +63 -0
  205. package/adapters/environment/engine/src/engine/engine-start-phases.d.ts +65 -0
  206. package/adapters/environment/engine/src/engine/engine-start-phases.js +230 -0
  207. package/adapters/environment/engine/src/engine/eth-rpc-probe.d.ts +17 -0
  208. package/adapters/environment/engine/src/engine/eth-rpc-probe.js +23 -0
  209. package/adapters/environment/engine/src/engine/finality-stall.d.ts +41 -0
  210. package/adapters/environment/engine/src/engine/finality-stall.js +61 -0
  211. package/adapters/environment/engine/src/engine/fork-bundle.d.ts +59 -0
  212. package/adapters/environment/engine/src/engine/fork-bundle.js +159 -0
  213. package/adapters/environment/engine/src/engine/fork-freshness.d.ts +154 -0
  214. package/adapters/environment/engine/src/engine/fork-freshness.js +238 -0
  215. package/adapters/environment/engine/src/engine/fork-isolation.d.ts +19 -0
  216. package/adapters/environment/engine/src/engine/fork-isolation.js +44 -0
  217. package/adapters/environment/engine/src/engine/fork-refresh.d.ts +75 -0
  218. package/adapters/environment/engine/src/engine/fork-refresh.js +193 -0
  219. package/adapters/environment/engine/src/engine/fork-setup.d.ts +59 -0
  220. package/adapters/environment/engine/src/engine/fork-setup.js +87 -0
  221. package/adapters/environment/engine/src/engine/fork-snapshot.d.ts +6 -0
  222. package/adapters/environment/engine/src/engine/fork-snapshot.js +42 -0
  223. package/adapters/environment/engine/src/engine/fork-toml.d.ts +110 -0
  224. package/adapters/environment/engine/src/engine/fork-toml.js +260 -0
  225. package/adapters/environment/engine/src/engine/fork-topology.d.ts +65 -0
  226. package/adapters/environment/engine/src/engine/fork-topology.js +61 -0
  227. package/adapters/environment/engine/src/engine/fork-updates.d.ts +61 -0
  228. package/adapters/environment/engine/src/engine/fork-updates.js +148 -0
  229. package/adapters/environment/engine/src/engine/ipfs-isolation.d.ts +38 -0
  230. package/adapters/environment/engine/src/engine/ipfs-isolation.js +62 -0
  231. package/adapters/environment/engine/src/engine/live-network.d.ts +32 -0
  232. package/adapters/environment/engine/src/engine/live-network.js +41 -0
  233. package/adapters/environment/engine/src/engine/network-adoption.d.ts +56 -0
  234. package/adapters/environment/engine/src/engine/network-adoption.js +195 -0
  235. package/adapters/environment/engine/src/engine/network-plan.d.ts +71 -0
  236. package/adapters/environment/engine/src/engine/network-plan.js +158 -0
  237. package/adapters/environment/engine/src/engine/network-reset.d.ts +18 -0
  238. package/adapters/environment/engine/src/engine/network-reset.js +21 -0
  239. package/adapters/environment/engine/src/engine/network-seed.d.ts +82 -0
  240. package/adapters/environment/engine/src/engine/network-seed.js +183 -0
  241. package/adapters/environment/engine/src/engine/network-snapshots.d.ts +64 -0
  242. package/adapters/environment/engine/src/engine/network-snapshots.js +161 -0
  243. package/adapters/environment/engine/src/engine/network-template.d.ts +65 -0
  244. package/adapters/environment/engine/src/engine/network-template.js +98 -0
  245. package/adapters/environment/engine/src/engine/node-isolation.d.ts +83 -0
  246. package/adapters/environment/engine/src/engine/node-isolation.js +164 -0
  247. package/adapters/environment/engine/src/engine/node-temp-dir.d.ts +27 -0
  248. package/adapters/environment/engine/src/engine/node-temp-dir.js +31 -0
  249. package/adapters/environment/engine/src/engine/owned-engine.d.ts +312 -0
  250. package/adapters/environment/engine/src/engine/owned-engine.js +595 -0
  251. package/adapters/environment/engine/src/engine/owned-environment.d.ts +24 -0
  252. package/adapters/environment/engine/src/engine/owned-environment.js +84 -0
  253. package/adapters/environment/engine/src/engine/persisted-data.d.ts +67 -0
  254. package/adapters/environment/engine/src/engine/persisted-data.js +147 -0
  255. package/adapters/environment/engine/src/engine/persisted-isolation.d.ts +33 -0
  256. package/adapters/environment/engine/src/engine/persisted-isolation.js +91 -0
  257. package/adapters/environment/engine/src/engine/persistent-network.d.ts +354 -0
  258. package/adapters/environment/engine/src/engine/persistent-network.js +580 -0
  259. package/adapters/environment/engine/src/engine/plan-ports.d.ts +83 -0
  260. package/adapters/environment/engine/src/engine/plan-ports.js +165 -0
  261. package/adapters/environment/engine/src/engine/published-bundle.d.ts +117 -0
  262. package/adapters/environment/engine/src/engine/published-bundle.js +250 -0
  263. package/adapters/environment/engine/src/engine/runtime-upgrade.d.ts +131 -0
  264. package/adapters/environment/engine/src/engine/runtime-upgrade.js +202 -0
  265. package/adapters/environment/engine/src/engine/saved-tooling.d.ts +10 -0
  266. package/adapters/environment/engine/src/engine/saved-tooling.js +32 -0
  267. package/adapters/environment/engine/src/engine/turn-relay.d.ts +80 -0
  268. package/adapters/environment/engine/src/engine/turn-relay.js +103 -0
  269. package/adapters/environment/engine/src/errors.d.ts +140 -0
  270. package/adapters/environment/engine/src/errors.js +131 -0
  271. package/adapters/environment/engine/src/evidence/engine-logs.d.ts +4 -0
  272. package/adapters/environment/engine/src/evidence/engine-logs.js +20 -0
  273. package/adapters/environment/engine/src/evidence/engine-progress.d.ts +18 -0
  274. package/adapters/environment/engine/src/evidence/engine-progress.js +102 -0
  275. package/adapters/environment/engine/src/index.d.ts +52 -0
  276. package/adapters/environment/engine/src/index.js +54 -0
  277. package/adapters/environment/engine/src/saved-fork/saved-fork-tooling.d.ts +20 -0
  278. package/adapters/environment/engine/src/saved-fork/saved-fork-tooling.js +66 -0
  279. package/adapters/environment/engine/src/saved-fork/saved-fork.d.ts +118 -0
  280. package/adapters/environment/engine/src/saved-fork/saved-fork.js +298 -0
  281. package/adapters/environment/engine/src/session/chain-observation.d.ts +30 -0
  282. package/adapters/environment/engine/src/session/chain-observation.js +23 -0
  283. package/adapters/environment/engine/src/session/engine-networks.d.ts +8 -0
  284. package/adapters/environment/engine/src/session/engine-networks.js +6 -0
  285. package/adapters/environment/engine/src/session/network-lock.d.ts +107 -0
  286. package/adapters/environment/engine/src/session/network-lock.js +125 -0
  287. package/adapters/environment/engine/src/session/readiness.d.ts +181 -0
  288. package/adapters/environment/engine/src/session/readiness.js +251 -0
  289. package/adapters/environment/engine/src/session/runtime-dependency.d.ts +188 -0
  290. package/adapters/environment/engine/src/session/runtime-dependency.js +20 -0
  291. package/adapters/environment/engine/src/session/session.d.ts +243 -0
  292. package/adapters/environment/engine/src/session/session.js +98 -0
  293. package/adapters/environment/engine/src/setup/engine-build.d.ts +13 -0
  294. package/adapters/environment/engine/src/setup/engine-build.js +24 -0
  295. package/adapters/environment/engine/src/setup/patch-catalogue.d.ts +20 -0
  296. package/adapters/environment/engine/src/setup/patch-catalogue.js +15 -0
  297. package/adapters/environment/engine/src/setup/patches.d.ts +37 -0
  298. package/adapters/environment/engine/src/setup/patches.js +48 -0
  299. package/adapters/environment/engine/src/setup/prepare-engine.d.ts +86 -0
  300. package/adapters/environment/engine/src/setup/prepare-engine.js +186 -0
  301. package/adapters/environment/engine/src/setup/setup-command.d.ts +11 -0
  302. package/adapters/environment/engine/src/setup/setup-command.js +17 -0
  303. package/adapters/environment/engine/src/setup/sync-command.d.ts +3 -0
  304. package/adapters/environment/engine/src/setup/sync-command.js +10 -0
  305. package/adapters/environment/engine/src/testing/engine-dashboard.d.ts +37 -0
  306. package/adapters/environment/engine/src/testing/engine-dashboard.js +83 -0
  307. package/adapters/environment/engine/src/topology/engine-environment-factory.d.ts +107 -0
  308. package/adapters/environment/engine/src/topology/engine-environment-factory.js +37 -0
  309. package/adapters/environment/engine/src/topology/engine-plan.d.ts +35 -0
  310. package/adapters/environment/engine/src/topology/engine-plan.js +84 -0
  311. package/adapters/environment/engine/src/topology/engine-provider.d.ts +25 -0
  312. package/adapters/environment/engine/src/topology/engine-provider.js +109 -0
  313. package/adapters/environment/engine/src/topology/engine-run.d.ts +63 -0
  314. package/adapters/environment/engine/src/topology/engine-run.js +129 -0
  315. package/adapters/environment/engine/src/topology/engine-topology.d.ts +131 -0
  316. package/adapters/environment/engine/src/topology/engine-topology.js +236 -0
  317. package/adapters/environment/engine/src/topology/topology-options-schema.d.ts +79 -0
  318. package/adapters/environment/engine/src/topology/topology-options-schema.js +57 -0
  319. package/adapters/environment/engine/src/versions/engine-versions.d.ts +90 -0
  320. package/adapters/environment/engine/src/versions/engine-versions.js +138 -0
  321. package/adapters/environment/relayless/README.md +199 -0
  322. package/adapters/environment/relayless/src/chain-readiness.d.ts +37 -0
  323. package/adapters/environment/relayless/src/chain-readiness.js +51 -0
  324. package/adapters/environment/relayless/src/fast-baseline.d.ts +43 -0
  325. package/adapters/environment/relayless/src/fast-baseline.js +56 -0
  326. package/adapters/environment/relayless/src/index.d.ts +15 -0
  327. package/adapters/environment/relayless/src/index.js +17 -0
  328. package/adapters/environment/relayless/src/manual-seal-session.d.ts +125 -0
  329. package/adapters/environment/relayless/src/manual-seal-session.js +82 -0
  330. package/adapters/environment/relayless/src/owned-people-node.d.ts +55 -0
  331. package/adapters/environment/relayless/src/owned-people-node.js +199 -0
  332. package/adapters/environment/relayless/src/prepare-people-genesis.d.ts +87 -0
  333. package/adapters/environment/relayless/src/prepare-people-genesis.js +119 -0
  334. package/adapters/environment/relayless/src/topology/dev-chain-spec.d.ts +44 -0
  335. package/adapters/environment/relayless/src/topology/dev-chain-spec.js +131 -0
  336. package/adapters/environment/relayless/src/topology/dev-node.d.ts +21 -0
  337. package/adapters/environment/relayless/src/topology/dev-node.js +41 -0
  338. package/adapters/environment/relayless/src/topology/locked-artifacts.d.ts +35 -0
  339. package/adapters/environment/relayless/src/topology/locked-artifacts.js +87 -0
  340. package/adapters/environment/relayless/src/topology/relayless-environment-factory.d.ts +106 -0
  341. package/adapters/environment/relayless/src/topology/relayless-environment-factory.js +38 -0
  342. package/adapters/environment/relayless/src/topology/relayless-environment.d.ts +152 -0
  343. package/adapters/environment/relayless/src/topology/relayless-environment.js +443 -0
  344. package/adapters/environment/relayless/src/topology/relayless-plan.d.ts +43 -0
  345. package/adapters/environment/relayless/src/topology/relayless-plan.js +85 -0
  346. package/adapters/environment/relayless/src/topology/relayless-provider.d.ts +60 -0
  347. package/adapters/environment/relayless/src/topology/relayless-provider.js +231 -0
  348. package/adapters/environment/relayless/src/topology/relayless-snapshots.d.ts +24 -0
  349. package/adapters/environment/relayless/src/topology/relayless-snapshots.js +112 -0
  350. package/adapters/environment/relayless/src/topology/relayless-time.d.ts +66 -0
  351. package/adapters/environment/relayless/src/topology/relayless-time.js +124 -0
  352. package/adapters/environment/relayless/src/topology/relayless-topology.d.ts +122 -0
  353. package/adapters/environment/relayless/src/topology/relayless-topology.js +178 -0
  354. package/adapters/environment/relayless/src/topology/spec-cache.d.ts +24 -0
  355. package/adapters/environment/relayless/src/topology/spec-cache.js +53 -0
  356. package/adapters/environment/relayless/src/topology/statement-store.d.ts +20 -0
  357. package/adapters/environment/relayless/src/topology/statement-store.js +60 -0
  358. package/adapters/environment/relayless/src/topology/topology-options-schema.d.ts +79 -0
  359. package/adapters/environment/relayless/src/topology/topology-options-schema.js +57 -0
  360. package/adapters/environment/relayless/src/topology/workspace-record.d.ts +30 -0
  361. package/adapters/environment/relayless/src/topology/workspace-record.js +49 -0
  362. package/adapters/features/cucumber/README.md +85 -0
  363. package/adapters/features/cucumber/src/cucumber-child.d.ts +1 -0
  364. package/adapters/features/cucumber/src/cucumber-child.js +53 -0
  365. package/adapters/features/cucumber/src/cucumber-feature-runner.d.ts +49 -0
  366. package/adapters/features/cucumber/src/cucumber-feature-runner.js +114 -0
  367. package/adapters/features/cucumber/src/cucumber-installation.d.ts +14 -0
  368. package/adapters/features/cucumber/src/cucumber-installation.js +44 -0
  369. package/adapters/features/cucumber/src/cucumber-report.d.ts +11 -0
  370. package/adapters/features/cucumber/src/cucumber-report.js +121 -0
  371. package/adapters/features/cucumber/src/cucumber-run.d.ts +38 -0
  372. package/adapters/features/cucumber/src/cucumber-run.js +126 -0
  373. package/adapters/features/cucumber/src/glob-feature-source.d.ts +9 -0
  374. package/adapters/features/cucumber/src/glob-feature-source.js +31 -0
  375. package/adapters/features/cucumber/src/in-process-cucumber-run.d.ts +20 -0
  376. package/adapters/features/cucumber/src/in-process-cucumber-run.js +119 -0
  377. package/adapters/features/cucumber/src/index.d.ts +9 -0
  378. package/adapters/features/cucumber/src/index.js +11 -0
  379. package/adapters/features/cucumber/src/plain-format.d.ts +11 -0
  380. package/adapters/features/cucumber/src/plain-format.js +20 -0
  381. package/adapters/features/cucumber/src/plain-run.d.ts +153 -0
  382. package/adapters/features/cucumber/src/plain-run.js +207 -0
  383. package/adapters/features/cucumber/src/run-log.d.ts +16 -0
  384. package/adapters/features/cucumber/src/run-log.js +50 -0
  385. package/adapters/features/cucumber/src/steps/feature-session-settings.d.ts +7 -0
  386. package/adapters/features/cucumber/src/steps/feature-session-settings.js +15 -0
  387. package/adapters/features/cucumber/src/steps/register-feature-steps.d.ts +144 -0
  388. package/adapters/features/cucumber/src/steps/register-feature-steps.js +276 -0
  389. package/adapters/features/cucumber/src/support/bundled-support.d.ts +1 -0
  390. package/adapters/features/cucumber/src/support/bundled-support.js +69 -0
  391. package/adapters/host/dotli/README.md +135 -0
  392. package/adapters/host/dotli/src/dotli-build.d.ts +85 -0
  393. package/adapters/host/dotli/src/dotli-build.js +169 -0
  394. package/adapters/host/dotli/src/dotli-host-factory.d.ts +66 -0
  395. package/adapters/host/dotli/src/dotli-host-factory.js +82 -0
  396. package/adapters/host/dotli/src/dotli-host.d.ts +182 -0
  397. package/adapters/host/dotli/src/dotli-host.js +327 -0
  398. package/adapters/host/dotli/src/dotli-server.d.ts +9 -0
  399. package/adapters/host/dotli/src/dotli-server.js +135 -0
  400. package/adapters/host/dotli/src/framing.d.ts +10 -0
  401. package/adapters/host/dotli/src/framing.js +20 -0
  402. package/adapters/host/dotli/src/index.d.ts +40 -0
  403. package/adapters/host/dotli/src/index.js +21 -0
  404. package/adapters/host/dotli/src/interception.d.ts +59 -0
  405. package/adapters/host/dotli/src/interception.js +115 -0
  406. package/adapters/host/dotli/src/page-console.d.ts +40 -0
  407. package/adapters/host/dotli/src/page-console.js +44 -0
  408. package/adapters/host/dotli/src/routing.d.ts +119 -0
  409. package/adapters/host/dotli/src/routing.js +157 -0
  410. package/adapters/host/truapi-cli/README.md +807 -0
  411. package/adapters/host/truapi-cli/host.lock.json +33 -0
  412. package/adapters/host/truapi-cli/src/acquire.d.ts +81 -0
  413. package/adapters/host/truapi-cli/src/acquire.js +213 -0
  414. package/adapters/host/truapi-cli/src/attest-provision.d.ts +49 -0
  415. package/adapters/host/truapi-cli/src/attest-provision.js +181 -0
  416. package/adapters/host/truapi-cli/src/build.d.ts +45 -0
  417. package/adapters/host/truapi-cli/src/build.js +234 -0
  418. package/adapters/host/truapi-cli/src/capability-probes.d.ts +66 -0
  419. package/adapters/host/truapi-cli/src/capability-probes.js +272 -0
  420. package/adapters/host/truapi-cli/src/checkout.d.ts +25 -0
  421. package/adapters/host/truapi-cli/src/checkout.js +33 -0
  422. package/adapters/host/truapi-cli/src/cli-identity.d.ts +12 -0
  423. package/adapters/host/truapi-cli/src/cli-identity.js +31 -0
  424. package/adapters/host/truapi-cli/src/cli-session.d.ts +12 -0
  425. package/adapters/host/truapi-cli/src/cli-session.js +245 -0
  426. package/adapters/host/truapi-cli/src/conditioned-routing.d.ts +17 -0
  427. package/adapters/host/truapi-cli/src/conditioned-routing.js +48 -0
  428. package/adapters/host/truapi-cli/src/host-cache.d.ts +25 -0
  429. package/adapters/host/truapi-cli/src/host-cache.js +131 -0
  430. package/adapters/host/truapi-cli/src/host-link.d.ts +16 -0
  431. package/adapters/host/truapi-cli/src/host-link.js +87 -0
  432. package/adapters/host/truapi-cli/src/host-lock.d.ts +59 -0
  433. package/adapters/host/truapi-cli/src/host-lock.js +81 -0
  434. package/adapters/host/truapi-cli/src/host-options.d.ts +65 -0
  435. package/adapters/host/truapi-cli/src/host-options.js +61 -0
  436. package/adapters/host/truapi-cli/src/host-process.d.ts +79 -0
  437. package/adapters/host/truapi-cli/src/host-process.js +160 -0
  438. package/adapters/host/truapi-cli/src/host-records.d.ts +73 -0
  439. package/adapters/host/truapi-cli/src/host-records.js +16 -0
  440. package/adapters/host/truapi-cli/src/host-requests.d.ts +24 -0
  441. package/adapters/host/truapi-cli/src/host-requests.js +75 -0
  442. package/adapters/host/truapi-cli/src/host-temp-dir.d.ts +26 -0
  443. package/adapters/host/truapi-cli/src/host-temp-dir.js +31 -0
  444. package/adapters/host/truapi-cli/src/host-types.d.ts +115 -0
  445. package/adapters/host/truapi-cli/src/host-types.js +3 -0
  446. package/adapters/host/truapi-cli/src/host-verification.d.ts +20 -0
  447. package/adapters/host/truapi-cli/src/host-verification.js +101 -0
  448. package/adapters/host/truapi-cli/src/host.d.ts +14 -0
  449. package/adapters/host/truapi-cli/src/host.js +186 -0
  450. package/adapters/host/truapi-cli/src/identity-fingerprint.d.ts +3 -0
  451. package/adapters/host/truapi-cli/src/identity-fingerprint.js +6 -0
  452. package/adapters/host/truapi-cli/src/index.d.ts +26 -0
  453. package/adapters/host/truapi-cli/src/index.js +28 -0
  454. package/adapters/host/truapi-cli/src/launch.d.ts +113 -0
  455. package/adapters/host/truapi-cli/src/launch.js +244 -0
  456. package/adapters/host/truapi-cli/src/navigation.d.ts +23 -0
  457. package/adapters/host/truapi-cli/src/navigation.js +111 -0
  458. package/adapters/host/truapi-cli/src/network-config.d.ts +35 -0
  459. package/adapters/host/truapi-cli/src/network-config.js +41 -0
  460. package/adapters/host/truapi-cli/src/network-guard.d.ts +37 -0
  461. package/adapters/host/truapi-cli/src/network-guard.js +72 -0
  462. package/adapters/host/truapi-cli/src/official-behaviours.d.ts +33 -0
  463. package/adapters/host/truapi-cli/src/official-behaviours.js +57 -0
  464. package/adapters/host/truapi-cli/src/official-release.d.ts +18 -0
  465. package/adapters/host/truapi-cli/src/official-release.js +57 -0
  466. package/adapters/host/truapi-cli/src/patch-catalogue.d.ts +8 -0
  467. package/adapters/host/truapi-cli/src/patch-catalogue.js +9 -0
  468. package/adapters/host/truapi-cli/src/patch-manifest.d.ts +78 -0
  469. package/adapters/host/truapi-cli/src/patch-manifest.js +103 -0
  470. package/adapters/host/truapi-cli/src/patches.d.ts +36 -0
  471. package/adapters/host/truapi-cli/src/patches.js +7 -0
  472. package/adapters/host/truapi-cli/src/probe-script.d.ts +21 -0
  473. package/adapters/host/truapi-cli/src/probe-script.js +85 -0
  474. package/adapters/host/truapi-cli/src/probe-stub.d.ts +41 -0
  475. package/adapters/host/truapi-cli/src/probe-stub.js +187 -0
  476. package/adapters/host/truapi-cli/src/product-config.d.ts +17 -0
  477. package/adapters/host/truapi-cli/src/product-config.js +35 -0
  478. package/adapters/host/truapi-cli/src/provision.d.ts +88 -0
  479. package/adapters/host/truapi-cli/src/provision.js +172 -0
  480. package/adapters/host/truapi-cli/src/rebase-check.d.ts +218 -0
  481. package/adapters/host/truapi-cli/src/rebase-check.js +366 -0
  482. package/adapters/host/truapi-cli/src/resolved-host.d.ts +23 -0
  483. package/adapters/host/truapi-cli/src/resolved-host.js +31 -0
  484. package/adapters/host/truapi-cli/src/route-release.d.ts +65 -0
  485. package/adapters/host/truapi-cli/src/route-release.js +133 -0
  486. package/adapters/host/truapi-cli/src/sandbox-spec.d.ts +4 -0
  487. package/adapters/host/truapi-cli/src/sandbox-spec.js +14 -0
  488. package/adapters/host/truapi-cli/src/script-account-read.d.ts +48 -0
  489. package/adapters/host/truapi-cli/src/script-account-read.js +98 -0
  490. package/adapters/host/truapi-cli/src/serve-persisted.d.ts +47 -0
  491. package/adapters/host/truapi-cli/src/serve-persisted.js +115 -0
  492. package/adapters/host/truapi-cli/src/signing-evidence.d.ts +4 -0
  493. package/adapters/host/truapi-cli/src/signing-evidence.js +71 -0
  494. package/adapters/host/truapi-cli/src/signing-host-flags.d.ts +9 -0
  495. package/adapters/host/truapi-cli/src/signing-host-flags.js +24 -0
  496. package/adapters/host/truapi-cli/src/truapi-cli-host-factory.d.ts +210 -0
  497. package/adapters/host/truapi-cli/src/truapi-cli-host-factory.js +345 -0
  498. package/adapters/host/truapi-wasm/README.md +228 -0
  499. package/adapters/host/truapi-wasm/src/bulletin-read-probe.d.ts +42 -0
  500. package/adapters/host/truapi-wasm/src/bulletin-read-probe.js +69 -0
  501. package/adapters/host/truapi-wasm/src/config.d.ts +79 -0
  502. package/adapters/host/truapi-wasm/src/config.js +80 -0
  503. package/adapters/host/truapi-wasm/src/endpoint-chains.d.ts +5 -0
  504. package/adapters/host/truapi-wasm/src/endpoint-chains.js +30 -0
  505. package/adapters/host/truapi-wasm/src/entropy-patch.d.ts +27 -0
  506. package/adapters/host/truapi-wasm/src/entropy-patch.js +23 -0
  507. package/adapters/host/truapi-wasm/src/framing.d.ts +10 -0
  508. package/adapters/host/truapi-wasm/src/framing.js +20 -0
  509. package/adapters/host/truapi-wasm/src/host-package.d.ts +38 -0
  510. package/adapters/host/truapi-wasm/src/host-package.js +119 -0
  511. package/adapters/host/truapi-wasm/src/host-page-layout.d.ts +12 -0
  512. package/adapters/host/truapi-wasm/src/host-page-layout.js +16 -0
  513. package/adapters/host/truapi-wasm/src/identity.d.ts +3 -0
  514. package/adapters/host/truapi-wasm/src/identity.js +8 -0
  515. package/adapters/host/truapi-wasm/src/index.d.ts +25 -0
  516. package/adapters/host/truapi-wasm/src/index.js +15 -0
  517. package/adapters/host/truapi-wasm/src/own-script.d.ts +4 -0
  518. package/adapters/host/truapi-wasm/src/own-script.js +4 -0
  519. package/adapters/host/truapi-wasm/src/provider.d.ts +190 -0
  520. package/adapters/host/truapi-wasm/src/provider.js +496 -0
  521. package/adapters/host/truapi-wasm/src/ring-vrf-member.d.ts +4 -0
  522. package/adapters/host/truapi-wasm/src/ring-vrf-member.js +47 -0
  523. package/adapters/host/truapi-wasm/src/route-release.d.ts +29 -0
  524. package/adapters/host/truapi-wasm/src/route-release.js +47 -0
  525. package/adapters/host/truapi-wasm/src/shared-host.d.ts +94 -0
  526. package/adapters/host/truapi-wasm/src/shared-host.js +63 -0
  527. package/adapters/host/truapi-wasm/src/shared-page.d.ts +1 -0
  528. package/adapters/host/truapi-wasm/src/shared-page.js +336 -0
  529. package/adapters/host/truapi-wasm/src/sign-in.d.ts +44 -0
  530. package/adapters/host/truapi-wasm/src/sign-in.js +38 -0
  531. package/adapters/host/truapi-wasm/src/truapi-pairing.d.ts +7 -0
  532. package/adapters/host/truapi-wasm/src/truapi-pairing.js +23 -0
  533. package/adapters/host/truapi-wasm/src/truapi-wasm-host-factory.d.ts +111 -0
  534. package/adapters/host/truapi-wasm/src/truapi-wasm-host-factory.js +99 -0
  535. package/adapters/keys/sr25519/README.md +53 -0
  536. package/adapters/keys/sr25519/src/index.d.ts +3 -0
  537. package/adapters/keys/sr25519/src/index.js +5 -0
  538. package/adapters/keys/sr25519/src/sr25519-key-derivation.d.ts +34 -0
  539. package/adapters/keys/sr25519/src/sr25519-key-derivation.js +66 -0
  540. package/adapters/keys/sr25519/src/sr25519-product-accounts.d.ts +8 -0
  541. package/adapters/keys/sr25519/src/sr25519-product-accounts.js +95 -0
  542. package/adapters/lab/module/src/config-path.d.ts +2 -0
  543. package/adapters/lab/module/src/config-path.js +10 -0
  544. package/adapters/lab/module/src/definition-lab-source.d.ts +11 -0
  545. package/adapters/lab/module/src/definition-lab-source.js +16 -0
  546. package/adapters/lab/module/src/index.d.ts +6 -0
  547. package/adapters/lab/module/src/index.js +8 -0
  548. package/adapters/lab/module/src/module-host-tools.d.ts +11 -0
  549. package/adapters/lab/module/src/module-host-tools.js +37 -0
  550. package/adapters/lab/module/src/module-lab-source.d.ts +16 -0
  551. package/adapters/lab/module/src/module-lab-source.js +50 -0
  552. package/adapters/lab/module/src/reload-hook.mjs +24 -0
  553. package/adapters/lab/module/src/source-fingerprint.d.ts +8 -0
  554. package/adapters/lab/module/src/source-fingerprint.js +48 -0
  555. package/adapters/lab/module/src/transpiled-client-bundles.d.ts +8 -0
  556. package/adapters/lab/module/src/transpiled-client-bundles.js +57 -0
  557. package/adapters/notify/file/README.md +5 -0
  558. package/adapters/notify/file/src/file-notifier.d.ts +11 -0
  559. package/adapters/notify/file/src/file-notifier.js +45 -0
  560. package/adapters/notify/file/src/index.d.ts +2 -0
  561. package/adapters/notify/file/src/index.js +4 -0
  562. package/adapters/notify/file/src/noop-notifier.d.ts +6 -0
  563. package/adapters/notify/file/src/noop-notifier.js +8 -0
  564. package/adapters/storage/filesystem/README.md +41 -0
  565. package/adapters/storage/filesystem/src/directory-fixture-source.d.ts +19 -0
  566. package/adapters/storage/filesystem/src/directory-fixture-source.js +83 -0
  567. package/adapters/storage/filesystem/src/file-breakpoint-store.d.ts +4 -0
  568. package/adapters/storage/filesystem/src/file-breakpoint-store.js +5 -0
  569. package/adapters/storage/filesystem/src/file-environment-option-choices.d.ts +11 -0
  570. package/adapters/storage/filesystem/src/file-environment-option-choices.js +44 -0
  571. package/adapters/storage/filesystem/src/file-evidence-journal.d.ts +10 -0
  572. package/adapters/storage/filesystem/src/file-evidence-journal.js +19 -0
  573. package/adapters/storage/filesystem/src/file-fixture-archives.d.ts +17 -0
  574. package/adapters/storage/filesystem/src/file-fixture-archives.js +250 -0
  575. package/adapters/storage/filesystem/src/file-fixture-store.d.ts +29 -0
  576. package/adapters/storage/filesystem/src/file-fixture-store.js +209 -0
  577. package/adapters/storage/filesystem/src/file-journey-docs.d.ts +9 -0
  578. package/adapters/storage/filesystem/src/file-journey-docs.js +113 -0
  579. package/adapters/storage/filesystem/src/file-json-document.d.ts +7 -0
  580. package/adapters/storage/filesystem/src/file-json-document.js +30 -0
  581. package/adapters/storage/filesystem/src/file-lab-settings-store.d.ts +4 -0
  582. package/adapters/storage/filesystem/src/file-lab-settings-store.js +5 -0
  583. package/adapters/storage/filesystem/src/file-lock-store.d.ts +23 -0
  584. package/adapters/storage/filesystem/src/file-lock-store.js +55 -0
  585. package/adapters/storage/filesystem/src/file-recording-store.d.ts +22 -0
  586. package/adapters/storage/filesystem/src/file-recording-store.js +161 -0
  587. package/adapters/storage/filesystem/src/file-rpc-choices.d.ts +11 -0
  588. package/adapters/storage/filesystem/src/file-rpc-choices.js +46 -0
  589. package/adapters/storage/filesystem/src/file-run-bundle-archives.d.ts +8 -0
  590. package/adapters/storage/filesystem/src/file-run-bundle-archives.js +200 -0
  591. package/adapters/storage/filesystem/src/file-run-manifest-store.d.ts +17 -0
  592. package/adapters/storage/filesystem/src/file-run-manifest-store.js +26 -0
  593. package/adapters/storage/filesystem/src/file-suite-evidence-bundles.d.ts +16 -0
  594. package/adapters/storage/filesystem/src/file-suite-evidence-bundles.js +168 -0
  595. package/adapters/storage/filesystem/src/file-visual-baselines.d.ts +10 -0
  596. package/adapters/storage/filesystem/src/file-visual-baselines.js +42 -0
  597. package/adapters/storage/filesystem/src/index.d.ts +18 -0
  598. package/adapters/storage/filesystem/src/index.js +20 -0
  599. package/adapters/storage/filesystem/src/lock-running-lab-record.d.ts +13 -0
  600. package/adapters/storage/filesystem/src/lock-running-lab-record.js +63 -0
  601. package/adapters/storage/filesystem/src/node-file-system.d.ts +21 -0
  602. package/adapters/storage/filesystem/src/node-file-system.js +122 -0
  603. package/adapters/storage/filesystem/src/running-lab.d.ts +2 -0
  604. package/adapters/storage/filesystem/src/running-lab.js +4 -0
  605. package/adapters/storage/filesystem/src/tar-archive.d.ts +73 -0
  606. package/adapters/storage/filesystem/src/tar-archive.js +401 -0
  607. package/adapters/storage/filesystem/src/workspace-store.d.ts +33 -0
  608. package/adapters/storage/filesystem/src/workspace-store.js +51 -0
  609. package/adapters/system/node/README.md +141 -0
  610. package/adapters/system/node/src/app-proxy/bridge-script.d.ts +21 -0
  611. package/adapters/system/node/src/app-proxy/bridge-script.js +186 -0
  612. package/adapters/system/node/src/app-proxy/next-turbopack-updates.d.ts +2 -0
  613. package/adapters/system/node/src/app-proxy/next-turbopack-updates.js +13 -0
  614. package/adapters/system/node/src/app-proxy/next-webpack-updates.d.ts +2 -0
  615. package/adapters/system/node/src/app-proxy/next-webpack-updates.js +19 -0
  616. package/adapters/system/node/src/app-proxy/node-app-proxy.d.ts +15 -0
  617. package/adapters/system/node/src/app-proxy/node-app-proxy.js +395 -0
  618. package/adapters/system/node/src/app-proxy/vite-updates.d.ts +2 -0
  619. package/adapters/system/node/src/app-proxy/vite-updates.js +8 -0
  620. package/adapters/system/node/src/app-proxy/web-socket-tunnel.d.ts +28 -0
  621. package/adapters/system/node/src/app-proxy/web-socket-tunnel.js +479 -0
  622. package/adapters/system/node/src/app-proxy/webpack-dev-server-updates.d.ts +2 -0
  623. package/adapters/system/node/src/app-proxy/webpack-dev-server-updates.js +13 -0
  624. package/adapters/system/node/src/console-logger.d.ts +25 -0
  625. package/adapters/system/node/src/console-logger.js +31 -0
  626. package/adapters/system/node/src/file-lock-manager.d.ts +26 -0
  627. package/adapters/system/node/src/file-lock-manager.js +103 -0
  628. package/adapters/system/node/src/git-change-source.d.ts +37 -0
  629. package/adapters/system/node/src/git-change-source.js +127 -0
  630. package/adapters/system/node/src/http-json-rpc-client.d.ts +20 -0
  631. package/adapters/system/node/src/http-json-rpc-client.js +25 -0
  632. package/adapters/system/node/src/index.d.ts +35 -0
  633. package/adapters/system/node/src/index.js +37 -0
  634. package/adapters/system/node/src/json-rpc-reply.d.ts +6 -0
  635. package/adapters/system/node/src/json-rpc-reply.js +18 -0
  636. package/adapters/system/node/src/linux-namespace-sandbox.d.ts +53 -0
  637. package/adapters/system/node/src/linux-namespace-sandbox.js +143 -0
  638. package/adapters/system/node/src/linux-network-namespace.mjs +177 -0
  639. package/adapters/system/node/src/lsof-connection-monitor.d.ts +50 -0
  640. package/adapters/system/node/src/lsof-connection-monitor.js +208 -0
  641. package/adapters/system/node/src/node-chain-gates.d.ts +10 -0
  642. package/adapters/system/node/src/node-chain-gates.js +173 -0
  643. package/adapters/system/node/src/node-command-runner.d.ts +17 -0
  644. package/adapters/system/node/src/node-command-runner.js +143 -0
  645. package/adapters/system/node/src/node-conditioned-links.d.ts +4 -0
  646. package/adapters/system/node/src/node-conditioned-links.js +140 -0
  647. package/adapters/system/node/src/node-document-headers.d.ts +28 -0
  648. package/adapters/system/node/src/node-document-headers.js +38 -0
  649. package/adapters/system/node/src/node-http-probe.d.ts +21 -0
  650. package/adapters/system/node/src/node-http-probe.js +39 -0
  651. package/adapters/system/node/src/node-machine-metrics.d.ts +61 -0
  652. package/adapters/system/node/src/node-machine-metrics.js +109 -0
  653. package/adapters/system/node/src/node-os-ports.d.ts +24 -0
  654. package/adapters/system/node/src/node-os-ports.js +82 -0
  655. package/adapters/system/node/src/node-owned-processes.d.ts +96 -0
  656. package/adapters/system/node/src/node-owned-processes.js +440 -0
  657. package/adapters/system/node/src/node-process-runner.d.ts +51 -0
  658. package/adapters/system/node/src/node-process-runner.js +110 -0
  659. package/adapters/system/node/src/node-process-sandbox.d.ts +51 -0
  660. package/adapters/system/node/src/node-process-sandbox.js +79 -0
  661. package/adapters/system/node/src/node-source-watcher.d.ts +7 -0
  662. package/adapters/system/node/src/node-source-watcher.js +91 -0
  663. package/adapters/system/node/src/node-stdio-worker.d.ts +11 -0
  664. package/adapters/system/node/src/node-stdio-worker.js +133 -0
  665. package/adapters/system/node/src/node-sync-command-runner.d.ts +8 -0
  666. package/adapters/system/node/src/node-sync-command-runner.js +96 -0
  667. package/adapters/system/node/src/node-terminal-command-runner.d.ts +14 -0
  668. package/adapters/system/node/src/node-terminal-command-runner.js +23 -0
  669. package/adapters/system/node/src/node-tree-cloner.d.ts +16 -0
  670. package/adapters/system/node/src/node-tree-cloner.js +46 -0
  671. package/adapters/system/node/src/owned-group-anchor.mjs +72 -0
  672. package/adapters/system/node/src/port-blocks.d.ts +32 -0
  673. package/adapters/system/node/src/port-blocks.js +132 -0
  674. package/adapters/system/node/src/process-environment-variables.d.ts +8 -0
  675. package/adapters/system/node/src/process-environment-variables.js +14 -0
  676. package/adapters/system/node/src/process-group.d.ts +35 -0
  677. package/adapters/system/node/src/process-group.js +81 -0
  678. package/adapters/system/node/src/process-table.d.ts +25 -0
  679. package/adapters/system/node/src/process-table.js +8 -0
  680. package/adapters/system/node/src/process.d.ts +7 -0
  681. package/adapters/system/node/src/process.js +9 -0
  682. package/adapters/system/node/src/ps-process-table.d.ts +34 -0
  683. package/adapters/system/node/src/ps-process-table.js +87 -0
  684. package/adapters/system/node/src/random-id-generator.d.ts +5 -0
  685. package/adapters/system/node/src/random-id-generator.js +8 -0
  686. package/adapters/system/node/src/recorded-members.d.ts +10 -0
  687. package/adapters/system/node/src/recorded-members.js +24 -0
  688. package/adapters/system/node/src/request-head.d.ts +9 -0
  689. package/adapters/system/node/src/request-head.js +37 -0
  690. package/adapters/system/node/src/system-clock.d.ts +7 -0
  691. package/adapters/system/node/src/system-clock.js +25 -0
  692. package/adapters/system/node/src/tcp-port-allocator.d.ts +56 -0
  693. package/adapters/system/node/src/tcp-port-allocator.js +117 -0
  694. package/adapters/system/node/src/web-socket-json-rpc-client.d.ts +23 -0
  695. package/adapters/system/node/src/web-socket-json-rpc-client.js +54 -0
  696. package/adapters/versions/chain/README.md +40 -0
  697. package/adapters/versions/chain/src/deployed-runtime-source.d.ts +43 -0
  698. package/adapters/versions/chain/src/deployed-runtime-source.js +97 -0
  699. package/adapters/versions/chain/src/index.d.ts +1 -0
  700. package/adapters/versions/chain/src/index.js +3 -0
  701. package/adapters/versions/github/README.md +108 -0
  702. package/adapters/versions/github/src/fetch-http-client.d.ts +15 -0
  703. package/adapters/versions/github/src/fetch-http-client.js +23 -0
  704. package/adapters/versions/github/src/github-release-artifacts.d.ts +36 -0
  705. package/adapters/versions/github/src/github-release-artifacts.js +166 -0
  706. package/adapters/versions/github/src/github-release-fixture-source.d.ts +51 -0
  707. package/adapters/versions/github/src/github-release-fixture-source.js +193 -0
  708. package/adapters/versions/github/src/github-version-source.d.ts +78 -0
  709. package/adapters/versions/github/src/github-version-source.js +281 -0
  710. package/adapters/versions/github/src/index.d.ts +4 -0
  711. package/adapters/versions/github/src/index.js +6 -0
  712. package/adapters/versions/npm/README.md +32 -0
  713. package/adapters/versions/npm/src/index.d.ts +1 -0
  714. package/adapters/versions/npm/src/index.js +3 -0
  715. package/adapters/versions/npm/src/npm-version-source.d.ts +53 -0
  716. package/adapters/versions/npm/src/npm-version-source.js +151 -0
  717. package/adapters/video/ffmpeg/README.md +39 -0
  718. package/adapters/video/ffmpeg/src/ffmpeg-video-editor.d.ts +40 -0
  719. package/adapters/video/ffmpeg/src/ffmpeg-video-editor.js +105 -0
  720. package/adapters/video/ffmpeg/src/index.d.ts +1 -0
  721. package/adapters/video/ffmpeg/src/index.js +3 -0
  722. package/adapters/visual/pixelmatch/README.md +29 -0
  723. package/adapters/visual/pixelmatch/src/index.d.ts +1 -0
  724. package/adapters/visual/pixelmatch/src/index.js +3 -0
  725. package/adapters/visual/pixelmatch/src/pixelmatch-comparison.d.ts +10 -0
  726. package/adapters/visual/pixelmatch/src/pixelmatch-comparison.js +19 -0
  727. package/composition/README.md +281 -0
  728. package/composition/src/actor-conditions.d.ts +14 -0
  729. package/composition/src/actor-conditions.js +36 -0
  730. package/composition/src/actor-funds.d.ts +18 -0
  731. package/composition/src/actor-funds.js +17 -0
  732. package/composition/src/adapter-catalogue.d.ts +39 -0
  733. package/composition/src/adapter-catalogue.js +59 -0
  734. package/composition/src/app-readiness.d.ts +32 -0
  735. package/composition/src/app-readiness.js +141 -0
  736. package/composition/src/app-server.d.ts +52 -0
  737. package/composition/src/app-server.js +124 -0
  738. package/composition/src/app-updates.d.ts +1 -0
  739. package/composition/src/app-updates.js +3 -0
  740. package/composition/src/artifacts.d.ts +3 -0
  741. package/composition/src/artifacts.js +6 -0
  742. package/composition/src/attached/attached-lab-runtime.d.ts +13 -0
  743. package/composition/src/attached/attached-lab-runtime.js +112 -0
  744. package/composition/src/attached/attached-runs.d.ts +47 -0
  745. package/composition/src/attached/attached-runs.js +119 -0
  746. package/composition/src/attached/following-lab-runtime.d.ts +10 -0
  747. package/composition/src/attached/following-lab-runtime.js +41 -0
  748. package/composition/src/attached/headless-lab.d.ts +20 -0
  749. package/composition/src/attached/headless-lab.js +65 -0
  750. package/composition/src/attached/lab-window-launcher.d.ts +33 -0
  751. package/composition/src/attached/lab-window-launcher.js +78 -0
  752. package/composition/src/attached/window-client.d.ts +21 -0
  753. package/composition/src/attached/window-client.js +72 -0
  754. package/composition/src/chain-connections.d.ts +39 -0
  755. package/composition/src/chain-connections.js +52 -0
  756. package/composition/src/checkout.d.ts +4 -0
  757. package/composition/src/checkout.js +11 -0
  758. package/composition/src/chopsticks-of-fast.d.ts +34 -0
  759. package/composition/src/chopsticks-of-fast.js +91 -0
  760. package/composition/src/create-lab-runtime.d.ts +70 -0
  761. package/composition/src/create-lab-runtime.js +248 -0
  762. package/composition/src/cucumber.d.ts +8 -0
  763. package/composition/src/cucumber.js +8 -0
  764. package/composition/src/default-dev-server.d.ts +20 -0
  765. package/composition/src/default-dev-server.js +52 -0
  766. package/composition/src/default-lab.d.ts +79 -0
  767. package/composition/src/default-lab.js +597 -0
  768. package/composition/src/default-session-browser.d.ts +7 -0
  769. package/composition/src/default-session-browser.js +17 -0
  770. package/composition/src/default-session-keep.d.ts +60 -0
  771. package/composition/src/default-session-keep.js +86 -0
  772. package/composition/src/default-session-page.d.ts +35 -0
  773. package/composition/src/default-session-page.js +40 -0
  774. package/composition/src/default-session-persons.d.ts +51 -0
  775. package/composition/src/default-session-persons.js +42 -0
  776. package/composition/src/default-session.d.ts +12 -0
  777. package/composition/src/default-session.js +594 -0
  778. package/composition/src/demo-ports.d.ts +8 -0
  779. package/composition/src/demo-ports.js +21 -0
  780. package/composition/src/deployed-app-server.d.ts +36 -0
  781. package/composition/src/deployed-app-server.js +62 -0
  782. package/composition/src/deployed-local-app.d.ts +30 -0
  783. package/composition/src/deployed-local-app.js +48 -0
  784. package/composition/src/device-browsers.d.ts +6 -0
  785. package/composition/src/device-browsers.js +16 -0
  786. package/composition/src/engine-setup.d.ts +1 -0
  787. package/composition/src/engine-setup.js +37 -0
  788. package/composition/src/feature-runtime.d.ts +5 -0
  789. package/composition/src/feature-runtime.js +12 -0
  790. package/composition/src/fixture-sharing.d.ts +12 -0
  791. package/composition/src/fixture-sharing.js +62 -0
  792. package/composition/src/fork-attach.d.ts +31 -0
  793. package/composition/src/fork-attach.js +80 -0
  794. package/composition/src/fork-live.d.ts +13 -0
  795. package/composition/src/fork-live.js +70 -0
  796. package/composition/src/gateway-program.d.ts +1 -0
  797. package/composition/src/gateway-program.js +24 -0
  798. package/composition/src/gateway-shutdown.d.ts +4 -0
  799. package/composition/src/gateway-shutdown.js +13 -0
  800. package/composition/src/host-tool-services.d.ts +21 -0
  801. package/composition/src/host-tool-services.js +27 -0
  802. package/composition/src/host-words.d.ts +3 -0
  803. package/composition/src/host-words.js +16 -0
  804. package/composition/src/identity-funding.d.ts +37 -0
  805. package/composition/src/identity-funding.js +92 -0
  806. package/composition/src/index.d.ts +38 -0
  807. package/composition/src/index.js +40 -0
  808. package/composition/src/machine-inputs.d.ts +67 -0
  809. package/composition/src/machine-inputs.js +98 -0
  810. package/composition/src/network-copies.d.ts +19 -0
  811. package/composition/src/network-copies.js +44 -0
  812. package/composition/src/node-system.d.ts +69 -0
  813. package/composition/src/node-system.js +89 -0
  814. package/composition/src/observe-browser-page.d.ts +15 -0
  815. package/composition/src/observe-browser-page.js +39 -0
  816. package/composition/src/old-environment-state.d.ts +13 -0
  817. package/composition/src/old-environment-state.js +138 -0
  818. package/composition/src/people-dev/genesis.d.ts +20 -0
  819. package/composition/src/people-dev/genesis.js +6 -0
  820. package/composition/src/people-dev/member-key.d.ts +58 -0
  821. package/composition/src/people-dev/member-key.js +110 -0
  822. package/composition/src/people-dev/onboarding.d.ts +142 -0
  823. package/composition/src/people-dev/onboarding.js +220 -0
  824. package/composition/src/people-dev/people-chunks.json +14 -0
  825. package/composition/src/people-dev/readings.d.ts +15 -0
  826. package/composition/src/people-dev/readings.js +35 -0
  827. package/composition/src/people-dev/xcm-stand-in.d.ts +163 -0
  828. package/composition/src/people-dev/xcm-stand-in.js +183 -0
  829. package/composition/src/people-keep/discard.d.ts +29 -0
  830. package/composition/src/people-keep/discard.js +59 -0
  831. package/composition/src/people-keep/kept-people.d.ts +53 -0
  832. package/composition/src/people-keep/kept-people.js +56 -0
  833. package/composition/src/people-keep/lifecycle.d.ts +48 -0
  834. package/composition/src/people-keep/lifecycle.js +69 -0
  835. package/composition/src/people-keep/saved-people.d.ts +35 -0
  836. package/composition/src/people-keep/saved-people.js +56 -0
  837. package/composition/src/platform/index.d.ts +1 -0
  838. package/composition/src/platform/index.js +3 -0
  839. package/composition/src/platform/platform-integration.d.ts +41 -0
  840. package/composition/src/platform/platform-integration.js +251 -0
  841. package/composition/src/platform/reported-ports.d.ts +4 -0
  842. package/composition/src/platform/reported-ports.js +31 -0
  843. package/composition/src/pre-onboarded-identities.d.ts +12 -0
  844. package/composition/src/pre-onboarded-identities.js +42 -0
  845. package/composition/src/process.d.ts +22 -0
  846. package/composition/src/process.js +27 -0
  847. package/composition/src/product-versions.d.ts +40 -0
  848. package/composition/src/product-versions.js +51 -0
  849. package/composition/src/public-identities.d.ts +44 -0
  850. package/composition/src/public-identities.js +88 -0
  851. package/composition/src/recording-browsers.d.ts +3 -0
  852. package/composition/src/recording-browsers.js +9 -0
  853. package/composition/src/recordings-directory.d.ts +1 -0
  854. package/composition/src/recordings-directory.js +10 -0
  855. package/composition/src/redact-console.d.ts +5 -0
  856. package/composition/src/redact-console.js +10 -0
  857. package/composition/src/root-call-support.d.ts +3 -0
  858. package/composition/src/root-call-support.js +16 -0
  859. package/composition/src/running-lab-variable.d.ts +8 -0
  860. package/composition/src/running-lab-variable.js +14 -0
  861. package/composition/src/session-frames.d.ts +5 -0
  862. package/composition/src/session-frames.js +12 -0
  863. package/composition/src/session-hosts.d.ts +66 -0
  864. package/composition/src/session-hosts.js +217 -0
  865. package/composition/src/session-placement.d.ts +25 -0
  866. package/composition/src/session-placement.js +21 -0
  867. package/composition/src/versions/lab-version-ports.d.ts +27 -0
  868. package/composition/src/versions/lab-version-ports.js +57 -0
  869. package/composition/src/versions/version-source-catalogue.d.ts +90 -0
  870. package/composition/src/versions/version-source-catalogue.js +134 -0
  871. package/contracts/browser/README.md +65 -0
  872. package/contracts/browser/src/index.d.ts +2 -0
  873. package/contracts/browser/src/index.js +4 -0
  874. package/contracts/browser/src/kit.d.ts +83 -0
  875. package/contracts/browser/src/kit.js +493 -0
  876. package/contracts/browser/src/runner.d.ts +71 -0
  877. package/contracts/browser/src/runner.js +156 -0
  878. package/contracts/chain/README.md +81 -0
  879. package/contracts/chain/src/cases/access.d.ts +3 -0
  880. package/contracts/chain/src/cases/access.js +68 -0
  881. package/contracts/chain/src/cases/history.d.ts +3 -0
  882. package/contracts/chain/src/cases/history.js +82 -0
  883. package/contracts/chain/src/cases/keys.d.ts +3 -0
  884. package/contracts/chain/src/cases/keys.js +131 -0
  885. package/contracts/chain/src/cases/submit.d.ts +3 -0
  886. package/contracts/chain/src/cases/submit.js +223 -0
  887. package/contracts/chain/src/cases/validator.d.ts +3 -0
  888. package/contracts/chain/src/cases/validator.js +59 -0
  889. package/contracts/chain/src/context.d.ts +51 -0
  890. package/contracts/chain/src/context.js +125 -0
  891. package/contracts/chain/src/index.d.ts +2 -0
  892. package/contracts/chain/src/index.js +4 -0
  893. package/contracts/chain/src/kit.d.ts +36 -0
  894. package/contracts/chain/src/kit.js +33 -0
  895. package/contracts/chain/src/runner.d.ts +71 -0
  896. package/contracts/chain/src/runner.js +156 -0
  897. package/contracts/chain/src/subject.d.ts +75 -0
  898. package/contracts/chain/src/subject.js +25 -0
  899. package/contracts/environment/README.md +90 -0
  900. package/contracts/environment/src/cases/declared-options.d.ts +3 -0
  901. package/contracts/environment/src/cases/declared-options.js +103 -0
  902. package/contracts/environment/src/cases/lifecycle.d.ts +3 -0
  903. package/contracts/environment/src/cases/lifecycle.js +130 -0
  904. package/contracts/environment/src/cases/options.d.ts +3 -0
  905. package/contracts/environment/src/cases/options.js +123 -0
  906. package/contracts/environment/src/cases/probe.d.ts +3 -0
  907. package/contracts/environment/src/cases/probe.js +63 -0
  908. package/contracts/environment/src/cases/topology.d.ts +3 -0
  909. package/contracts/environment/src/cases/topology.js +101 -0
  910. package/contracts/environment/src/checks.d.ts +31 -0
  911. package/contracts/environment/src/checks.js +93 -0
  912. package/contracts/environment/src/context.d.ts +23 -0
  913. package/contracts/environment/src/context.js +51 -0
  914. package/contracts/environment/src/index.d.ts +2 -0
  915. package/contracts/environment/src/index.js +4 -0
  916. package/contracts/environment/src/kit.d.ts +32 -0
  917. package/contracts/environment/src/kit.js +34 -0
  918. package/contracts/environment/src/runner.d.ts +71 -0
  919. package/contracts/environment/src/runner.js +156 -0
  920. package/contracts/environment/src/subject.d.ts +83 -0
  921. package/contracts/environment/src/subject.js +14 -0
  922. package/contracts/host/README.md +71 -0
  923. package/contracts/host/src/cases/approvals.d.ts +3 -0
  924. package/contracts/host/src/cases/approvals.js +112 -0
  925. package/contracts/host/src/cases/conditions.d.ts +3 -0
  926. package/contracts/host/src/cases/conditions.js +43 -0
  927. package/contracts/host/src/cases/hostile.d.ts +3 -0
  928. package/contracts/host/src/cases/hostile.js +131 -0
  929. package/contracts/host/src/cases/identity-navigation.d.ts +3 -0
  930. package/contracts/host/src/cases/identity-navigation.js +85 -0
  931. package/contracts/host/src/cases/network.d.ts +3 -0
  932. package/contracts/host/src/cases/network.js +46 -0
  933. package/contracts/host/src/cases/sessions.d.ts +3 -0
  934. package/contracts/host/src/cases/sessions.js +113 -0
  935. package/contracts/host/src/context.d.ts +85 -0
  936. package/contracts/host/src/context.js +145 -0
  937. package/contracts/host/src/derivation.d.ts +19 -0
  938. package/contracts/host/src/derivation.js +76 -0
  939. package/contracts/host/src/index.d.ts +6 -0
  940. package/contracts/host/src/index.js +8 -0
  941. package/contracts/host/src/kit.d.ts +27 -0
  942. package/contracts/host/src/kit.js +128 -0
  943. package/contracts/host/src/module-host-verifier.d.ts +19 -0
  944. package/contracts/host/src/module-host-verifier.js +80 -0
  945. package/contracts/host/src/probe/channels.d.ts +18 -0
  946. package/contracts/host/src/probe/channels.js +11 -0
  947. package/contracts/host/src/probe/page.d.ts +89 -0
  948. package/contracts/host/src/probe/page.js +253 -0
  949. package/contracts/host/src/probe/server.d.ts +23 -0
  950. package/contracts/host/src/probe/server.js +102 -0
  951. package/contracts/host/src/probe/truapi-version.d.ts +5 -0
  952. package/contracts/host/src/probe/truapi-version.js +20 -0
  953. package/contracts/host/src/targets.d.ts +49 -0
  954. package/contracts/host/src/targets.js +39 -0
  955. package/core/application/README.md +517 -0
  956. package/core/application/src/actors/actor-bindings.d.ts +18 -0
  957. package/core/application/src/actors/actor-bindings.js +38 -0
  958. package/core/application/src/actors/actor-view.d.ts +35 -0
  959. package/core/application/src/actors/actor-view.js +40 -0
  960. package/core/application/src/actors/bind-actors.d.ts +82 -0
  961. package/core/application/src/actors/bind-actors.js +156 -0
  962. package/core/application/src/actors/binding-error.d.ts +4 -0
  963. package/core/application/src/actors/binding-error.js +5 -0
  964. package/core/application/src/actors/manage-actors.d.ts +64 -0
  965. package/core/application/src/actors/manage-actors.js +147 -0
  966. package/core/application/src/apps/app-gate.d.ts +43 -0
  967. package/core/application/src/apps/app-gate.js +106 -0
  968. package/core/application/src/apps/app-reloads.d.ts +74 -0
  969. package/core/application/src/apps/app-reloads.js +470 -0
  970. package/core/application/src/apps/app-update-hub.d.ts +33 -0
  971. package/core/application/src/apps/app-update-hub.js +116 -0
  972. package/core/application/src/apps/inspect-app-framing.d.ts +9 -0
  973. package/core/application/src/apps/inspect-app-framing.js +25 -0
  974. package/core/application/src/bisect/bisect-regression.d.ts +52 -0
  975. package/core/application/src/bisect/bisect-regression.js +168 -0
  976. package/core/application/src/bisect/probe-session.d.ts +52 -0
  977. package/core/application/src/bisect/probe-session.js +208 -0
  978. package/core/application/src/builder/build-scenarios.d.ts +55 -0
  979. package/core/application/src/builder/build-scenarios.js +261 -0
  980. package/core/application/src/environment/account-watch.d.ts +41 -0
  981. package/core/application/src/environment/account-watch.js +117 -0
  982. package/core/application/src/environment/active-environment.d.ts +165 -0
  983. package/core/application/src/environment/active-environment.js +361 -0
  984. package/core/application/src/environment/advance-environment-time.d.ts +37 -0
  985. package/core/application/src/environment/advance-environment-time.js +52 -0
  986. package/core/application/src/environment/chain-day-ended.d.ts +7 -0
  987. package/core/application/src/environment/chain-day-ended.js +8 -0
  988. package/core/application/src/environment/confirmations.d.ts +15 -0
  989. package/core/application/src/environment/confirmations.js +23 -0
  990. package/core/application/src/environment/endpoint-heads.d.ts +4 -0
  991. package/core/application/src/environment/endpoint-heads.js +26 -0
  992. package/core/application/src/environment/endpoint-services.d.ts +13 -0
  993. package/core/application/src/environment/endpoint-services.js +35 -0
  994. package/core/application/src/environment/environment-option-picker.d.ts +38 -0
  995. package/core/application/src/environment/environment-option-picker.js +62 -0
  996. package/core/application/src/environment/environment-option-views.d.ts +30 -0
  997. package/core/application/src/environment/environment-option-views.js +22 -0
  998. package/core/application/src/environment/environment-request-error.d.ts +1 -0
  999. package/core/application/src/environment/environment-request-error.js +3 -0
  1000. package/core/application/src/environment/environment-retention.d.ts +11 -0
  1001. package/core/application/src/environment/environment-retention.js +16 -0
  1002. package/core/application/src/environment/environment-rpc.d.ts +17 -0
  1003. package/core/application/src/environment/environment-rpc.js +39 -0
  1004. package/core/application/src/environment/keep-between-starts.d.ts +18 -0
  1005. package/core/application/src/environment/keep-between-starts.js +44 -0
  1006. package/core/application/src/environment/prepare-environment-tooling.d.ts +21 -0
  1007. package/core/application/src/environment/prepare-environment-tooling.js +65 -0
  1008. package/core/application/src/environment/public-writes.d.ts +5 -0
  1009. package/core/application/src/environment/public-writes.js +9 -0
  1010. package/core/application/src/environment/read-chain-console.d.ts +23 -0
  1011. package/core/application/src/environment/read-chain-console.js +117 -0
  1012. package/core/application/src/environment/reset-environment.d.ts +12 -0
  1013. package/core/application/src/environment/reset-environment.js +38 -0
  1014. package/core/application/src/environment/running-labs.d.ts +13 -0
  1015. package/core/application/src/environment/running-labs.js +22 -0
  1016. package/core/application/src/environment/show-environment.d.ts +19 -0
  1017. package/core/application/src/environment/show-environment.js +63 -0
  1018. package/core/application/src/environment/start-environment.d.ts +85 -0
  1019. package/core/application/src/environment/start-environment.js +223 -0
  1020. package/core/application/src/environment/stop-environment.d.ts +11 -0
  1021. package/core/application/src/environment/stop-environment.js +33 -0
  1022. package/core/application/src/environment/switch-environment.d.ts +62 -0
  1023. package/core/application/src/environment/switch-environment.js +175 -0
  1024. package/core/application/src/explore/exploration-runs.d.ts +21 -0
  1025. package/core/application/src/explore/exploration-runs.js +54 -0
  1026. package/core/application/src/explore/explore-lab.d.ts +30 -0
  1027. package/core/application/src/explore/explore-lab.js +185 -0
  1028. package/core/application/src/explore/what-if-lab.d.ts +27 -0
  1029. package/core/application/src/explore/what-if-lab.js +166 -0
  1030. package/core/application/src/features/breakpoint-error.d.ts +4 -0
  1031. package/core/application/src/features/breakpoint-error.js +5 -0
  1032. package/core/application/src/features/check-host-network.d.ts +29 -0
  1033. package/core/application/src/features/check-host-network.js +82 -0
  1034. package/core/application/src/features/check-host-requests.d.ts +5 -0
  1035. package/core/application/src/features/check-host-requests.js +22 -0
  1036. package/core/application/src/features/coverage-lab.d.ts +9 -0
  1037. package/core/application/src/features/coverage-lab.js +74 -0
  1038. package/core/application/src/features/expand-outline.d.ts +9 -0
  1039. package/core/application/src/features/expand-outline.js +16 -0
  1040. package/core/application/src/features/feature-calls.d.ts +49 -0
  1041. package/core/application/src/features/feature-calls.js +104 -0
  1042. package/core/application/src/features/feature-plan-error.d.ts +16 -0
  1043. package/core/application/src/features/feature-plan-error.js +19 -0
  1044. package/core/application/src/features/feature-run-error.d.ts +6 -0
  1045. package/core/application/src/features/feature-run-error.js +10 -0
  1046. package/core/application/src/features/feature-run.d.ts +75 -0
  1047. package/core/application/src/features/feature-run.js +231 -0
  1048. package/core/application/src/features/feature-scenario.d.ts +156 -0
  1049. package/core/application/src/features/feature-scenario.js +623 -0
  1050. package/core/application/src/features/feature-step-error.d.ts +17 -0
  1051. package/core/application/src/features/feature-step-error.js +17 -0
  1052. package/core/application/src/features/feature-step-gate.d.ts +54 -0
  1053. package/core/application/src/features/feature-step-gate.js +93 -0
  1054. package/core/application/src/features/feature-step-times.d.ts +16 -0
  1055. package/core/application/src/features/feature-step-times.js +30 -0
  1056. package/core/application/src/features/feature-steps.d.ts +3 -0
  1057. package/core/application/src/features/feature-steps.js +22 -0
  1058. package/core/application/src/features/inspect-pause.d.ts +27 -0
  1059. package/core/application/src/features/inspect-pause.js +176 -0
  1060. package/core/application/src/features/inspect-scenario.d.ts +14 -0
  1061. package/core/application/src/features/inspect-scenario.js +98 -0
  1062. package/core/application/src/features/lab-feature-session.d.ts +67 -0
  1063. package/core/application/src/features/lab-feature-session.js +264 -0
  1064. package/core/application/src/features/lint-lab.d.ts +15 -0
  1065. package/core/application/src/features/lint-lab.js +204 -0
  1066. package/core/application/src/features/list-features.d.ts +26 -0
  1067. package/core/application/src/features/list-features.js +92 -0
  1068. package/core/application/src/features/manage-breakpoints.d.ts +45 -0
  1069. package/core/application/src/features/manage-breakpoints.js +105 -0
  1070. package/core/application/src/features/no-funds.d.ts +3 -0
  1071. package/core/application/src/features/no-funds.js +13 -0
  1072. package/core/application/src/features/pause-inspection-error.d.ts +4 -0
  1073. package/core/application/src/features/pause-inspection-error.js +5 -0
  1074. package/core/application/src/features/plan-feature-scenario.d.ts +28 -0
  1075. package/core/application/src/features/plan-feature-scenario.js +66 -0
  1076. package/core/application/src/features/plan-mutants.d.ts +9 -0
  1077. package/core/application/src/features/plan-mutants.js +33 -0
  1078. package/core/application/src/features/prepared-characters.d.ts +13 -0
  1079. package/core/application/src/features/prepared-characters.js +52 -0
  1080. package/core/application/src/features/read-scenario-conditions.d.ts +29 -0
  1081. package/core/application/src/features/read-scenario-conditions.js +38 -0
  1082. package/core/application/src/features/reconcile-host-bypass.d.ts +7 -0
  1083. package/core/application/src/features/reconcile-host-bypass.js +20 -0
  1084. package/core/application/src/features/resolve-run-devices.d.ts +14 -0
  1085. package/core/application/src/features/resolve-run-devices.js +31 -0
  1086. package/core/application/src/features/run-feature-steps.d.ts +41 -0
  1087. package/core/application/src/features/run-feature-steps.js +37 -0
  1088. package/core/application/src/features/run-features.d.ts +112 -0
  1089. package/core/application/src/features/run-features.js +397 -0
  1090. package/core/application/src/features/run-scoped-values.d.ts +17 -0
  1091. package/core/application/src/features/run-scoped-values.js +37 -0
  1092. package/core/application/src/features/scenario-actor-creation.d.ts +60 -0
  1093. package/core/application/src/features/scenario-actor-creation.js +107 -0
  1094. package/core/application/src/features/scenario-conditions.d.ts +13 -0
  1095. package/core/application/src/features/scenario-conditions.js +64 -0
  1096. package/core/application/src/features/scenario-inspection.d.ts +5 -0
  1097. package/core/application/src/features/scenario-inspection.js +34 -0
  1098. package/core/application/src/features/scenario-race.d.ts +8 -0
  1099. package/core/application/src/features/scenario-race.js +8 -0
  1100. package/core/application/src/features/scenario-step-checks.d.ts +22 -0
  1101. package/core/application/src/features/scenario-step-checks.js +114 -0
  1102. package/core/application/src/features/step-checks.d.ts +49 -0
  1103. package/core/application/src/features/step-checks.js +42 -0
  1104. package/core/application/src/features/watch-features.d.ts +23 -0
  1105. package/core/application/src/features/watch-features.js +80 -0
  1106. package/core/application/src/fixtures/build-fixture.d.ts +22 -0
  1107. package/core/application/src/fixtures/build-fixture.js +69 -0
  1108. package/core/application/src/fixtures/check-fixtures.d.ts +15 -0
  1109. package/core/application/src/fixtures/check-fixtures.js +80 -0
  1110. package/core/application/src/fixtures/download-fixture.d.ts +19 -0
  1111. package/core/application/src/fixtures/download-fixture.js +92 -0
  1112. package/core/application/src/fixtures/export-fixture.d.ts +16 -0
  1113. package/core/application/src/fixtures/export-fixture.js +87 -0
  1114. package/core/application/src/fixtures/fixture-characters.d.ts +10 -0
  1115. package/core/application/src/fixtures/fixture-characters.js +24 -0
  1116. package/core/application/src/fixtures/fixture-checkout.d.ts +15 -0
  1117. package/core/application/src/fixtures/fixture-checkout.js +25 -0
  1118. package/core/application/src/fixtures/fixture-context.d.ts +79 -0
  1119. package/core/application/src/fixtures/fixture-context.js +139 -0
  1120. package/core/application/src/fixtures/fixture-maintenance-service.d.ts +23 -0
  1121. package/core/application/src/fixtures/fixture-maintenance-service.js +26 -0
  1122. package/core/application/src/fixtures/fixture-run-guard.d.ts +17 -0
  1123. package/core/application/src/fixtures/fixture-run-guard.js +42 -0
  1124. package/core/application/src/fixtures/fixture-sharing-ports.d.ts +17 -0
  1125. package/core/application/src/fixtures/fixture-sharing-ports.js +3 -0
  1126. package/core/application/src/fixtures/fixture-sharing-service.d.ts +22 -0
  1127. package/core/application/src/fixtures/fixture-sharing-service.js +28 -0
  1128. package/core/application/src/fixtures/import-fixture.d.ts +42 -0
  1129. package/core/application/src/fixtures/import-fixture.js +212 -0
  1130. package/core/application/src/fixtures/isolate-scenario.d.ts +23 -0
  1131. package/core/application/src/fixtures/isolate-scenario.js +104 -0
  1132. package/core/application/src/fixtures/keep-run-start.d.ts +36 -0
  1133. package/core/application/src/fixtures/keep-run-start.js +77 -0
  1134. package/core/application/src/fixtures/list-fixtures.d.ts +16 -0
  1135. package/core/application/src/fixtures/list-fixtures.js +91 -0
  1136. package/core/application/src/fixtures/prepare-scenario-fixture.d.ts +42 -0
  1137. package/core/application/src/fixtures/prepare-scenario-fixture.js +157 -0
  1138. package/core/application/src/fixtures/push-fixture.d.ts +15 -0
  1139. package/core/application/src/fixtures/push-fixture.js +43 -0
  1140. package/core/application/src/fixtures/refresh-fixture.d.ts +27 -0
  1141. package/core/application/src/fixtures/refresh-fixture.js +141 -0
  1142. package/core/application/src/fixtures/restore-fixture.d.ts +36 -0
  1143. package/core/application/src/fixtures/restore-fixture.js +129 -0
  1144. package/core/application/src/fixtures/save-fixture.d.ts +35 -0
  1145. package/core/application/src/fixtures/save-fixture.js +137 -0
  1146. package/core/application/src/fixtures/start-from-fixture.d.ts +23 -0
  1147. package/core/application/src/fixtures/start-from-fixture.js +43 -0
  1148. package/core/application/src/hosts/acquire-host.d.ts +23 -0
  1149. package/core/application/src/hosts/acquire-host.js +59 -0
  1150. package/core/application/src/hosts/host-request-error.d.ts +6 -0
  1151. package/core/application/src/hosts/host-request-error.js +10 -0
  1152. package/core/application/src/hosts/verify-host.d.ts +37 -0
  1153. package/core/application/src/hosts/verify-host.js +93 -0
  1154. package/core/application/src/index.d.ts +96 -0
  1155. package/core/application/src/index.js +96 -0
  1156. package/core/application/src/lab/before-close.d.ts +12 -0
  1157. package/core/application/src/lab/before-close.js +14 -0
  1158. package/core/application/src/lab/check-extensions.d.ts +5 -0
  1159. package/core/application/src/lab/check-extensions.js +12 -0
  1160. package/core/application/src/lab/check-lab.d.ts +35 -0
  1161. package/core/application/src/lab/check-lab.js +82 -0
  1162. package/core/application/src/lab/lab-state.d.ts +87 -0
  1163. package/core/application/src/lab/lab-state.js +38 -0
  1164. package/core/application/src/lab/load-lab.d.ts +15 -0
  1165. package/core/application/src/lab/load-lab.js +35 -0
  1166. package/core/application/src/lab/runtime-events.d.ts +7 -0
  1167. package/core/application/src/lab/runtime-events.js +17 -0
  1168. package/core/application/src/lab-runtime-ports.d.ts +297 -0
  1169. package/core/application/src/lab-runtime-ports.js +3 -0
  1170. package/core/application/src/lab-runtime-service.d.ts +281 -0
  1171. package/core/application/src/lab-runtime-service.js +520 -0
  1172. package/core/application/src/lab-runtime-use-cases.d.ts +3 -0
  1173. package/core/application/src/lab-runtime-use-cases.js +280 -0
  1174. package/core/application/src/load/run-load.d.ts +23 -0
  1175. package/core/application/src/load/run-load.js +88 -0
  1176. package/core/application/src/navigation/resolve-navigation-destination.d.ts +8 -0
  1177. package/core/application/src/navigation/resolve-navigation-destination.js +39 -0
  1178. package/core/application/src/orchestration/activity/monitor.d.ts +16 -0
  1179. package/core/application/src/orchestration/activity/monitor.js +49 -0
  1180. package/core/application/src/orchestration/activity/types.d.ts +1 -0
  1181. package/core/application/src/orchestration/activity/types.js +3 -0
  1182. package/core/application/src/orchestration/capabilities.d.ts +8 -0
  1183. package/core/application/src/orchestration/capabilities.js +3 -0
  1184. package/core/application/src/orchestration/chain/account-queue.d.ts +26 -0
  1185. package/core/application/src/orchestration/chain/account-queue.js +61 -0
  1186. package/core/application/src/orchestration/chain/activity-ids.d.ts +14 -0
  1187. package/core/application/src/orchestration/chain/activity-ids.js +11 -0
  1188. package/core/application/src/orchestration/chain/batch-failed-error.d.ts +13 -0
  1189. package/core/application/src/orchestration/chain/batch-failed-error.js +14 -0
  1190. package/core/application/src/orchestration/chain/batch-submission.d.ts +60 -0
  1191. package/core/application/src/orchestration/chain/batch-submission.js +77 -0
  1192. package/core/application/src/orchestration/chain/chain-connection.d.ts +78 -0
  1193. package/core/application/src/orchestration/chain/chain-connection.js +82 -0
  1194. package/core/application/src/orchestration/chain/dispatch-failed-error.d.ts +12 -0
  1195. package/core/application/src/orchestration/chain/dispatch-failed-error.js +16 -0
  1196. package/core/application/src/orchestration/chain/events.d.ts +56 -0
  1197. package/core/application/src/orchestration/chain/events.js +97 -0
  1198. package/core/application/src/orchestration/chain/funding-batch.d.ts +40 -0
  1199. package/core/application/src/orchestration/chain/funding-batch.js +100 -0
  1200. package/core/application/src/orchestration/chain/index.d.ts +14 -0
  1201. package/core/application/src/orchestration/chain/index.js +15 -0
  1202. package/core/application/src/orchestration/chain/root-call-failed-error.d.ts +6 -0
  1203. package/core/application/src/orchestration/chain/root-call-failed-error.js +8 -0
  1204. package/core/application/src/orchestration/chain/root-call-refused-error.d.ts +6 -0
  1205. package/core/application/src/orchestration/chain/root-call-refused-error.js +8 -0
  1206. package/core/application/src/orchestration/chain/root-caller.d.ts +56 -0
  1207. package/core/application/src/orchestration/chain/root-caller.js +54 -0
  1208. package/core/application/src/orchestration/chain/scenario-journal.d.ts +27 -0
  1209. package/core/application/src/orchestration/chain/scenario-journal.js +28 -0
  1210. package/core/application/src/orchestration/chain/signing-queues.d.ts +28 -0
  1211. package/core/application/src/orchestration/chain/signing-queues.js +93 -0
  1212. package/core/application/src/orchestration/chain/statement-reader.d.ts +79 -0
  1213. package/core/application/src/orchestration/chain/statement-reader.js +108 -0
  1214. package/core/application/src/orchestration/chain/transaction-executor.d.ts +85 -0
  1215. package/core/application/src/orchestration/chain/transaction-executor.js +184 -0
  1216. package/core/application/src/orchestration/chain/unreadable-blocks-error.d.ts +15 -0
  1217. package/core/application/src/orchestration/chain/unreadable-blocks-error.js +17 -0
  1218. package/core/application/src/orchestration/definitions.d.ts +2 -0
  1219. package/core/application/src/orchestration/definitions.js +5 -0
  1220. package/core/application/src/orchestration/host/chain-gate-source.d.ts +34 -0
  1221. package/core/application/src/orchestration/host/chain-gate-source.js +65 -0
  1222. package/core/application/src/orchestration/host/destinations.d.ts +6 -0
  1223. package/core/application/src/orchestration/host/destinations.js +3 -0
  1224. package/core/application/src/orchestration/host/host-registry.d.ts +93 -0
  1225. package/core/application/src/orchestration/host/host-registry.js +255 -0
  1226. package/core/application/src/orchestration/host/host-routes.d.ts +14 -0
  1227. package/core/application/src/orchestration/host/host-routes.js +11 -0
  1228. package/core/application/src/orchestration/host/host-session-registry.d.ts +79 -0
  1229. package/core/application/src/orchestration/host/host-session-registry.js +150 -0
  1230. package/core/application/src/orchestration/host/index.d.ts +8 -0
  1231. package/core/application/src/orchestration/host/index.js +10 -0
  1232. package/core/application/src/orchestration/host/lab-navigation.d.ts +103 -0
  1233. package/core/application/src/orchestration/host/lab-navigation.js +188 -0
  1234. package/core/application/src/orchestration/host/navigation-bridge.d.ts +82 -0
  1235. package/core/application/src/orchestration/host/navigation-bridge.js +123 -0
  1236. package/core/application/src/orchestration/host/port.d.ts +12 -0
  1237. package/core/application/src/orchestration/host/port.js +3 -0
  1238. package/core/application/src/orchestration/host/session-records.d.ts +11 -0
  1239. package/core/application/src/orchestration/host/session-records.js +23 -0
  1240. package/core/application/src/orchestration/identity/index.d.ts +1 -0
  1241. package/core/application/src/orchestration/identity/index.js +3 -0
  1242. package/core/application/src/orchestration/identity/port.d.ts +11 -0
  1243. package/core/application/src/orchestration/identity/port.js +3 -0
  1244. package/core/application/src/orchestration/index.d.ts +52 -0
  1245. package/core/application/src/orchestration/index.js +46 -0
  1246. package/core/application/src/orchestration/integrations/chain-event-assertion.d.ts +49 -0
  1247. package/core/application/src/orchestration/integrations/chain-event-assertion.js +33 -0
  1248. package/core/application/src/orchestration/integrations/define.d.ts +472 -0
  1249. package/core/application/src/orchestration/integrations/define.js +64 -0
  1250. package/core/application/src/orchestration/integrations/generic-sentences.d.ts +1 -0
  1251. package/core/application/src/orchestration/integrations/generic-sentences.js +3 -0
  1252. package/core/application/src/orchestration/integrations/integration-registry.d.ts +53 -0
  1253. package/core/application/src/orchestration/integrations/integration-registry.js +261 -0
  1254. package/core/application/src/orchestration/integrations/integration-scenarios.d.ts +17 -0
  1255. package/core/application/src/orchestration/integrations/integration-scenarios.js +48 -0
  1256. package/core/application/src/orchestration/integrations/integration-sentences.d.ts +78 -0
  1257. package/core/application/src/orchestration/integrations/integration-sentences.js +214 -0
  1258. package/core/application/src/orchestration/integrations/known-submission-error.d.ts +16 -0
  1259. package/core/application/src/orchestration/integrations/known-submission-error.js +22 -0
  1260. package/core/application/src/orchestration/integrations/ui-chain-check.d.ts +104 -0
  1261. package/core/application/src/orchestration/integrations/ui-chain-check.js +191 -0
  1262. package/core/application/src/orchestration/lab/block-availability.d.ts +20 -0
  1263. package/core/application/src/orchestration/lab/block-availability.js +30 -0
  1264. package/core/application/src/orchestration/lab/checked-environment-time.d.ts +29 -0
  1265. package/core/application/src/orchestration/lab/checked-environment-time.js +52 -0
  1266. package/core/application/src/orchestration/lab/compile.d.ts +66 -0
  1267. package/core/application/src/orchestration/lab/compile.js +54 -0
  1268. package/core/application/src/orchestration/lab/declared-lab-catalog.d.ts +132 -0
  1269. package/core/application/src/orchestration/lab/declared-lab-catalog.js +343 -0
  1270. package/core/application/src/orchestration/lab/define.d.ts +377 -0
  1271. package/core/application/src/orchestration/lab/define.js +18 -0
  1272. package/core/application/src/orchestration/lab/environment-actors.d.ts +18 -0
  1273. package/core/application/src/orchestration/lab/environment-actors.js +22 -0
  1274. package/core/application/src/orchestration/lab/environment-fixtures.d.ts +14 -0
  1275. package/core/application/src/orchestration/lab/environment-fixtures.js +43 -0
  1276. package/core/application/src/orchestration/lab/environment-options.d.ts +20 -0
  1277. package/core/application/src/orchestration/lab/environment-options.js +26 -0
  1278. package/core/application/src/orchestration/lab/environment-registry.d.ts +50 -0
  1279. package/core/application/src/orchestration/lab/environment-registry.js +124 -0
  1280. package/core/application/src/orchestration/lab/environment-view.d.ts +12 -0
  1281. package/core/application/src/orchestration/lab/environment-view.js +73 -0
  1282. package/core/application/src/orchestration/lab/environments.d.ts +74 -0
  1283. package/core/application/src/orchestration/lab/environments.js +98 -0
  1284. package/core/application/src/orchestration/lab/holding-browsers.d.ts +16 -0
  1285. package/core/application/src/orchestration/lab/holding-browsers.js +18 -0
  1286. package/core/application/src/orchestration/lab/integration-availability.d.ts +39 -0
  1287. package/core/application/src/orchestration/lab/integration-availability.js +51 -0
  1288. package/core/application/src/orchestration/lab/kept-placements.d.ts +11 -0
  1289. package/core/application/src/orchestration/lab/kept-placements.js +17 -0
  1290. package/core/application/src/orchestration/lab/lab-rpc.d.ts +30 -0
  1291. package/core/application/src/orchestration/lab/lab-rpc.js +153 -0
  1292. package/core/application/src/orchestration/lab/loaded-lab.d.ts +42 -0
  1293. package/core/application/src/orchestration/lab/loaded-lab.js +48 -0
  1294. package/core/application/src/orchestration/lab/product-lab-config.d.ts +244 -0
  1295. package/core/application/src/orchestration/lab/product-lab-config.js +8 -0
  1296. package/core/application/src/orchestration/lab/registry.d.ts +25 -0
  1297. package/core/application/src/orchestration/lab/registry.js +168 -0
  1298. package/core/application/src/orchestration/lab/root-call-access.d.ts +46 -0
  1299. package/core/application/src/orchestration/lab/root-call-access.js +50 -0
  1300. package/core/application/src/orchestration/lab/scenario-conditions.d.ts +25 -0
  1301. package/core/application/src/orchestration/lab/scenario-conditions.js +31 -0
  1302. package/core/application/src/orchestration/lab/session-ports.d.ts +63 -0
  1303. package/core/application/src/orchestration/lab/session-ports.js +132 -0
  1304. package/core/application/src/orchestration/lab/source-lab-loader.d.ts +60 -0
  1305. package/core/application/src/orchestration/lab/source-lab-loader.js +57 -0
  1306. package/core/application/src/orchestration/lab/start-lab-environment.d.ts +6 -0
  1307. package/core/application/src/orchestration/lab/start-lab-environment.js +609 -0
  1308. package/core/application/src/orchestration/lab/topology-overrides.d.ts +3 -0
  1309. package/core/application/src/orchestration/lab/topology-overrides.js +42 -0
  1310. package/core/application/src/orchestration/lab/validate.d.ts +36 -0
  1311. package/core/application/src/orchestration/lab/validate.js +235 -0
  1312. package/core/application/src/orchestration/managed-environment.d.ts +7 -0
  1313. package/core/application/src/orchestration/managed-environment.js +109 -0
  1314. package/core/application/src/orchestration/run/index.d.ts +8 -0
  1315. package/core/application/src/orchestration/run/index.js +3 -0
  1316. package/core/application/src/orchestration/run/resources.d.ts +8 -0
  1317. package/core/application/src/orchestration/run/resources.js +3 -0
  1318. package/core/application/src/orchestration/secrets/dev-account-source.d.ts +10 -0
  1319. package/core/application/src/orchestration/secrets/dev-account-source.js +18 -0
  1320. package/core/application/src/orchestration/secrets/env-source.d.ts +10 -0
  1321. package/core/application/src/orchestration/secrets/env-source.js +19 -0
  1322. package/core/application/src/orchestration/secrets/secret-error.d.ts +5 -0
  1323. package/core/application/src/orchestration/secrets/secret-error.js +10 -0
  1324. package/core/application/src/orchestration/secrets/secret-resolver.d.ts +53 -0
  1325. package/core/application/src/orchestration/secrets/secret-resolver.js +92 -0
  1326. package/core/application/src/orchestration/secrets/secret-source.d.ts +18 -0
  1327. package/core/application/src/orchestration/secrets/secret-source.js +12 -0
  1328. package/core/application/src/orchestration/secrets/sources.d.ts +27 -0
  1329. package/core/application/src/orchestration/secrets/sources.js +42 -0
  1330. package/core/application/src/orchestration/services/authority-error.d.ts +7 -0
  1331. package/core/application/src/orchestration/services/authority-error.js +9 -0
  1332. package/core/application/src/orchestration/services/authorized-service.d.ts +54 -0
  1333. package/core/application/src/orchestration/services/authorized-service.js +59 -0
  1334. package/core/application/src/orchestration/services/define.d.ts +61 -0
  1335. package/core/application/src/orchestration/services/define.js +49 -0
  1336. package/core/application/src/orchestration/services/service-container.d.ts +85 -0
  1337. package/core/application/src/orchestration/services/service-container.js +320 -0
  1338. package/core/application/src/orchestration/services/service-error.d.ts +7 -0
  1339. package/core/application/src/orchestration/services/service-error.js +10 -0
  1340. package/core/application/src/orchestration/services/service-lifetime-scope.d.ts +22 -0
  1341. package/core/application/src/orchestration/services/service-lifetime-scope.js +22 -0
  1342. package/core/application/src/orchestration/services/stale-generation-error.d.ts +5 -0
  1343. package/core/application/src/orchestration/services/stale-generation-error.js +9 -0
  1344. package/core/application/src/orchestration/steps.d.ts +28 -0
  1345. package/core/application/src/orchestration/steps.js +36 -0
  1346. package/core/application/src/orchestration/topology.d.ts +7 -0
  1347. package/core/application/src/orchestration/topology.js +6 -0
  1348. package/core/application/src/orchestration/types.d.ts +4 -0
  1349. package/core/application/src/orchestration/types.js +3 -0
  1350. package/core/application/src/recordings/check-step-speed.d.ts +10 -0
  1351. package/core/application/src/recordings/check-step-speed.js +43 -0
  1352. package/core/application/src/recordings/console-collector.d.ts +21 -0
  1353. package/core/application/src/recordings/console-collector.js +43 -0
  1354. package/core/application/src/recordings/console-log.d.ts +19 -0
  1355. package/core/application/src/recordings/console-log.js +29 -0
  1356. package/core/application/src/recordings/deadline.d.ts +16 -0
  1357. package/core/application/src/recordings/deadline.js +23 -0
  1358. package/core/application/src/recordings/demo-markup.d.ts +66 -0
  1359. package/core/application/src/recordings/demo-markup.js +90 -0
  1360. package/core/application/src/recordings/demo-recording.d.ts +32 -0
  1361. package/core/application/src/recordings/demo-recording.js +213 -0
  1362. package/core/application/src/recordings/frame-sources.d.ts +9 -0
  1363. package/core/application/src/recordings/frame-sources.js +14 -0
  1364. package/core/application/src/recordings/health-sampler.d.ts +33 -0
  1365. package/core/application/src/recordings/health-sampler.js +71 -0
  1366. package/core/application/src/recordings/host-logs.d.ts +17 -0
  1367. package/core/application/src/recordings/host-logs.js +43 -0
  1368. package/core/application/src/recordings/list-recordings.d.ts +11 -0
  1369. package/core/application/src/recordings/list-recordings.js +23 -0
  1370. package/core/application/src/recordings/open-recording.d.ts +17 -0
  1371. package/core/application/src/recordings/open-recording.js +41 -0
  1372. package/core/application/src/recordings/read-run-step-health.d.ts +18 -0
  1373. package/core/application/src/recordings/read-run-step-health.js +39 -0
  1374. package/core/application/src/recordings/record-runs.d.ts +121 -0
  1375. package/core/application/src/recordings/record-runs.js +426 -0
  1376. package/core/application/src/recordings/recording-draft.d.ts +108 -0
  1377. package/core/application/src/recordings/recording-draft.js +214 -0
  1378. package/core/application/src/recordings/recording-stores.d.ts +18 -0
  1379. package/core/application/src/recordings/recording-stores.js +21 -0
  1380. package/core/application/src/recordings/step-chain-reader.d.ts +54 -0
  1381. package/core/application/src/recordings/step-chain-reader.js +176 -0
  1382. package/core/application/src/recordings/step-host-request-reader.d.ts +18 -0
  1383. package/core/application/src/recordings/step-host-request-reader.js +63 -0
  1384. package/core/application/src/recordings/write-journey-docs.d.ts +17 -0
  1385. package/core/application/src/recordings/write-journey-docs.js +119 -0
  1386. package/core/application/src/redaction/bip39-english.d.ts +1 -0
  1387. package/core/application/src/redaction/bip39-english.js +132 -0
  1388. package/core/application/src/redaction/secret-redactor.d.ts +21 -0
  1389. package/core/application/src/redaction/secret-redactor.js +104 -0
  1390. package/core/application/src/runs/activity-log.d.ts +49 -0
  1391. package/core/application/src/runs/activity-log.js +199 -0
  1392. package/core/application/src/runs/after-failure-checks.d.ts +56 -0
  1393. package/core/application/src/runs/after-failure-checks.js +89 -0
  1394. package/core/application/src/runs/after-failure-words.d.ts +9 -0
  1395. package/core/application/src/runs/after-failure-words.js +63 -0
  1396. package/core/application/src/runs/bundles/bundle-paths.d.ts +12 -0
  1397. package/core/application/src/runs/bundles/bundle-paths.js +59 -0
  1398. package/core/application/src/runs/bundles/bundle-recording.d.ts +44 -0
  1399. package/core/application/src/runs/bundles/bundle-recording.js +288 -0
  1400. package/core/application/src/runs/bundles/open-run-bundle.d.ts +23 -0
  1401. package/core/application/src/runs/bundles/open-run-bundle.js +50 -0
  1402. package/core/application/src/runs/bundles/reproduce-run.d.ts +44 -0
  1403. package/core/application/src/runs/bundles/reproduce-run.js +173 -0
  1404. package/core/application/src/runs/bundles/run-bundle-ports.d.ts +7 -0
  1405. package/core/application/src/runs/bundles/run-bundle-ports.js +3 -0
  1406. package/core/application/src/runs/bundles/run-bundle-sources.d.ts +18 -0
  1407. package/core/application/src/runs/bundles/run-bundle-sources.js +43 -0
  1408. package/core/application/src/runs/bundles/run-bundles-service.d.ts +20 -0
  1409. package/core/application/src/runs/bundles/run-bundles-service.js +22 -0
  1410. package/core/application/src/runs/bundles/start-state.d.ts +7 -0
  1411. package/core/application/src/runs/bundles/start-state.js +5 -0
  1412. package/core/application/src/runs/cancelled-error.d.ts +4 -0
  1413. package/core/application/src/runs/cancelled-error.js +5 -0
  1414. package/core/application/src/runs/check-stores.d.ts +28 -0
  1415. package/core/application/src/runs/check-stores.js +103 -0
  1416. package/core/application/src/runs/check-transaction-landed.d.ts +59 -0
  1417. package/core/application/src/runs/check-transaction-landed.js +202 -0
  1418. package/core/application/src/runs/collect-evidence.d.ts +11 -0
  1419. package/core/application/src/runs/collect-evidence.js +48 -0
  1420. package/core/application/src/runs/declared-writes.d.ts +17 -0
  1421. package/core/application/src/runs/declared-writes.js +34 -0
  1422. package/core/application/src/runs/explain-failure.d.ts +4 -0
  1423. package/core/application/src/runs/explain-failure.js +95 -0
  1424. package/core/application/src/runs/failure-rules.d.ts +15 -0
  1425. package/core/application/src/runs/failure-rules.js +197 -0
  1426. package/core/application/src/runs/host-bypass-monitor.d.ts +56 -0
  1427. package/core/application/src/runs/host-bypass-monitor.js +420 -0
  1428. package/core/application/src/runs/judge-negative-control.d.ts +4 -0
  1429. package/core/application/src/runs/judge-negative-control.js +8 -0
  1430. package/core/application/src/runs/node-route-identities.d.ts +9 -0
  1431. package/core/application/src/runs/node-route-identities.js +32 -0
  1432. package/core/application/src/runs/plan-error.d.ts +4 -0
  1433. package/core/application/src/runs/plan-error.js +5 -0
  1434. package/core/application/src/runs/quarantined-resource-error.d.ts +6 -0
  1435. package/core/application/src/runs/quarantined-resource-error.js +12 -0
  1436. package/core/application/src/runs/resource-locks.d.ts +44 -0
  1437. package/core/application/src/runs/resource-locks.js +104 -0
  1438. package/core/application/src/runs/run-console.d.ts +35 -0
  1439. package/core/application/src/runs/run-console.js +43 -0
  1440. package/core/application/src/runs/run-failure-message.d.ts +4 -0
  1441. package/core/application/src/runs/run-failure-message.js +28 -0
  1442. package/core/application/src/runs/run-scenario.d.ts +69 -0
  1443. package/core/application/src/runs/run-scenario.js +240 -0
  1444. package/core/application/src/runs/run-transactions.d.ts +17 -0
  1445. package/core/application/src/runs/run-transactions.js +117 -0
  1446. package/core/application/src/runs/scenario-inputs.d.ts +6 -0
  1447. package/core/application/src/runs/scenario-inputs.js +26 -0
  1448. package/core/application/src/runs/scenario-run.d.ts +244 -0
  1449. package/core/application/src/runs/scenario-run.js +600 -0
  1450. package/core/application/src/runs/scheduler.d.ts +235 -0
  1451. package/core/application/src/runs/scheduler.js +400 -0
  1452. package/core/application/src/runs/settle-failed-step.d.ts +27 -0
  1453. package/core/application/src/runs/settle-failed-step.js +110 -0
  1454. package/core/application/src/runs/statement-window.d.ts +37 -0
  1455. package/core/application/src/runs/statement-window.js +76 -0
  1456. package/core/application/src/runs/step-timeout-error.d.ts +4 -0
  1457. package/core/application/src/runs/step-timeout-error.js +5 -0
  1458. package/core/application/src/runs/submission-window.d.ts +102 -0
  1459. package/core/application/src/runs/submission-window.js +233 -0
  1460. package/core/application/src/settings/manage-lab-settings.d.ts +10 -0
  1461. package/core/application/src/settings/manage-lab-settings.js +70 -0
  1462. package/core/application/src/suites/compare-suite-runs.d.ts +15 -0
  1463. package/core/application/src/suites/compare-suite-runs.js +55 -0
  1464. package/core/application/src/suites/observed-versions-file.d.ts +30 -0
  1465. package/core/application/src/suites/observed-versions-file.js +30 -0
  1466. package/core/application/src/suites/row-combination.d.ts +9 -0
  1467. package/core/application/src/suites/row-combination.js +36 -0
  1468. package/core/application/src/suites/row-host-route.d.ts +26 -0
  1469. package/core/application/src/suites/row-host-route.js +30 -0
  1470. package/core/application/src/suites/run-suite.d.ts +76 -0
  1471. package/core/application/src/suites/run-suite.js +367 -0
  1472. package/core/application/src/suites/run-timings-file.d.ts +21 -0
  1473. package/core/application/src/suites/run-timings-file.js +39 -0
  1474. package/core/application/src/suites/run-workers.d.ts +19 -0
  1475. package/core/application/src/suites/run-workers.js +118 -0
  1476. package/core/application/src/suites/start-together.d.ts +15 -0
  1477. package/core/application/src/suites/start-together.js +30 -0
  1478. package/core/application/src/suites/suite-metrics.d.ts +8 -0
  1479. package/core/application/src/suites/suite-metrics.js +67 -0
  1480. package/core/application/src/suites/summarize-suite-run.d.ts +6 -0
  1481. package/core/application/src/suites/summarize-suite-run.js +57 -0
  1482. package/core/application/src/tools/runtime-tool-context.d.ts +5 -0
  1483. package/core/application/src/tools/runtime-tool-context.js +40 -0
  1484. package/core/application/src/tools/save-scenario.d.ts +18 -0
  1485. package/core/application/src/tools/save-scenario.js +49 -0
  1486. package/core/application/src/tools/tool-catalog.d.ts +27 -0
  1487. package/core/application/src/tools/tool-catalog.js +157 -0
  1488. package/core/application/src/tools/tool-context.d.ts +34 -0
  1489. package/core/application/src/tools/tool-context.js +3 -0
  1490. package/core/application/src/tools/tool-reports.d.ts +56 -0
  1491. package/core/application/src/tools/tool-reports.js +253 -0
  1492. package/core/application/src/tools/tool-runner.d.ts +67 -0
  1493. package/core/application/src/tools/tool-runner.js +423 -0
  1494. package/core/application/src/versions/check-recovery.d.ts +20 -0
  1495. package/core/application/src/versions/check-recovery.js +14 -0
  1496. package/core/application/src/versions/lab-artifacts.d.ts +27 -0
  1497. package/core/application/src/versions/lab-artifacts.js +72 -0
  1498. package/core/application/src/versions/lab-versions-service.d.ts +87 -0
  1499. package/core/application/src/versions/lab-versions-service.js +93 -0
  1500. package/core/application/src/versions/lock-proposal-body.d.ts +5 -0
  1501. package/core/application/src/versions/lock-proposal-body.js +59 -0
  1502. package/core/application/src/versions/lock-proposal-evidence.d.ts +28 -0
  1503. package/core/application/src/versions/lock-proposal-evidence.js +158 -0
  1504. package/core/application/src/versions/lock-writer.d.ts +13 -0
  1505. package/core/application/src/versions/lock-writer.js +24 -0
  1506. package/core/application/src/versions/pin-version.d.ts +21 -0
  1507. package/core/application/src/versions/pin-version.js +23 -0
  1508. package/core/application/src/versions/policy-reader.d.ts +16 -0
  1509. package/core/application/src/versions/policy-reader.js +21 -0
  1510. package/core/application/src/versions/propose-lock.d.ts +23 -0
  1511. package/core/application/src/versions/propose-lock.js +100 -0
  1512. package/core/application/src/versions/resolve-versions.d.ts +52 -0
  1513. package/core/application/src/versions/resolve-versions.js +85 -0
  1514. package/core/application/src/versions/run-versions.d.ts +15 -0
  1515. package/core/application/src/versions/run-versions.js +3 -0
  1516. package/core/application/src/versions/show-versions.d.ts +19 -0
  1517. package/core/application/src/versions/show-versions.js +51 -0
  1518. package/core/application/src/versions/update-lock.d.ts +24 -0
  1519. package/core/application/src/versions/update-lock.js +49 -0
  1520. package/core/application/src/versions/verify-lock.d.ts +21 -0
  1521. package/core/application/src/versions/verify-lock.js +53 -0
  1522. package/core/application/src/versions/version-sources.d.ts +18 -0
  1523. package/core/application/src/versions/version-sources.js +33 -0
  1524. package/core/domain/README.md +197 -0
  1525. package/core/domain/src/accounts/account-address.d.ts +48 -0
  1526. package/core/domain/src/accounts/account-address.js +153 -0
  1527. package/core/domain/src/accounts/account-format-error.d.ts +12 -0
  1528. package/core/domain/src/accounts/account-format-error.js +14 -0
  1529. package/core/domain/src/accounts/account-functions.d.ts +15 -0
  1530. package/core/domain/src/accounts/account-functions.js +16 -0
  1531. package/core/domain/src/accounts/ambiguous-account-error.d.ts +9 -0
  1532. package/core/domain/src/accounts/ambiguous-account-error.js +13 -0
  1533. package/core/domain/src/accounts/expected-account.d.ts +19 -0
  1534. package/core/domain/src/accounts/expected-account.js +35 -0
  1535. package/core/domain/src/accounts/hashes.d.ts +4 -0
  1536. package/core/domain/src/accounts/hashes.js +131 -0
  1537. package/core/domain/src/accounts/index.d.ts +5 -0
  1538. package/core/domain/src/accounts/index.js +7 -0
  1539. package/core/domain/src/actors/actor-alias.d.ts +13 -0
  1540. package/core/domain/src/actors/actor-alias.js +24 -0
  1541. package/core/domain/src/actors/actor-id.d.ts +13 -0
  1542. package/core/domain/src/actors/actor-id.js +24 -0
  1543. package/core/domain/src/actors/actor-roster.d.ts +19 -0
  1544. package/core/domain/src/actors/actor-roster.js +36 -0
  1545. package/core/domain/src/actors/actor.d.ts +122 -0
  1546. package/core/domain/src/actors/actor.js +49 -0
  1547. package/core/domain/src/actors/host-color.d.ts +4 -0
  1548. package/core/domain/src/actors/host-color.js +6 -0
  1549. package/core/domain/src/actors/host-options.d.ts +74 -0
  1550. package/core/domain/src/actors/host-options.js +100 -0
  1551. package/core/domain/src/actors/index.d.ts +8 -0
  1552. package/core/domain/src/actors/index.js +10 -0
  1553. package/core/domain/src/actors/principal.d.ts +42 -0
  1554. package/core/domain/src/actors/principal.js +33 -0
  1555. package/core/domain/src/actors/session.d.ts +20 -0
  1556. package/core/domain/src/actors/session.js +35 -0
  1557. package/core/domain/src/agreement/agreement-judge.d.ts +66 -0
  1558. package/core/domain/src/agreement/agreement-judge.js +272 -0
  1559. package/core/domain/src/agreement/agreement-mode.d.ts +14 -0
  1560. package/core/domain/src/agreement/agreement-mode.js +16 -0
  1561. package/core/domain/src/agreement/agreement-record.d.ts +142 -0
  1562. package/core/domain/src/agreement/agreement-record.js +14 -0
  1563. package/core/domain/src/agreement/agreement-sample.d.ts +65 -0
  1564. package/core/domain/src/agreement/agreement-sample.js +3 -0
  1565. package/core/domain/src/agreement/agreement-settings.d.ts +36 -0
  1566. package/core/domain/src/agreement/agreement-settings.js +55 -0
  1567. package/core/domain/src/agreement/claims.d.ts +9 -0
  1568. package/core/domain/src/agreement/claims.js +55 -0
  1569. package/core/domain/src/agreement/index.d.ts +7 -0
  1570. package/core/domain/src/agreement/index.js +9 -0
  1571. package/core/domain/src/agreement/ui-chain-disagreement-error.d.ts +18 -0
  1572. package/core/domain/src/agreement/ui-chain-disagreement-error.js +22 -0
  1573. package/core/domain/src/apps/app-account-source.d.ts +29 -0
  1574. package/core/domain/src/apps/app-account-source.js +41 -0
  1575. package/core/domain/src/apps/app-announcement-window.d.ts +17 -0
  1576. package/core/domain/src/apps/app-announcement-window.js +30 -0
  1577. package/core/domain/src/apps/app-build-message.d.ts +75 -0
  1578. package/core/domain/src/apps/app-build-message.js +42 -0
  1579. package/core/domain/src/apps/app-deployed-source.d.ts +62 -0
  1580. package/core/domain/src/apps/app-deployed-source.js +100 -0
  1581. package/core/domain/src/apps/app-dev-server.d.ts +115 -0
  1582. package/core/domain/src/apps/app-dev-server.js +186 -0
  1583. package/core/domain/src/apps/app-framing.d.ts +70 -0
  1584. package/core/domain/src/apps/app-framing.js +133 -0
  1585. package/core/domain/src/apps/app-readiness.d.ts +102 -0
  1586. package/core/domain/src/apps/app-readiness.js +138 -0
  1587. package/core/domain/src/apps/app-watch.d.ts +62 -0
  1588. package/core/domain/src/apps/app-watch.js +106 -0
  1589. package/core/domain/src/apps/dev-server-socket.d.ts +27 -0
  1590. package/core/domain/src/apps/dev-server-socket.js +76 -0
  1591. package/core/domain/src/apps/host-bypass-policy.d.ts +5 -0
  1592. package/core/domain/src/apps/host-bypass-policy.js +12 -0
  1593. package/core/domain/src/apps/html-script.d.ts +9 -0
  1594. package/core/domain/src/apps/html-script.js +21 -0
  1595. package/core/domain/src/apps/index.d.ts +15 -0
  1596. package/core/domain/src/apps/index.js +17 -0
  1597. package/core/domain/src/apps/next-turbopack-announcement.d.ts +8 -0
  1598. package/core/domain/src/apps/next-turbopack-announcement.js +62 -0
  1599. package/core/domain/src/apps/next-webpack-announcement.d.ts +5 -0
  1600. package/core/domain/src/apps/next-webpack-announcement.js +42 -0
  1601. package/core/domain/src/apps/vite-app-announcement.d.ts +2 -0
  1602. package/core/domain/src/apps/vite-app-announcement.js +30 -0
  1603. package/core/domain/src/apps/webpack-dev-server-announcement.d.ts +12 -0
  1604. package/core/domain/src/apps/webpack-dev-server-announcement.js +56 -0
  1605. package/core/domain/src/builder/builder-check.d.ts +81 -0
  1606. package/core/domain/src/builder/builder-check.js +253 -0
  1607. package/core/domain/src/builder/builder-document.d.ts +95 -0
  1608. package/core/domain/src/builder/builder-document.js +16 -0
  1609. package/core/domain/src/builder/builder-edit.d.ts +70 -0
  1610. package/core/domain/src/builder/builder-edit.js +190 -0
  1611. package/core/domain/src/builder/builder-error.d.ts +8 -0
  1612. package/core/domain/src/builder/builder-error.js +11 -0
  1613. package/core/domain/src/builder/builder-palette.d.ts +101 -0
  1614. package/core/domain/src/builder/builder-palette.js +90 -0
  1615. package/core/domain/src/builder/feature-reader.d.ts +4 -0
  1616. package/core/domain/src/builder/feature-reader.js +326 -0
  1617. package/core/domain/src/builder/feature-writer.d.ts +51 -0
  1618. package/core/domain/src/builder/feature-writer.js +230 -0
  1619. package/core/domain/src/builder/index.d.ts +8 -0
  1620. package/core/domain/src/builder/index.js +10 -0
  1621. package/core/domain/src/builder/round-trip-error.d.ts +6 -0
  1622. package/core/domain/src/builder/round-trip-error.js +10 -0
  1623. package/core/domain/src/checks/index.d.ts +3 -0
  1624. package/core/domain/src/checks/index.js +5 -0
  1625. package/core/domain/src/checks/side-reading.d.ts +96 -0
  1626. package/core/domain/src/checks/side-reading.js +105 -0
  1627. package/core/domain/src/checks/step-check-error.d.ts +4 -0
  1628. package/core/domain/src/checks/step-check-error.js +5 -0
  1629. package/core/domain/src/checks/step-checks.d.ts +115 -0
  1630. package/core/domain/src/checks/step-checks.js +120 -0
  1631. package/core/domain/src/conditions/condition-error.d.ts +4 -0
  1632. package/core/domain/src/conditions/condition-error.js +8 -0
  1633. package/core/domain/src/conditions/condition-profiles.d.ts +15 -0
  1634. package/core/domain/src/conditions/condition-profiles.js +42 -0
  1635. package/core/domain/src/conditions/condition-step.d.ts +29 -0
  1636. package/core/domain/src/conditions/condition-step.js +45 -0
  1637. package/core/domain/src/conditions/conditioned-traffic.d.ts +25 -0
  1638. package/core/domain/src/conditions/conditioned-traffic.js +31 -0
  1639. package/core/domain/src/conditions/conditioned-wire.d.ts +21 -0
  1640. package/core/domain/src/conditions/conditioned-wire.js +38 -0
  1641. package/core/domain/src/conditions/cpu-slowdown.d.ts +4 -0
  1642. package/core/domain/src/conditions/cpu-slowdown.js +9 -0
  1643. package/core/domain/src/conditions/index.d.ts +7 -0
  1644. package/core/domain/src/conditions/index.js +9 -0
  1645. package/core/domain/src/conditions/network-condition.d.ts +18 -0
  1646. package/core/domain/src/conditions/network-condition.js +25 -0
  1647. package/core/domain/src/devices/device-profile.d.ts +43 -0
  1648. package/core/domain/src/devices/device-profile.js +70 -0
  1649. package/core/domain/src/devices/index.d.ts +2 -0
  1650. package/core/domain/src/devices/index.js +4 -0
  1651. package/core/domain/src/devices/synthetic-media.d.ts +15 -0
  1652. package/core/domain/src/devices/synthetic-media.js +7 -0
  1653. package/core/domain/src/explore/exploration-alphabet.d.ts +30 -0
  1654. package/core/domain/src/explore/exploration-alphabet.js +88 -0
  1655. package/core/domain/src/explore/failure-signature.d.ts +13 -0
  1656. package/core/domain/src/explore/failure-signature.js +14 -0
  1657. package/core/domain/src/explore/index.d.ts +6 -0
  1658. package/core/domain/src/explore/index.js +8 -0
  1659. package/core/domain/src/explore/seeded-random.d.ts +11 -0
  1660. package/core/domain/src/explore/seeded-random.js +27 -0
  1661. package/core/domain/src/explore/shrink-steps.d.ts +15 -0
  1662. package/core/domain/src/explore/shrink-steps.js +42 -0
  1663. package/core/domain/src/explore/what-if-branches.d.ts +34 -0
  1664. package/core/domain/src/explore/what-if-branches.js +62 -0
  1665. package/core/domain/src/explore/what-if-plan-error.d.ts +5 -0
  1666. package/core/domain/src/explore/what-if-plan-error.js +10 -0
  1667. package/core/domain/src/features/cleanup-report.d.ts +22 -0
  1668. package/core/domain/src/features/cleanup-report.js +23 -0
  1669. package/core/domain/src/features/feature-file.d.ts +111 -0
  1670. package/core/domain/src/features/feature-file.js +290 -0
  1671. package/core/domain/src/features/feature-path.d.ts +7 -0
  1672. package/core/domain/src/features/feature-path.js +19 -0
  1673. package/core/domain/src/features/index.d.ts +8 -0
  1674. package/core/domain/src/features/index.js +10 -0
  1675. package/core/domain/src/features/plain-output.d.ts +43 -0
  1676. package/core/domain/src/features/plain-output.js +47 -0
  1677. package/core/domain/src/features/scenario-conditions.d.ts +28 -0
  1678. package/core/domain/src/features/scenario-conditions.js +51 -0
  1679. package/core/domain/src/features/scenario-environments.d.ts +47 -0
  1680. package/core/domain/src/features/scenario-environments.js +47 -0
  1681. package/core/domain/src/features/step-breakpoints.d.ts +48 -0
  1682. package/core/domain/src/features/step-breakpoints.js +75 -0
  1683. package/core/domain/src/features/tag-expression.d.ts +1 -0
  1684. package/core/domain/src/features/tag-expression.js +45 -0
  1685. package/core/domain/src/fixtures/fixture-bundle.d.ts +123 -0
  1686. package/core/domain/src/fixtures/fixture-bundle.js +183 -0
  1687. package/core/domain/src/fixtures/fixture-catalog.d.ts +49 -0
  1688. package/core/domain/src/fixtures/fixture-catalog.js +91 -0
  1689. package/core/domain/src/fixtures/fixture-declaration.d.ts +22 -0
  1690. package/core/domain/src/fixtures/fixture-declaration.js +60 -0
  1691. package/core/domain/src/fixtures/fixture-import-incomplete-error.d.ts +10 -0
  1692. package/core/domain/src/fixtures/fixture-import-incomplete-error.js +10 -0
  1693. package/core/domain/src/fixtures/fixture-key.d.ts +57 -0
  1694. package/core/domain/src/fixtures/fixture-key.js +129 -0
  1695. package/core/domain/src/fixtures/fixture-record.d.ts +89 -0
  1696. package/core/domain/src/fixtures/fixture-record.js +105 -0
  1697. package/core/domain/src/fixtures/fixture-refused-error.d.ts +11 -0
  1698. package/core/domain/src/fixtures/fixture-refused-error.js +13 -0
  1699. package/core/domain/src/fixtures/fixture-source-declaration.d.ts +21 -0
  1700. package/core/domain/src/fixtures/fixture-source-declaration.js +36 -0
  1701. package/core/domain/src/fixtures/index.d.ts +9 -0
  1702. package/core/domain/src/fixtures/index.js +11 -0
  1703. package/core/domain/src/fixtures/scenario-fixture.d.ts +34 -0
  1704. package/core/domain/src/fixtures/scenario-fixture.js +33 -0
  1705. package/core/domain/src/identity/identity.d.ts +50 -0
  1706. package/core/domain/src/identity/identity.js +47 -0
  1707. package/core/domain/src/identity/index.d.ts +2 -0
  1708. package/core/domain/src/identity/index.js +4 -0
  1709. package/core/domain/src/identity/pre-onboarded-actor.d.ts +34 -0
  1710. package/core/domain/src/identity/pre-onboarded-actor.js +66 -0
  1711. package/core/domain/src/index.d.ts +27 -0
  1712. package/core/domain/src/index.js +29 -0
  1713. package/core/domain/src/lab/capability-policy.d.ts +37 -0
  1714. package/core/domain/src/lab/capability-policy.js +50 -0
  1715. package/core/domain/src/lab/capability.d.ts +4 -0
  1716. package/core/domain/src/lab/capability.js +13 -0
  1717. package/core/domain/src/lab/chain-pace.d.ts +20 -0
  1718. package/core/domain/src/lab/chain-pace.js +19 -0
  1719. package/core/domain/src/lab/confirmation-required-error.d.ts +8 -0
  1720. package/core/domain/src/lab/confirmation-required-error.js +10 -0
  1721. package/core/domain/src/lab/environment-options.d.ts +43 -0
  1722. package/core/domain/src/lab/environment-options.js +39 -0
  1723. package/core/domain/src/lab/environment-request-error.d.ts +10 -0
  1724. package/core/domain/src/lab/environment-request-error.js +5 -0
  1725. package/core/domain/src/lab/host-capabilities.d.ts +60 -0
  1726. package/core/domain/src/lab/host-capabilities.js +15 -0
  1727. package/core/domain/src/lab/index.d.ts +24 -0
  1728. package/core/domain/src/lab/index.js +26 -0
  1729. package/core/domain/src/lab/integration-readiness.d.ts +37 -0
  1730. package/core/domain/src/lab/integration-readiness.js +35 -0
  1731. package/core/domain/src/lab/lab-configuration-error.d.ts +5 -0
  1732. package/core/domain/src/lab/lab-configuration-error.js +10 -0
  1733. package/core/domain/src/lab/offer.d.ts +47 -0
  1734. package/core/domain/src/lab/offer.js +62 -0
  1735. package/core/domain/src/lab/public-target.d.ts +94 -0
  1736. package/core/domain/src/lab/public-target.js +114 -0
  1737. package/core/domain/src/lab/requirement-check.d.ts +23 -0
  1738. package/core/domain/src/lab/requirement-check.js +30 -0
  1739. package/core/domain/src/lab/requirement-functions.d.ts +14 -0
  1740. package/core/domain/src/lab/requirement-functions.js +13 -0
  1741. package/core/domain/src/lab/requirements.d.ts +25 -0
  1742. package/core/domain/src/lab/requirements.js +29 -0
  1743. package/core/domain/src/lab/resolved-config.d.ts +81 -0
  1744. package/core/domain/src/lab/resolved-config.js +91 -0
  1745. package/core/domain/src/lab/rpc-selection.d.ts +62 -0
  1746. package/core/domain/src/lab/rpc-selection.js +95 -0
  1747. package/core/domain/src/lab/run-manifest.d.ts +36 -0
  1748. package/core/domain/src/lab/run-manifest.js +24 -0
  1749. package/core/domain/src/lab/running-lab.d.ts +6 -0
  1750. package/core/domain/src/lab/running-lab.js +5 -0
  1751. package/core/domain/src/lab/runtime-wire.d.ts +21 -0
  1752. package/core/domain/src/lab/runtime-wire.js +87 -0
  1753. package/core/domain/src/lab/topology-error.d.ts +5 -0
  1754. package/core/domain/src/lab/topology-error.js +10 -0
  1755. package/core/domain/src/lab/topology-functions.d.ts +66 -0
  1756. package/core/domain/src/lab/topology-functions.js +159 -0
  1757. package/core/domain/src/lab/topology-issues.d.ts +16 -0
  1758. package/core/domain/src/lab/topology-issues.js +45 -0
  1759. package/core/domain/src/lab/topology.d.ts +188 -0
  1760. package/core/domain/src/lab/topology.js +53 -0
  1761. package/core/domain/src/lab/value-tones.d.ts +30 -0
  1762. package/core/domain/src/lab/value-tones.js +66 -0
  1763. package/core/domain/src/load/index.d.ts +3 -0
  1764. package/core/domain/src/load/index.js +5 -0
  1765. package/core/domain/src/load/load-guard.d.ts +14 -0
  1766. package/core/domain/src/load/load-guard.js +13 -0
  1767. package/core/domain/src/load/load-plan.d.ts +26 -0
  1768. package/core/domain/src/load/load-plan.js +32 -0
  1769. package/core/domain/src/load/load-report.d.ts +64 -0
  1770. package/core/domain/src/load/load-report.js +73 -0
  1771. package/core/domain/src/navigation/app-routes.d.ts +27 -0
  1772. package/core/domain/src/navigation/app-routes.js +85 -0
  1773. package/core/domain/src/navigation/app-url.d.ts +9 -0
  1774. package/core/domain/src/navigation/app-url.js +22 -0
  1775. package/core/domain/src/navigation/index.d.ts +7 -0
  1776. package/core/domain/src/navigation/index.js +9 -0
  1777. package/core/domain/src/navigation/named-destination.d.ts +43 -0
  1778. package/core/domain/src/navigation/named-destination.js +49 -0
  1779. package/core/domain/src/navigation/navigation-evidence.d.ts +20 -0
  1780. package/core/domain/src/navigation/navigation-evidence.js +3 -0
  1781. package/core/domain/src/navigation/navigation-expectation.d.ts +16 -0
  1782. package/core/domain/src/navigation/navigation-expectation.js +40 -0
  1783. package/core/domain/src/navigation/navigation-request.d.ts +16 -0
  1784. package/core/domain/src/navigation/navigation-request.js +13 -0
  1785. package/core/domain/src/navigation/navigation-resolution.d.ts +69 -0
  1786. package/core/domain/src/navigation/navigation-resolution.js +37 -0
  1787. package/core/domain/src/network/endpoint-locality.d.ts +14 -0
  1788. package/core/domain/src/network/endpoint-locality.js +39 -0
  1789. package/core/domain/src/network/environment-endpoints.d.ts +36 -0
  1790. package/core/domain/src/network/environment-endpoints.js +49 -0
  1791. package/core/domain/src/network/host-network-routes.d.ts +73 -0
  1792. package/core/domain/src/network/host-network-routes.js +138 -0
  1793. package/core/domain/src/network/host-route-closures.d.ts +9 -0
  1794. package/core/domain/src/network/host-route-closures.js +23 -0
  1795. package/core/domain/src/network/index.d.ts +8 -0
  1796. package/core/domain/src/network/index.js +10 -0
  1797. package/core/domain/src/network/loopback-url.d.ts +33 -0
  1798. package/core/domain/src/network/loopback-url.js +63 -0
  1799. package/core/domain/src/network/mixed-endpoints-error.d.ts +12 -0
  1800. package/core/domain/src/network/mixed-endpoints-error.js +17 -0
  1801. package/core/domain/src/network/network-policy.d.ts +98 -0
  1802. package/core/domain/src/network/network-policy.js +157 -0
  1803. package/core/domain/src/network/observed-endpoints.d.ts +17 -0
  1804. package/core/domain/src/network/observed-endpoints.js +47 -0
  1805. package/core/domain/src/network/worker-hold.d.ts +24 -0
  1806. package/core/domain/src/network/worker-hold.js +14 -0
  1807. package/core/domain/src/products/index.d.ts +3 -0
  1808. package/core/domain/src/products/index.js +5 -0
  1809. package/core/domain/src/products/product-config-policy.d.ts +19 -0
  1810. package/core/domain/src/products/product-config-policy.js +18 -0
  1811. package/core/domain/src/products/product-config-refused.d.ts +4 -0
  1812. package/core/domain/src/products/product-config-refused.js +8 -0
  1813. package/core/domain/src/products/product-config.d.ts +40 -0
  1814. package/core/domain/src/products/product-config.js +75 -0
  1815. package/core/domain/src/recordings/demo-cut.d.ts +91 -0
  1816. package/core/domain/src/recordings/demo-cut.js +179 -0
  1817. package/core/domain/src/recordings/demo-refused-error.d.ts +9 -0
  1818. package/core/domain/src/recordings/demo-refused-error.js +10 -0
  1819. package/core/domain/src/recordings/index.d.ts +16 -0
  1820. package/core/domain/src/recordings/index.js +18 -0
  1821. package/core/domain/src/recordings/journey-document.d.ts +69 -0
  1822. package/core/domain/src/recordings/journey-document.js +93 -0
  1823. package/core/domain/src/recordings/journey-markdown.d.ts +21 -0
  1824. package/core/domain/src/recordings/journey-markdown.js +37 -0
  1825. package/core/domain/src/recordings/journeys-declaration.d.ts +16 -0
  1826. package/core/domain/src/recordings/journeys-declaration.js +17 -0
  1827. package/core/domain/src/recordings/recording-data.d.ts +476 -0
  1828. package/core/domain/src/recordings/recording-data.js +3 -0
  1829. package/core/domain/src/recordings/recording-format-error.d.ts +5 -0
  1830. package/core/domain/src/recordings/recording-format-error.js +9 -0
  1831. package/core/domain/src/recordings/recording-health.d.ts +77 -0
  1832. package/core/domain/src/recordings/recording-health.js +108 -0
  1833. package/core/domain/src/recordings/recording-not-found-error.d.ts +5 -0
  1834. package/core/domain/src/recordings/recording-not-found-error.js +9 -0
  1835. package/core/domain/src/recordings/recording-retention.d.ts +35 -0
  1836. package/core/domain/src/recordings/recording-retention.js +53 -0
  1837. package/core/domain/src/recordings/recording-settings.d.ts +50 -0
  1838. package/core/domain/src/recordings/recording-settings.js +81 -0
  1839. package/core/domain/src/recordings/run-recording.d.ts +65 -0
  1840. package/core/domain/src/recordings/run-recording.js +321 -0
  1841. package/core/domain/src/recordings/step-chain-windows.d.ts +35 -0
  1842. package/core/domain/src/recordings/step-chain-windows.js +50 -0
  1843. package/core/domain/src/recordings/step-console-errors.d.ts +38 -0
  1844. package/core/domain/src/recordings/step-console-errors.js +37 -0
  1845. package/core/domain/src/recordings/step-machine.d.ts +6 -0
  1846. package/core/domain/src/recordings/step-machine.js +15 -0
  1847. package/core/domain/src/recordings/step-speed-limits.d.ts +59 -0
  1848. package/core/domain/src/recordings/step-speed-limits.js +69 -0
  1849. package/core/domain/src/releases/index.d.ts +1 -0
  1850. package/core/domain/src/releases/index.js +3 -0
  1851. package/core/domain/src/releases/release-notes.d.ts +49 -0
  1852. package/core/domain/src/releases/release-notes.js +115 -0
  1853. package/core/domain/src/resources/generation.d.ts +15 -0
  1854. package/core/domain/src/resources/generation.js +26 -0
  1855. package/core/domain/src/resources/index.d.ts +3 -0
  1856. package/core/domain/src/resources/index.js +5 -0
  1857. package/core/domain/src/resources/resource-functions.d.ts +6 -0
  1858. package/core/domain/src/resources/resource-functions.js +12 -0
  1859. package/core/domain/src/resources/resource.d.ts +17 -0
  1860. package/core/domain/src/resources/resource.js +42 -0
  1861. package/core/domain/src/root-calls/index.d.ts +2 -0
  1862. package/core/domain/src/root-calls/index.js +4 -0
  1863. package/core/domain/src/root-calls/known-networks.d.ts +13 -0
  1864. package/core/domain/src/root-calls/known-networks.js +23 -0
  1865. package/core/domain/src/root-calls/root-call-policy.d.ts +44 -0
  1866. package/core/domain/src/root-calls/root-call-policy.js +59 -0
  1867. package/core/domain/src/runs/checkpoint.d.ts +20 -0
  1868. package/core/domain/src/runs/checkpoint.js +22 -0
  1869. package/core/domain/src/runs/evidence.d.ts +66 -0
  1870. package/core/domain/src/runs/evidence.js +126 -0
  1871. package/core/domain/src/runs/failure-description.d.ts +2 -0
  1872. package/core/domain/src/runs/failure-description.js +23 -0
  1873. package/core/domain/src/runs/failure-marker.d.ts +6 -0
  1874. package/core/domain/src/runs/failure-marker.js +32 -0
  1875. package/core/domain/src/runs/failure-reason.d.ts +52 -0
  1876. package/core/domain/src/runs/failure-reason.js +36 -0
  1877. package/core/domain/src/runs/host-bypass-assertion.d.ts +5 -0
  1878. package/core/domain/src/runs/host-bypass-assertion.js +18 -0
  1879. package/core/domain/src/runs/host-bypass-evidence.d.ts +106 -0
  1880. package/core/domain/src/runs/host-bypass-evidence.js +3 -0
  1881. package/core/domain/src/runs/host-bypass-verdict.d.ts +13 -0
  1882. package/core/domain/src/runs/host-bypass-verdict.js +30 -0
  1883. package/core/domain/src/runs/host-request-limits.d.ts +32 -0
  1884. package/core/domain/src/runs/host-request-limits.js +30 -0
  1885. package/core/domain/src/runs/index.d.ts +28 -0
  1886. package/core/domain/src/runs/index.js +30 -0
  1887. package/core/domain/src/runs/lab-failure.d.ts +11 -0
  1888. package/core/domain/src/runs/lab-failure.js +16 -0
  1889. package/core/domain/src/runs/merge-host-bypass-evidence.d.ts +3 -0
  1890. package/core/domain/src/runs/merge-host-bypass-evidence.js +112 -0
  1891. package/core/domain/src/runs/negative-control.d.ts +108 -0
  1892. package/core/domain/src/runs/negative-control.js +123 -0
  1893. package/core/domain/src/runs/race-jitter.d.ts +29 -0
  1894. package/core/domain/src/runs/race-jitter.js +36 -0
  1895. package/core/domain/src/runs/race-seed.d.ts +16 -0
  1896. package/core/domain/src/runs/race-seed.js +35 -0
  1897. package/core/domain/src/runs/run-bundle-data.d.ts +142 -0
  1898. package/core/domain/src/runs/run-bundle-data.js +6 -0
  1899. package/core/domain/src/runs/run-bundle-format-error.d.ts +5 -0
  1900. package/core/domain/src/runs/run-bundle-format-error.js +10 -0
  1901. package/core/domain/src/runs/run-bundle-refused-error.d.ts +7 -0
  1902. package/core/domain/src/runs/run-bundle-refused-error.js +12 -0
  1903. package/core/domain/src/runs/run-bundle-reproduction.d.ts +46 -0
  1904. package/core/domain/src/runs/run-bundle-reproduction.js +57 -0
  1905. package/core/domain/src/runs/run-bundle.d.ts +28 -0
  1906. package/core/domain/src/runs/run-bundle.js +166 -0
  1907. package/core/domain/src/runs/run-transition-error.d.ts +4 -0
  1908. package/core/domain/src/runs/run-transition-error.js +8 -0
  1909. package/core/domain/src/runs/run.d.ts +45 -0
  1910. package/core/domain/src/runs/run.js +91 -0
  1911. package/core/domain/src/runs/scenario-input-error.d.ts +13 -0
  1912. package/core/domain/src/runs/scenario-input-error.js +12 -0
  1913. package/core/domain/src/runs/step-failure.d.ts +18 -0
  1914. package/core/domain/src/runs/step-failure.js +69 -0
  1915. package/core/domain/src/runs/step-submissions.d.ts +73 -0
  1916. package/core/domain/src/runs/step-submissions.js +85 -0
  1917. package/core/domain/src/runs/stored-content.d.ts +17 -0
  1918. package/core/domain/src/runs/stored-content.js +47 -0
  1919. package/core/domain/src/runs/submitted-transaction.d.ts +63 -0
  1920. package/core/domain/src/runs/submitted-transaction.js +108 -0
  1921. package/core/domain/src/runs/transaction-landing.d.ts +82 -0
  1922. package/core/domain/src/runs/transaction-landing.js +76 -0
  1923. package/core/domain/src/runs/workers.d.ts +48 -0
  1924. package/core/domain/src/runs/workers.js +83 -0
  1925. package/core/domain/src/sentences/ambiguous-sentence-error.d.ts +7 -0
  1926. package/core/domain/src/sentences/ambiguous-sentence-error.js +13 -0
  1927. package/core/domain/src/sentences/ambiguous-split-error.d.ts +6 -0
  1928. package/core/domain/src/sentences/ambiguous-split-error.js +14 -0
  1929. package/core/domain/src/sentences/assertion-mutants.d.ts +77 -0
  1930. package/core/domain/src/sentences/assertion-mutants.js +112 -0
  1931. package/core/domain/src/sentences/characters.d.ts +29 -0
  1932. package/core/domain/src/sentences/characters.js +71 -0
  1933. package/core/domain/src/sentences/generic-sentences.d.ts +67 -0
  1934. package/core/domain/src/sentences/generic-sentences.js +66 -0
  1935. package/core/domain/src/sentences/index.d.ts +16 -0
  1936. package/core/domain/src/sentences/index.js +18 -0
  1937. package/core/domain/src/sentences/missing-sentence-error.d.ts +6 -0
  1938. package/core/domain/src/sentences/missing-sentence-error.js +11 -0
  1939. package/core/domain/src/sentences/output-reference.d.ts +14 -0
  1940. package/core/domain/src/sentences/output-reference.js +38 -0
  1941. package/core/domain/src/sentences/scenario-outputs.d.ts +33 -0
  1942. package/core/domain/src/sentences/scenario-outputs.js +36 -0
  1943. package/core/domain/src/sentences/scenario-plan.d.ts +54 -0
  1944. package/core/domain/src/sentences/scenario-plan.js +92 -0
  1945. package/core/domain/src/sentences/sentence-book.d.ts +132 -0
  1946. package/core/domain/src/sentences/sentence-book.js +387 -0
  1947. package/core/domain/src/sentences/sentence-error.d.ts +10 -0
  1948. package/core/domain/src/sentences/sentence-error.js +18 -0
  1949. package/core/domain/src/sentences/sentence-pattern.d.ts +42 -0
  1950. package/core/domain/src/sentences/sentence-pattern.js +139 -0
  1951. package/core/domain/src/sentences/table-error.d.ts +6 -0
  1952. package/core/domain/src/sentences/table-error.js +11 -0
  1953. package/core/domain/src/sentences/table-shape.d.ts +42 -0
  1954. package/core/domain/src/sentences/table-shape.js +121 -0
  1955. package/core/domain/src/sentences/time-advance.d.ts +36 -0
  1956. package/core/domain/src/sentences/time-advance.js +60 -0
  1957. package/core/domain/src/sentences/unresolved-reference-error.d.ts +5 -0
  1958. package/core/domain/src/sentences/unresolved-reference-error.js +9 -0
  1959. package/core/domain/src/shared/adapter-options.d.ts +17 -0
  1960. package/core/domain/src/shared/adapter-options.js +8 -0
  1961. package/core/domain/src/shared/block-unavailable-error.d.ts +15 -0
  1962. package/core/domain/src/shared/block-unavailable-error.js +11 -0
  1963. package/core/domain/src/shared/development-authority.d.ts +12 -0
  1964. package/core/domain/src/shared/development-authority.js +6 -0
  1965. package/core/domain/src/shared/index.d.ts +12 -0
  1966. package/core/domain/src/shared/index.js +14 -0
  1967. package/core/domain/src/shared/json-rpc-error.d.ts +14 -0
  1968. package/core/domain/src/shared/json-rpc-error.js +15 -0
  1969. package/core/domain/src/shared/missing-capability-error.d.ts +4 -0
  1970. package/core/domain/src/shared/missing-capability-error.js +8 -0
  1971. package/core/domain/src/shared/missing-host-tools-error.d.ts +5 -0
  1972. package/core/domain/src/shared/missing-host-tools-error.js +10 -0
  1973. package/core/domain/src/shared/missing-route-error.d.ts +6 -0
  1974. package/core/domain/src/shared/missing-route-error.js +12 -0
  1975. package/core/domain/src/shared/pending-check-error.d.ts +9 -0
  1976. package/core/domain/src/shared/pending-check-error.js +11 -0
  1977. package/core/domain/src/shared/secret-uri.d.ts +27 -0
  1978. package/core/domain/src/shared/secret-uri.js +46 -0
  1979. package/core/domain/src/shared/sibling-module.d.ts +6 -0
  1980. package/core/domain/src/shared/sibling-module.js +9 -0
  1981. package/core/domain/src/shared/unsupported-capability-error.d.ts +6 -0
  1982. package/core/domain/src/shared/unsupported-capability-error.js +11 -0
  1983. package/core/domain/src/shared/unsupported-host-operation.d.ts +7 -0
  1984. package/core/domain/src/shared/unsupported-host-operation.js +14 -0
  1985. package/core/domain/src/statements/content-check.d.ts +16 -0
  1986. package/core/domain/src/statements/content-check.js +52 -0
  1987. package/core/domain/src/statements/index.d.ts +2 -0
  1988. package/core/domain/src/statements/index.js +4 -0
  1989. package/core/domain/src/statements/statement.d.ts +44 -0
  1990. package/core/domain/src/statements/statement.js +118 -0
  1991. package/core/domain/src/suites/bisect-plan.d.ts +87 -0
  1992. package/core/domain/src/suites/bisect-plan.js +76 -0
  1993. package/core/domain/src/suites/bisection.d.ts +73 -0
  1994. package/core/domain/src/suites/bisection.js +113 -0
  1995. package/core/domain/src/suites/change-scopes.d.ts +38 -0
  1996. package/core/domain/src/suites/change-scopes.js +70 -0
  1997. package/core/domain/src/suites/compatibility-notice.d.ts +23 -0
  1998. package/core/domain/src/suites/compatibility-notice.js +115 -0
  1999. package/core/domain/src/suites/compatibility.d.ts +129 -0
  2000. package/core/domain/src/suites/compatibility.js +291 -0
  2001. package/core/domain/src/suites/index.d.ts +15 -0
  2002. package/core/domain/src/suites/index.js +17 -0
  2003. package/core/domain/src/suites/mode-data.d.ts +32 -0
  2004. package/core/domain/src/suites/mode-data.js +3 -0
  2005. package/core/domain/src/suites/path-glob.d.ts +1 -0
  2006. package/core/domain/src/suites/path-glob.js +21 -0
  2007. package/core/domain/src/suites/suite-budget.d.ts +2 -0
  2008. package/core/domain/src/suites/suite-budget.js +15 -0
  2009. package/core/domain/src/suites/suite-config-error.d.ts +4 -0
  2010. package/core/domain/src/suites/suite-config-error.js +8 -0
  2011. package/core/domain/src/suites/suite-config.d.ts +48 -0
  2012. package/core/domain/src/suites/suite-config.js +184 -0
  2013. package/core/domain/src/suites/suite-data.d.ts +52 -0
  2014. package/core/domain/src/suites/suite-data.js +3 -0
  2015. package/core/domain/src/suites/suite-evidence-error.d.ts +20 -0
  2016. package/core/domain/src/suites/suite-evidence-error.js +14 -0
  2017. package/core/domain/src/suites/suite-plan.d.ts +88 -0
  2018. package/core/domain/src/suites/suite-plan.js +123 -0
  2019. package/core/domain/src/suites/suite-run-summary.d.ts +70 -0
  2020. package/core/domain/src/suites/suite-run-summary.js +22 -0
  2021. package/core/domain/src/suites/suite-verdict.d.ts +22 -0
  2022. package/core/domain/src/suites/suite-verdict.js +32 -0
  2023. package/core/domain/src/tools/index.d.ts +1 -0
  2024. package/core/domain/src/tools/index.js +3 -0
  2025. package/core/domain/src/tools/tool-command.d.ts +18 -0
  2026. package/core/domain/src/tools/tool-command.js +61 -0
  2027. package/core/domain/src/versions/component-id.d.ts +17 -0
  2028. package/core/domain/src/versions/component-id.js +40 -0
  2029. package/core/domain/src/versions/digest.d.ts +28 -0
  2030. package/core/domain/src/versions/digest.js +51 -0
  2031. package/core/domain/src/versions/environment-versions.d.ts +41 -0
  2032. package/core/domain/src/versions/environment-versions.js +38 -0
  2033. package/core/domain/src/versions/fork-snapshot.d.ts +16 -0
  2034. package/core/domain/src/versions/fork-snapshot.js +3 -0
  2035. package/core/domain/src/versions/host-route.d.ts +89 -0
  2036. package/core/domain/src/versions/host-route.js +74 -0
  2037. package/core/domain/src/versions/index.d.ts +21 -0
  2038. package/core/domain/src/versions/index.js +23 -0
  2039. package/core/domain/src/versions/lab-lock.d.ts +48 -0
  2040. package/core/domain/src/versions/lab-lock.js +98 -0
  2041. package/core/domain/src/versions/lock-promotion.d.ts +48 -0
  2042. package/core/domain/src/versions/lock-promotion.js +63 -0
  2043. package/core/domain/src/versions/lock-proposal-refusal.d.ts +21 -0
  2044. package/core/domain/src/versions/lock-proposal-refusal.js +41 -0
  2045. package/core/domain/src/versions/locked-component.d.ts +80 -0
  2046. package/core/domain/src/versions/locked-component.js +146 -0
  2047. package/core/domain/src/versions/recovery-policy.d.ts +33 -0
  2048. package/core/domain/src/versions/recovery-policy.js +26 -0
  2049. package/core/domain/src/versions/release-artifact.d.ts +46 -0
  2050. package/core/domain/src/versions/release-artifact.js +70 -0
  2051. package/core/domain/src/versions/release-version.d.ts +17 -0
  2052. package/core/domain/src/versions/release-version.js +52 -0
  2053. package/core/domain/src/versions/resolved-runtime.d.ts +103 -0
  2054. package/core/domain/src/versions/resolved-runtime.js +107 -0
  2055. package/core/domain/src/versions/snapshot-freshness.d.ts +26 -0
  2056. package/core/domain/src/versions/snapshot-freshness.js +25 -0
  2057. package/core/domain/src/versions/version-drift.d.ts +29 -0
  2058. package/core/domain/src/versions/version-drift.js +37 -0
  2059. package/core/domain/src/versions/version-error.d.ts +17 -0
  2060. package/core/domain/src/versions/version-error.js +10 -0
  2061. package/core/domain/src/versions/version-policy.d.ts +19 -0
  2062. package/core/domain/src/versions/version-policy.js +37 -0
  2063. package/core/domain/src/versions/version-resolution.d.ts +103 -0
  2064. package/core/domain/src/versions/version-resolution.js +111 -0
  2065. package/core/domain/src/versions/version-selector.d.ts +58 -0
  2066. package/core/domain/src/versions/version-selector.js +134 -0
  2067. package/core/domain/src/versions/version-workspace-key.d.ts +18 -0
  2068. package/core/domain/src/versions/version-workspace-key.js +41 -0
  2069. package/core/domain/src/versions/versioned-workspace.d.ts +43 -0
  2070. package/core/domain/src/versions/versioned-workspace.js +63 -0
  2071. package/core/lab/README.md +1012 -0
  2072. package/core/lab/src/activity/types.d.ts +1 -0
  2073. package/core/lab/src/activity/types.js +3 -0
  2074. package/core/lab/src/chain/index.d.ts +2 -0
  2075. package/core/lab/src/chain/index.js +4 -0
  2076. package/core/lab/src/chain/transaction-mode-schema.d.ts +11 -0
  2077. package/core/lab/src/chain/transaction-mode-schema.js +5 -0
  2078. package/core/lab/src/host/index.d.ts +1 -0
  2079. package/core/lab/src/host/index.js +3 -0
  2080. package/core/lab/src/identity/index.d.ts +1 -0
  2081. package/core/lab/src/identity/index.js +3 -0
  2082. package/core/lab/src/index.d.ts +2 -0
  2083. package/core/lab/src/index.js +4 -0
  2084. package/core/lab/src/run/index.d.ts +1 -0
  2085. package/core/lab/src/run/index.js +3 -0
  2086. package/core/lab/src/steps.d.ts +1 -0
  2087. package/core/lab/src/steps.js +3 -0
  2088. package/core/lab/src/topology.d.ts +128 -0
  2089. package/core/lab/src/topology.js +58 -0
  2090. package/core/ports/README.md +458 -0
  2091. package/core/ports/src/driven/browser/app-surface.d.ts +41 -0
  2092. package/core/ports/src/driven/browser/app-surface.js +3 -0
  2093. package/core/ports/src/driven/browser/browser.d.ts +79 -0
  2094. package/core/ports/src/driven/browser/browser.js +3 -0
  2095. package/core/ports/src/driven/browser/conditions.d.ts +24 -0
  2096. package/core/ports/src/driven/browser/conditions.js +3 -0
  2097. package/core/ports/src/driven/browser/index.d.ts +6 -0
  2098. package/core/ports/src/driven/browser/index.js +3 -0
  2099. package/core/ports/src/driven/browser/locator.d.ts +55 -0
  2100. package/core/ports/src/driven/browser/locator.js +3 -0
  2101. package/core/ports/src/driven/browser/page.d.ts +71 -0
  2102. package/core/ports/src/driven/browser/page.js +3 -0
  2103. package/core/ports/src/driven/browser/route.d.ts +45 -0
  2104. package/core/ports/src/driven/browser/route.js +3 -0
  2105. package/core/ports/src/driven/chain/bulletin-reader.d.ts +9 -0
  2106. package/core/ports/src/driven/chain/bulletin-reader.js +3 -0
  2107. package/core/ports/src/driven/chain/chain-access.d.ts +37 -0
  2108. package/core/ports/src/driven/chain/chain-access.js +3 -0
  2109. package/core/ports/src/driven/chain/chain-history.d.ts +170 -0
  2110. package/core/ports/src/driven/chain/chain-history.js +3 -0
  2111. package/core/ports/src/driven/chain/chain-readers.d.ts +8 -0
  2112. package/core/ports/src/driven/chain/chain-readers.js +3 -0
  2113. package/core/ports/src/driven/chain/index.d.ts +11 -0
  2114. package/core/ports/src/driven/chain/index.js +3 -0
  2115. package/core/ports/src/driven/chain/key-derivation.d.ts +22 -0
  2116. package/core/ports/src/driven/chain/key-derivation.js +3 -0
  2117. package/core/ports/src/driven/chain/receipt-validator.d.ts +17 -0
  2118. package/core/ports/src/driven/chain/receipt-validator.js +3 -0
  2119. package/core/ports/src/driven/chain/receipt.d.ts +33 -0
  2120. package/core/ports/src/driven/chain/receipt.js +3 -0
  2121. package/core/ports/src/driven/chain/runtime-fingerprint.d.ts +12 -0
  2122. package/core/ports/src/driven/chain/runtime-fingerprint.js +3 -0
  2123. package/core/ports/src/driven/chain/signer.d.ts +16 -0
  2124. package/core/ports/src/driven/chain/signer.js +3 -0
  2125. package/core/ports/src/driven/chain/statement-store-reader.d.ts +53 -0
  2126. package/core/ports/src/driven/chain/statement-store-reader.js +3 -0
  2127. package/core/ports/src/driven/chain/transaction-submitter.d.ts +104 -0
  2128. package/core/ports/src/driven/chain/transaction-submitter.js +3 -0
  2129. package/core/ports/src/driven/deploy/content-archiver.d.ts +21 -0
  2130. package/core/ports/src/driven/deploy/content-archiver.js +3 -0
  2131. package/core/ports/src/driven/deploy/deployer.d.ts +101 -0
  2132. package/core/ports/src/driven/deploy/deployer.js +3 -0
  2133. package/core/ports/src/driven/deploy/destination-directory.d.ts +15 -0
  2134. package/core/ports/src/driven/deploy/destination-directory.js +3 -0
  2135. package/core/ports/src/driven/deploy/destination-server.d.ts +25 -0
  2136. package/core/ports/src/driven/deploy/destination-server.js +3 -0
  2137. package/core/ports/src/driven/deploy/index.d.ts +5 -0
  2138. package/core/ports/src/driven/deploy/index.js +3 -0
  2139. package/core/ports/src/driven/deploy/name-resolver.d.ts +11 -0
  2140. package/core/ports/src/driven/deploy/name-resolver.js +3 -0
  2141. package/core/ports/src/driven/environment/environment-adapter-factory.d.ts +21 -0
  2142. package/core/ports/src/driven/environment/environment-adapter-factory.js +3 -0
  2143. package/core/ports/src/driven/environment/environment-time.d.ts +110 -0
  2144. package/core/ports/src/driven/environment/environment-time.js +3 -0
  2145. package/core/ports/src/driven/environment/environment-tooling.d.ts +51 -0
  2146. package/core/ports/src/driven/environment/environment-tooling.js +3 -0
  2147. package/core/ports/src/driven/environment/index.d.ts +6 -0
  2148. package/core/ports/src/driven/environment/index.js +3 -0
  2149. package/core/ports/src/driven/environment/running-environment.d.ts +267 -0
  2150. package/core/ports/src/driven/environment/running-environment.js +3 -0
  2151. package/core/ports/src/driven/environment/start-phases.d.ts +34 -0
  2152. package/core/ports/src/driven/environment/start-phases.js +3 -0
  2153. package/core/ports/src/driven/environment/topology-adapter-factory.d.ts +52 -0
  2154. package/core/ports/src/driven/environment/topology-adapter-factory.js +3 -0
  2155. package/core/ports/src/driven/factory/adapter-flag.d.ts +21 -0
  2156. package/core/ports/src/driven/factory/adapter-flag.js +3 -0
  2157. package/core/ports/src/driven/factory/index.d.ts +2 -0
  2158. package/core/ports/src/driven/factory/index.js +3 -0
  2159. package/core/ports/src/driven/factory/options-schema.d.ts +21 -0
  2160. package/core/ports/src/driven/factory/options-schema.js +3 -0
  2161. package/core/ports/src/driven/features/custom-step-source.d.ts +33 -0
  2162. package/core/ports/src/driven/features/custom-step-source.js +3 -0
  2163. package/core/ports/src/driven/features/feature-runner.d.ts +193 -0
  2164. package/core/ports/src/driven/features/feature-runner.js +3 -0
  2165. package/core/ports/src/driven/features/feature-source.d.ts +22 -0
  2166. package/core/ports/src/driven/features/feature-source.js +3 -0
  2167. package/core/ports/src/driven/features/index.d.ts +3 -0
  2168. package/core/ports/src/driven/features/index.js +3 -0
  2169. package/core/ports/src/driven/host/host-adapter-factory.d.ts +111 -0
  2170. package/core/ports/src/driven/host/host-adapter-factory.js +3 -0
  2171. package/core/ports/src/driven/host/host-provider.d.ts +71 -0
  2172. package/core/ports/src/driven/host/host-provider.js +3 -0
  2173. package/core/ports/src/driven/host/host-session.d.ts +289 -0
  2174. package/core/ports/src/driven/host/host-session.js +3 -0
  2175. package/core/ports/src/driven/host/host-tool-source.d.ts +19 -0
  2176. package/core/ports/src/driven/host/host-tool-source.js +3 -0
  2177. package/core/ports/src/driven/host/host-upstream.d.ts +24 -0
  2178. package/core/ports/src/driven/host/host-upstream.js +3 -0
  2179. package/core/ports/src/driven/host/host-verifier.d.ts +95 -0
  2180. package/core/ports/src/driven/host/host-verifier.js +3 -0
  2181. package/core/ports/src/driven/host/index.d.ts +7 -0
  2182. package/core/ports/src/driven/host/index.js +3 -0
  2183. package/core/ports/src/driven/identity/identity-provisioner.d.ts +23 -0
  2184. package/core/ports/src/driven/identity/identity-provisioner.js +3 -0
  2185. package/core/ports/src/driven/identity/index.d.ts +2 -0
  2186. package/core/ports/src/driven/identity/index.js +3 -0
  2187. package/core/ports/src/driven/identity/product-account-derivation.d.ts +23 -0
  2188. package/core/ports/src/driven/identity/product-account-derivation.js +3 -0
  2189. package/core/ports/src/driven/lab/client-bundles.d.ts +13 -0
  2190. package/core/ports/src/driven/lab/client-bundles.js +3 -0
  2191. package/core/ports/src/driven/lab/index.d.ts +7 -0
  2192. package/core/ports/src/driven/lab/index.js +3 -0
  2193. package/core/ports/src/driven/lab/lab-configuration.d.ts +86 -0
  2194. package/core/ports/src/driven/lab/lab-configuration.js +3 -0
  2195. package/core/ports/src/driven/lab/lab-definition-source.d.ts +16 -0
  2196. package/core/ports/src/driven/lab/lab-definition-source.js +3 -0
  2197. package/core/ports/src/driven/lab/lab-environment.d.ts +505 -0
  2198. package/core/ports/src/driven/lab/lab-environment.js +3 -0
  2199. package/core/ports/src/driven/lab/lab-sentences.d.ts +113 -0
  2200. package/core/ports/src/driven/lab/lab-sentences.js +3 -0
  2201. package/core/ports/src/driven/lab/loaded-lab.d.ts +297 -0
  2202. package/core/ports/src/driven/lab/loaded-lab.js +3 -0
  2203. package/core/ports/src/driven/lab/scenario.d.ts +137 -0
  2204. package/core/ports/src/driven/lab/scenario.js +3 -0
  2205. package/core/ports/src/driven/notify/index.d.ts +1 -0
  2206. package/core/ports/src/driven/notify/index.js +3 -0
  2207. package/core/ports/src/driven/notify/notifier.d.ts +32 -0
  2208. package/core/ports/src/driven/notify/notifier.js +3 -0
  2209. package/core/ports/src/driven/recording/console-watch.d.ts +28 -0
  2210. package/core/ports/src/driven/recording/console-watch.js +3 -0
  2211. package/core/ports/src/driven/recording/demo-ports.d.ts +53 -0
  2212. package/core/ports/src/driven/recording/demo-ports.js +3 -0
  2213. package/core/ports/src/driven/recording/frame-capture.d.ts +92 -0
  2214. package/core/ports/src/driven/recording/frame-capture.js +3 -0
  2215. package/core/ports/src/driven/recording/index.d.ts +6 -0
  2216. package/core/ports/src/driven/recording/index.js +3 -0
  2217. package/core/ports/src/driven/recording/journey-docs-store.d.ts +35 -0
  2218. package/core/ports/src/driven/recording/journey-docs-store.js +3 -0
  2219. package/core/ports/src/driven/recording/recording-store.d.ts +39 -0
  2220. package/core/ports/src/driven/recording/recording-store.js +3 -0
  2221. package/core/ports/src/driven/recording/step-check-ports.d.ts +29 -0
  2222. package/core/ports/src/driven/recording/step-check-ports.js +3 -0
  2223. package/core/ports/src/driven/storage/breakpoint-store.d.ts +13 -0
  2224. package/core/ports/src/driven/storage/breakpoint-store.js +3 -0
  2225. package/core/ports/src/driven/storage/environment-option-choices.d.ts +4 -0
  2226. package/core/ports/src/driven/storage/environment-option-choices.js +3 -0
  2227. package/core/ports/src/driven/storage/evidence-journal.d.ts +10 -0
  2228. package/core/ports/src/driven/storage/evidence-journal.js +3 -0
  2229. package/core/ports/src/driven/storage/fixture-archives.d.ts +61 -0
  2230. package/core/ports/src/driven/storage/fixture-archives.js +3 -0
  2231. package/core/ports/src/driven/storage/fixture-source.d.ts +53 -0
  2232. package/core/ports/src/driven/storage/fixture-source.js +3 -0
  2233. package/core/ports/src/driven/storage/fixture-store.d.ts +69 -0
  2234. package/core/ports/src/driven/storage/fixture-store.js +3 -0
  2235. package/core/ports/src/driven/storage/index.d.ts +12 -0
  2236. package/core/ports/src/driven/storage/index.js +3 -0
  2237. package/core/ports/src/driven/storage/lab-settings-store.d.ts +8 -0
  2238. package/core/ports/src/driven/storage/lab-settings-store.js +3 -0
  2239. package/core/ports/src/driven/storage/rpc-choices.d.ts +11 -0
  2240. package/core/ports/src/driven/storage/rpc-choices.js +3 -0
  2241. package/core/ports/src/driven/storage/run-bundle-archives.d.ts +46 -0
  2242. package/core/ports/src/driven/storage/run-bundle-archives.js +3 -0
  2243. package/core/ports/src/driven/storage/run-manifest-store.d.ts +18 -0
  2244. package/core/ports/src/driven/storage/run-manifest-store.js +3 -0
  2245. package/core/ports/src/driven/storage/running-lab.d.ts +42 -0
  2246. package/core/ports/src/driven/storage/running-lab.js +3 -0
  2247. package/core/ports/src/driven/storage/suite-evidence-bundles.d.ts +55 -0
  2248. package/core/ports/src/driven/storage/suite-evidence-bundles.js +3 -0
  2249. package/core/ports/src/driven/system/app-proxy.d.ts +123 -0
  2250. package/core/ports/src/driven/system/app-proxy.js +3 -0
  2251. package/core/ports/src/driven/system/chain-gate.d.ts +41 -0
  2252. package/core/ports/src/driven/system/chain-gate.js +3 -0
  2253. package/core/ports/src/driven/system/change-source.d.ts +69 -0
  2254. package/core/ports/src/driven/system/change-source.js +3 -0
  2255. package/core/ports/src/driven/system/clock.d.ts +13 -0
  2256. package/core/ports/src/driven/system/clock.js +3 -0
  2257. package/core/ports/src/driven/system/command-runner.d.ts +33 -0
  2258. package/core/ports/src/driven/system/command-runner.js +3 -0
  2259. package/core/ports/src/driven/system/conditioned-links.d.ts +20 -0
  2260. package/core/ports/src/driven/system/conditioned-links.js +3 -0
  2261. package/core/ports/src/driven/system/connection-monitor.d.ts +40 -0
  2262. package/core/ports/src/driven/system/connection-monitor.js +3 -0
  2263. package/core/ports/src/driven/system/document-headers.d.ts +9 -0
  2264. package/core/ports/src/driven/system/document-headers.js +3 -0
  2265. package/core/ports/src/driven/system/environment-variables.d.ts +9 -0
  2266. package/core/ports/src/driven/system/environment-variables.js +3 -0
  2267. package/core/ports/src/driven/system/file-system.d.ts +41 -0
  2268. package/core/ports/src/driven/system/file-system.js +3 -0
  2269. package/core/ports/src/driven/system/http-probe.d.ts +20 -0
  2270. package/core/ports/src/driven/system/http-probe.js +3 -0
  2271. package/core/ports/src/driven/system/id-generator.d.ts +5 -0
  2272. package/core/ports/src/driven/system/id-generator.js +3 -0
  2273. package/core/ports/src/driven/system/index.d.ts +27 -0
  2274. package/core/ports/src/driven/system/index.js +3 -0
  2275. package/core/ports/src/driven/system/json-rpc-client.d.ts +15 -0
  2276. package/core/ports/src/driven/system/json-rpc-client.js +3 -0
  2277. package/core/ports/src/driven/system/lock-manager.d.ts +55 -0
  2278. package/core/ports/src/driven/system/lock-manager.js +3 -0
  2279. package/core/ports/src/driven/system/logger.d.ts +8 -0
  2280. package/core/ports/src/driven/system/logger.js +3 -0
  2281. package/core/ports/src/driven/system/machine-metrics.d.ts +38 -0
  2282. package/core/ports/src/driven/system/machine-metrics.js +3 -0
  2283. package/core/ports/src/driven/system/os-ports.d.ts +12 -0
  2284. package/core/ports/src/driven/system/os-ports.js +3 -0
  2285. package/core/ports/src/driven/system/port-allocator.d.ts +46 -0
  2286. package/core/ports/src/driven/system/port-allocator.js +3 -0
  2287. package/core/ports/src/driven/system/process-runner.d.ts +133 -0
  2288. package/core/ports/src/driven/system/process-runner.js +3 -0
  2289. package/core/ports/src/driven/system/process-sandbox.d.ts +61 -0
  2290. package/core/ports/src/driven/system/process-sandbox.js +3 -0
  2291. package/core/ports/src/driven/system/redactor.d.ts +12 -0
  2292. package/core/ports/src/driven/system/redactor.js +3 -0
  2293. package/core/ports/src/driven/system/source-watcher.d.ts +29 -0
  2294. package/core/ports/src/driven/system/source-watcher.js +3 -0
  2295. package/core/ports/src/driven/system/stdio-worker.d.ts +21 -0
  2296. package/core/ports/src/driven/system/stdio-worker.js +3 -0
  2297. package/core/ports/src/driven/system/sync-command-runner.d.ts +20 -0
  2298. package/core/ports/src/driven/system/sync-command-runner.js +3 -0
  2299. package/core/ports/src/driven/system/system-ports.d.ts +90 -0
  2300. package/core/ports/src/driven/system/system-ports.js +3 -0
  2301. package/core/ports/src/driven/system/terminal-command-runner.d.ts +22 -0
  2302. package/core/ports/src/driven/system/terminal-command-runner.js +3 -0
  2303. package/core/ports/src/driven/system/tree-cloner.d.ts +19 -0
  2304. package/core/ports/src/driven/system/tree-cloner.js +3 -0
  2305. package/core/ports/src/driven/versions/artifact-store.d.ts +47 -0
  2306. package/core/ports/src/driven/versions/artifact-store.js +3 -0
  2307. package/core/ports/src/driven/versions/http-client.d.ts +22 -0
  2308. package/core/ports/src/driven/versions/http-client.js +3 -0
  2309. package/core/ports/src/driven/versions/index.d.ts +6 -0
  2310. package/core/ports/src/driven/versions/index.js +3 -0
  2311. package/core/ports/src/driven/versions/lab-versions-declaration.d.ts +55 -0
  2312. package/core/ports/src/driven/versions/lab-versions-declaration.js +3 -0
  2313. package/core/ports/src/driven/versions/lock-store.d.ts +29 -0
  2314. package/core/ports/src/driven/versions/lock-store.js +3 -0
  2315. package/core/ports/src/driven/versions/version-policy-source.d.ts +12 -0
  2316. package/core/ports/src/driven/versions/version-policy-source.js +3 -0
  2317. package/core/ports/src/driven/versions/version-source.d.ts +58 -0
  2318. package/core/ports/src/driven/versions/version-source.js +3 -0
  2319. package/core/ports/src/driving/activity.d.ts +244 -0
  2320. package/core/ports/src/driving/activity.js +3 -0
  2321. package/core/ports/src/driving/app-builds.d.ts +91 -0
  2322. package/core/ports/src/driving/app-builds.js +3 -0
  2323. package/core/ports/src/driving/bisect.d.ts +42 -0
  2324. package/core/ports/src/driving/bisect.js +3 -0
  2325. package/core/ports/src/driving/breakpoints.d.ts +148 -0
  2326. package/core/ports/src/driving/breakpoints.js +3 -0
  2327. package/core/ports/src/driving/builder.d.ts +92 -0
  2328. package/core/ports/src/driving/builder.js +3 -0
  2329. package/core/ports/src/driving/chain-console.d.ts +52 -0
  2330. package/core/ports/src/driving/chain-console.js +3 -0
  2331. package/core/ports/src/driving/demo.d.ts +47 -0
  2332. package/core/ports/src/driving/demo.js +3 -0
  2333. package/core/ports/src/driving/environment-rpc.d.ts +16 -0
  2334. package/core/ports/src/driving/environment-rpc.js +3 -0
  2335. package/core/ports/src/driving/environment-tooling.d.ts +40 -0
  2336. package/core/ports/src/driving/environment-tooling.js +3 -0
  2337. package/core/ports/src/driving/exploration.d.ts +58 -0
  2338. package/core/ports/src/driving/exploration.js +3 -0
  2339. package/core/ports/src/driving/feature-session.d.ts +269 -0
  2340. package/core/ports/src/driving/feature-session.js +3 -0
  2341. package/core/ports/src/driving/features.d.ts +260 -0
  2342. package/core/ports/src/driving/features.js +3 -0
  2343. package/core/ports/src/driving/fixture-maintenance.d.ts +95 -0
  2344. package/core/ports/src/driving/fixture-maintenance.js +3 -0
  2345. package/core/ports/src/driving/fixture-sharing.d.ts +159 -0
  2346. package/core/ports/src/driving/fixture-sharing.js +3 -0
  2347. package/core/ports/src/driving/fixtures.d.ts +149 -0
  2348. package/core/ports/src/driving/fixtures.js +3 -0
  2349. package/core/ports/src/driving/hosts.d.ts +49 -0
  2350. package/core/ports/src/driving/hosts.js +3 -0
  2351. package/core/ports/src/driving/index.d.ts +36 -0
  2352. package/core/ports/src/driving/index.js +3 -0
  2353. package/core/ports/src/driving/journeys.d.ts +45 -0
  2354. package/core/ports/src/driving/journeys.js +3 -0
  2355. package/core/ports/src/driving/lab-coverage.d.ts +47 -0
  2356. package/core/ports/src/driving/lab-coverage.js +3 -0
  2357. package/core/ports/src/driving/lab-lint.d.ts +47 -0
  2358. package/core/ports/src/driving/lab-lint.js +3 -0
  2359. package/core/ports/src/driving/lab-mutations.d.ts +16 -0
  2360. package/core/ports/src/driving/lab-mutations.js +3 -0
  2361. package/core/ports/src/driving/lab-registry.d.ts +236 -0
  2362. package/core/ports/src/driving/lab-registry.js +3 -0
  2363. package/core/ports/src/driving/lab-runtime.d.ts +656 -0
  2364. package/core/ports/src/driving/lab-runtime.js +3 -0
  2365. package/core/ports/src/driving/lab-settings.d.ts +29 -0
  2366. package/core/ports/src/driving/lab-settings.js +3 -0
  2367. package/core/ports/src/driving/lab-snapshot.d.ts +361 -0
  2368. package/core/ports/src/driving/lab-snapshot.js +3 -0
  2369. package/core/ports/src/driving/load.d.ts +22 -0
  2370. package/core/ports/src/driving/load.js +3 -0
  2371. package/core/ports/src/driving/navigation-view.d.ts +23 -0
  2372. package/core/ports/src/driving/navigation-view.js +3 -0
  2373. package/core/ports/src/driving/recordings.d.ts +103 -0
  2374. package/core/ports/src/driving/recordings.js +3 -0
  2375. package/core/ports/src/driving/reports.d.ts +411 -0
  2376. package/core/ports/src/driving/reports.js +3 -0
  2377. package/core/ports/src/driving/resolved-config.d.ts +52 -0
  2378. package/core/ports/src/driving/resolved-config.js +3 -0
  2379. package/core/ports/src/driving/run-bundles.d.ts +135 -0
  2380. package/core/ports/src/driving/run-bundles.js +3 -0
  2381. package/core/ports/src/driving/suites.d.ts +188 -0
  2382. package/core/ports/src/driving/suites.js +3 -0
  2383. package/core/ports/src/driving/tools.d.ts +279 -0
  2384. package/core/ports/src/driving/tools.js +3 -0
  2385. package/core/ports/src/driving/ui-extensions.d.ts +77 -0
  2386. package/core/ports/src/driving/ui-extensions.js +3 -0
  2387. package/core/ports/src/driving/versions.d.ts +280 -0
  2388. package/core/ports/src/driving/versions.js +3 -0
  2389. package/core/ports/src/driving/what-if.d.ts +64 -0
  2390. package/core/ports/src/driving/what-if.js +3 -0
  2391. package/core/ports/src/driving/workers.d.ts +52 -0
  2392. package/core/ports/src/driving/workers.js +3 -0
  2393. package/core/ports/src/index.d.ts +15 -0
  2394. package/core/ports/src/index.js +17 -0
  2395. package/entrypoints/cli/README.md +895 -0
  2396. package/entrypoints/cli/ai-kit/agents/product-lab-e2e-debugger.yaml +32 -0
  2397. package/entrypoints/cli/ai-kit/agents/product-lab-scenario-author.yaml +44 -0
  2398. package/entrypoints/cli/ai-kit/agents-md.md +52 -0
  2399. package/entrypoints/cli/ai-kit/mcp.json +11 -0
  2400. package/entrypoints/cli/ai-kit/skills/product-lab-app/SKILL.md +101 -0
  2401. package/entrypoints/cli/ai-kit/skills/product-lab-debug/SKILL.md +54 -0
  2402. package/entrypoints/cli/ai-kit/skills/product-lab-integration/SKILL.md +116 -0
  2403. package/entrypoints/cli/ai-kit/skills/product-lab-integration/references/notes-example.md +192 -0
  2404. package/entrypoints/cli/ai-kit/skills/product-lab-integration/references/notes-lab.md +5700 -0
  2405. package/entrypoints/cli/ai-kit/skills/product-lab-scenario/SKILL.md +122 -0
  2406. package/entrypoints/cli/ai-kit/skills/product-lab-setup/SKILL.md +113 -0
  2407. package/entrypoints/cli/ai-kit/skills/product-lab-setup/references/minimal-lab.md +480 -0
  2408. package/entrypoints/cli/ai-kit/skills/product-lab-test-ids/SKILL.md +79 -0
  2409. package/entrypoints/cli/bin/esbuild-own-session.sh +8 -0
  2410. package/entrypoints/cli/bin/esbuild-session.mjs +70 -0
  2411. package/entrypoints/cli/bin/product-lab.mjs +42 -0
  2412. package/entrypoints/cli/src/agents.d.ts +65 -0
  2413. package/entrypoints/cli/src/agents.js +96 -0
  2414. package/entrypoints/cli/src/ai/command.d.ts +3 -0
  2415. package/entrypoints/cli/src/ai/command.js +79 -0
  2416. package/entrypoints/cli/src/ai/doctor.d.ts +17 -0
  2417. package/entrypoints/cli/src/ai/doctor.js +117 -0
  2418. package/entrypoints/cli/src/ai/examples.d.ts +18 -0
  2419. package/entrypoints/cli/src/ai/examples.js +69 -0
  2420. package/entrypoints/cli/src/ai/init.d.ts +41 -0
  2421. package/entrypoints/cli/src/ai/init.js +229 -0
  2422. package/entrypoints/cli/src/ai/kit-reference.d.ts +46 -0
  2423. package/entrypoints/cli/src/ai/kit-reference.js +300 -0
  2424. package/entrypoints/cli/src/ai/kit.d.ts +37 -0
  2425. package/entrypoints/cli/src/ai/kit.js +73 -0
  2426. package/entrypoints/cli/src/ai/policy.d.ts +28 -0
  2427. package/entrypoints/cli/src/ai/policy.js +56 -0
  2428. package/entrypoints/cli/src/ai/render.d.ts +68 -0
  2429. package/entrypoints/cli/src/ai/render.js +200 -0
  2430. package/entrypoints/cli/src/ai/status.d.ts +21 -0
  2431. package/entrypoints/cli/src/ai/status.js +41 -0
  2432. package/entrypoints/cli/src/ai/sync.d.ts +39 -0
  2433. package/entrypoints/cli/src/ai/sync.js +256 -0
  2434. package/entrypoints/cli/src/bisect-command.d.ts +4 -0
  2435. package/entrypoints/cli/src/bisect-command.js +109 -0
  2436. package/entrypoints/cli/src/breakpoints-command.d.ts +4 -0
  2437. package/entrypoints/cli/src/breakpoints-command.js +67 -0
  2438. package/entrypoints/cli/src/bundle-command.d.ts +5 -0
  2439. package/entrypoints/cli/src/bundle-command.js +74 -0
  2440. package/entrypoints/cli/src/checkout.d.ts +6 -0
  2441. package/entrypoints/cli/src/checkout.js +12 -0
  2442. package/entrypoints/cli/src/cli-app.d.ts +57 -0
  2443. package/entrypoints/cli/src/cli-app.js +506 -0
  2444. package/entrypoints/cli/src/cli-host-release.d.ts +22 -0
  2445. package/entrypoints/cli/src/cli-host-release.js +23 -0
  2446. package/entrypoints/cli/src/commands/chain-day-ended.d.ts +12 -0
  2447. package/entrypoints/cli/src/commands/chain-day-ended.js +33 -0
  2448. package/entrypoints/cli/src/commands/check.d.ts +13 -0
  2449. package/entrypoints/cli/src/commands/check.js +36 -0
  2450. package/entrypoints/cli/src/commands/dev.d.ts +149 -0
  2451. package/entrypoints/cli/src/commands/dev.js +327 -0
  2452. package/entrypoints/cli/src/config-command.d.ts +7 -0
  2453. package/entrypoints/cli/src/config-command.js +69 -0
  2454. package/entrypoints/cli/src/coverage-command.d.ts +4 -0
  2455. package/entrypoints/cli/src/coverage-command.js +75 -0
  2456. package/entrypoints/cli/src/demo-command.d.ts +4 -0
  2457. package/entrypoints/cli/src/demo-command.js +102 -0
  2458. package/entrypoints/cli/src/env-command.d.ts +90 -0
  2459. package/entrypoints/cli/src/env-command.js +203 -0
  2460. package/entrypoints/cli/src/env-files.d.ts +6 -0
  2461. package/entrypoints/cli/src/env-files.js +46 -0
  2462. package/entrypoints/cli/src/environment.d.ts +5 -0
  2463. package/entrypoints/cli/src/environment.js +3 -0
  2464. package/entrypoints/cli/src/every-control.d.ts +74 -0
  2465. package/entrypoints/cli/src/every-control.js +129 -0
  2466. package/entrypoints/cli/src/explore-command.d.ts +4 -0
  2467. package/entrypoints/cli/src/explore-command.js +133 -0
  2468. package/entrypoints/cli/src/fixture-command.d.ts +8 -0
  2469. package/entrypoints/cli/src/fixture-command.js +365 -0
  2470. package/entrypoints/cli/src/fixture-refresh-command.d.ts +11 -0
  2471. package/entrypoints/cli/src/fixture-refresh-command.js +245 -0
  2472. package/entrypoints/cli/src/fixture-setup-marker.d.ts +22 -0
  2473. package/entrypoints/cli/src/fixture-setup-marker.js +52 -0
  2474. package/entrypoints/cli/src/fixture-sharing-command.d.ts +16 -0
  2475. package/entrypoints/cli/src/fixture-sharing-command.js +192 -0
  2476. package/entrypoints/cli/src/fixture-source-command.d.ts +3 -0
  2477. package/entrypoints/cli/src/fixture-source-command.js +161 -0
  2478. package/entrypoints/cli/src/host-command.d.ts +5 -0
  2479. package/entrypoints/cli/src/host-command.js +213 -0
  2480. package/entrypoints/cli/src/init-command.d.ts +49 -0
  2481. package/entrypoints/cli/src/init-command.js +349 -0
  2482. package/entrypoints/cli/src/init-lock.d.ts +48 -0
  2483. package/entrypoints/cli/src/init-lock.js +50 -0
  2484. package/entrypoints/cli/src/journeys-after-test.d.ts +2 -0
  2485. package/entrypoints/cli/src/journeys-after-test.js +13 -0
  2486. package/entrypoints/cli/src/journeys-command.d.ts +5 -0
  2487. package/entrypoints/cli/src/journeys-command.js +61 -0
  2488. package/entrypoints/cli/src/lab-flags.d.ts +54 -0
  2489. package/entrypoints/cli/src/lab-flags.js +53 -0
  2490. package/entrypoints/cli/src/lab-window-closed.d.ts +4 -0
  2491. package/entrypoints/cli/src/lab-window-closed.js +10 -0
  2492. package/entrypoints/cli/src/lint-command.d.ts +4 -0
  2493. package/entrypoints/cli/src/lint-command.js +82 -0
  2494. package/entrypoints/cli/src/load-command.d.ts +5 -0
  2495. package/entrypoints/cli/src/load-command.js +111 -0
  2496. package/entrypoints/cli/src/load-env.d.ts +1 -0
  2497. package/entrypoints/cli/src/load-env.js +4 -0
  2498. package/entrypoints/cli/src/machine-fit.d.ts +60 -0
  2499. package/entrypoints/cli/src/machine-fit.js +63 -0
  2500. package/entrypoints/cli/src/main.d.ts +14 -0
  2501. package/entrypoints/cli/src/main.js +31 -0
  2502. package/entrypoints/cli/src/mcp-command.d.ts +6 -0
  2503. package/entrypoints/cli/src/mcp-command.js +28 -0
  2504. package/entrypoints/cli/src/mutate-command.d.ts +34 -0
  2505. package/entrypoints/cli/src/mutate-command.js +84 -0
  2506. package/entrypoints/cli/src/own-running-record.d.ts +1 -0
  2507. package/entrypoints/cli/src/own-running-record.js +10 -0
  2508. package/entrypoints/cli/src/parse-args-errors.d.ts +2 -0
  2509. package/entrypoints/cli/src/parse-args-errors.js +7 -0
  2510. package/entrypoints/cli/src/plain-output.d.ts +98 -0
  2511. package/entrypoints/cli/src/plain-output.js +179 -0
  2512. package/entrypoints/cli/src/recordings-command.d.ts +15 -0
  2513. package/entrypoints/cli/src/recordings-command.js +232 -0
  2514. package/entrypoints/cli/src/release/notices.d.ts +87 -0
  2515. package/entrypoints/cli/src/release/notices.js +182 -0
  2516. package/entrypoints/cli/src/release/upgrade-command.d.ts +35 -0
  2517. package/entrypoints/cli/src/release/upgrade-command.js +240 -0
  2518. package/entrypoints/cli/src/report-command.d.ts +3 -0
  2519. package/entrypoints/cli/src/report-command.js +207 -0
  2520. package/entrypoints/cli/src/reports/compatibility-html.d.ts +2 -0
  2521. package/entrypoints/cli/src/reports/compatibility-html.js +76 -0
  2522. package/entrypoints/cli/src/reports/evidence-report.d.ts +46 -0
  2523. package/entrypoints/cli/src/reports/evidence-report.js +31 -0
  2524. package/entrypoints/cli/src/reports/host-bypass.d.ts +3 -0
  2525. package/entrypoints/cli/src/reports/host-bypass.js +17 -0
  2526. package/entrypoints/cli/src/reports/html.d.ts +6 -0
  2527. package/entrypoints/cli/src/reports/html.js +178 -0
  2528. package/entrypoints/cli/src/reports/junit.d.ts +2 -0
  2529. package/entrypoints/cli/src/reports/junit.js +93 -0
  2530. package/entrypoints/cli/src/reports/markdown.d.ts +2 -0
  2531. package/entrypoints/cli/src/reports/markdown.js +62 -0
  2532. package/entrypoints/cli/src/reports/metrics-text.d.ts +19 -0
  2533. package/entrypoints/cli/src/reports/metrics-text.js +72 -0
  2534. package/entrypoints/cli/src/reports/pr-comment.d.ts +20 -0
  2535. package/entrypoints/cli/src/reports/pr-comment.js +61 -0
  2536. package/entrypoints/cli/src/reports/write-reports.d.ts +8 -0
  2537. package/entrypoints/cli/src/reports/write-reports.js +30 -0
  2538. package/entrypoints/cli/src/reproduce-command.d.ts +4 -0
  2539. package/entrypoints/cli/src/reproduce-command.js +69 -0
  2540. package/entrypoints/cli/src/rerun-failures.d.ts +8 -0
  2541. package/entrypoints/cli/src/rerun-failures.js +59 -0
  2542. package/entrypoints/cli/src/rpc-flags.d.ts +3 -0
  2543. package/entrypoints/cli/src/rpc-flags.js +23 -0
  2544. package/entrypoints/cli/src/setup-commands.d.ts +36 -0
  2545. package/entrypoints/cli/src/setup-commands.js +344 -0
  2546. package/entrypoints/cli/src/shared-controls.d.ts +6 -0
  2547. package/entrypoints/cli/src/shared-controls.js +49 -0
  2548. package/entrypoints/cli/src/start-progress.d.ts +96 -0
  2549. package/entrypoints/cli/src/start-progress.js +256 -0
  2550. package/entrypoints/cli/src/startup-notices.d.ts +9 -0
  2551. package/entrypoints/cli/src/startup-notices.js +25 -0
  2552. package/entrypoints/cli/src/stop-signals.d.ts +27 -0
  2553. package/entrypoints/cli/src/stop-signals.js +60 -0
  2554. package/entrypoints/cli/src/suite-run-command.d.ts +17 -0
  2555. package/entrypoints/cli/src/suite-run-command.js +48 -0
  2556. package/entrypoints/cli/src/test-command.d.ts +15 -0
  2557. package/entrypoints/cli/src/test-command.js +597 -0
  2558. package/entrypoints/cli/src/test-in-window.d.ts +11 -0
  2559. package/entrypoints/cli/src/test-in-window.js +27 -0
  2560. package/entrypoints/cli/src/test-output.d.ts +9 -0
  2561. package/entrypoints/cli/src/test-output.js +17 -0
  2562. package/entrypoints/cli/src/tool-run.d.ts +3 -0
  2563. package/entrypoints/cli/src/tool-run.js +29 -0
  2564. package/entrypoints/cli/src/tui/agents-menu.d.ts +18 -0
  2565. package/entrypoints/cli/src/tui/agents-menu.js +108 -0
  2566. package/entrypoints/cli/src/tui/app.d.ts +46 -0
  2567. package/entrypoints/cli/src/tui/app.js +483 -0
  2568. package/entrypoints/cli/src/tui/frame.d.ts +23 -0
  2569. package/entrypoints/cli/src/tui/frame.js +24 -0
  2570. package/entrypoints/cli/src/tui/model.d.ts +188 -0
  2571. package/entrypoints/cli/src/tui/model.js +487 -0
  2572. package/entrypoints/cli/src/tui/mouse.d.ts +50 -0
  2573. package/entrypoints/cli/src/tui/mouse.js +91 -0
  2574. package/entrypoints/cli/src/tui/scroll.d.ts +28 -0
  2575. package/entrypoints/cli/src/tui/scroll.js +29 -0
  2576. package/entrypoints/cli/src/tui/start.d.ts +54 -0
  2577. package/entrypoints/cli/src/tui/start.js +168 -0
  2578. package/entrypoints/cli/src/tui/starting.d.ts +52 -0
  2579. package/entrypoints/cli/src/tui/starting.js +67 -0
  2580. package/entrypoints/cli/src/versions-command.d.ts +22 -0
  2581. package/entrypoints/cli/src/versions-command.js +230 -0
  2582. package/entrypoints/cli/src/what-if-command.d.ts +7 -0
  2583. package/entrypoints/cli/src/what-if-command.js +103 -0
  2584. package/entrypoints/cucumber/README.md +53 -0
  2585. package/entrypoints/cucumber/src/ci/change-scope.d.ts +4 -0
  2586. package/entrypoints/cucumber/src/ci/change-scope.js +8 -0
  2587. package/entrypoints/cucumber/src/ci/coverage.d.ts +4 -0
  2588. package/entrypoints/cucumber/src/ci/coverage.js +44 -0
  2589. package/entrypoints/cucumber/src/ci/fast-plan.d.ts +29 -0
  2590. package/entrypoints/cucumber/src/ci/fast-plan.js +79 -0
  2591. package/entrypoints/cucumber/src/ci/owned-command.d.ts +11 -0
  2592. package/entrypoints/cucumber/src/ci/owned-command.js +85 -0
  2593. package/entrypoints/cucumber/src/cucumber/hooks.d.ts +50 -0
  2594. package/entrypoints/cucumber/src/cucumber/hooks.js +132 -0
  2595. package/entrypoints/cucumber/src/cucumber/navigation.d.ts +26 -0
  2596. package/entrypoints/cucumber/src/cucumber/navigation.js +44 -0
  2597. package/entrypoints/cucumber/src/cucumber/rows.d.ts +5 -0
  2598. package/entrypoints/cucumber/src/cucumber/rows.js +26 -0
  2599. package/entrypoints/cucumber/src/cucumber/world.d.ts +11 -0
  2600. package/entrypoints/cucumber/src/cucumber/world.js +41 -0
  2601. package/entrypoints/cucumber/src/index.d.ts +9 -0
  2602. package/entrypoints/cucumber/src/index.js +11 -0
  2603. package/entrypoints/cucumber/src/main.d.ts +44 -0
  2604. package/entrypoints/cucumber/src/main.js +55 -0
  2605. package/entrypoints/cucumber/src/negative/control-result.d.ts +31 -0
  2606. package/entrypoints/cucumber/src/negative/control-result.js +56 -0
  2607. package/entrypoints/mcp/README.md +204 -0
  2608. package/entrypoints/mcp/src/args.d.ts +10 -0
  2609. package/entrypoints/mcp/src/args.js +63 -0
  2610. package/entrypoints/mcp/src/chain.d.ts +75 -0
  2611. package/entrypoints/mcp/src/chain.js +185 -0
  2612. package/entrypoints/mcp/src/deferred-runtime.d.ts +26 -0
  2613. package/entrypoints/mcp/src/deferred-runtime.js +72 -0
  2614. package/entrypoints/mcp/src/describe-sections.d.ts +14 -0
  2615. package/entrypoints/mcp/src/describe-sections.js +38 -0
  2616. package/entrypoints/mcp/src/index.d.ts +7 -0
  2617. package/entrypoints/mcp/src/index.js +9 -0
  2618. package/entrypoints/mcp/src/load-gate.d.ts +27 -0
  2619. package/entrypoints/mcp/src/load-gate.js +65 -0
  2620. package/entrypoints/mcp/src/logs.d.ts +41 -0
  2621. package/entrypoints/mcp/src/logs.js +138 -0
  2622. package/entrypoints/mcp/src/main.d.ts +24 -0
  2623. package/entrypoints/mcp/src/main.js +42 -0
  2624. package/entrypoints/mcp/src/output.d.ts +8 -0
  2625. package/entrypoints/mcp/src/output.js +69 -0
  2626. package/entrypoints/mcp/src/resources.d.ts +18 -0
  2627. package/entrypoints/mcp/src/resources.js +139 -0
  2628. package/entrypoints/mcp/src/server.d.ts +37 -0
  2629. package/entrypoints/mcp/src/server.js +68 -0
  2630. package/entrypoints/mcp/src/session-core.d.ts +42 -0
  2631. package/entrypoints/mcp/src/session-core.js +80 -0
  2632. package/entrypoints/mcp/src/session-debug.d.ts +219 -0
  2633. package/entrypoints/mcp/src/session-debug.js +393 -0
  2634. package/entrypoints/mcp/src/session-discover.d.ts +342 -0
  2635. package/entrypoints/mcp/src/session-discover.js +212 -0
  2636. package/entrypoints/mcp/src/session-environment.d.ts +807 -0
  2637. package/entrypoints/mcp/src/session-environment.js +250 -0
  2638. package/entrypoints/mcp/src/session-host.d.ts +8 -0
  2639. package/entrypoints/mcp/src/session-host.js +40 -0
  2640. package/entrypoints/mcp/src/session-run.d.ts +127 -0
  2641. package/entrypoints/mcp/src/session-run.js +417 -0
  2642. package/entrypoints/mcp/src/session-shared.d.ts +181 -0
  2643. package/entrypoints/mcp/src/session-shared.js +89 -0
  2644. package/entrypoints/mcp/src/session.d.ts +9 -0
  2645. package/entrypoints/mcp/src/session.js +38 -0
  2646. package/entrypoints/mcp/src/stdio.d.ts +62 -0
  2647. package/entrypoints/mcp/src/stdio.js +114 -0
  2648. package/entrypoints/mcp/src/tools.d.ts +20 -0
  2649. package/entrypoints/mcp/src/tools.js +382 -0
  2650. package/entrypoints/panel/README.md +1773 -0
  2651. package/entrypoints/panel/src/agent-routes.d.ts +32 -0
  2652. package/entrypoints/panel/src/agent-routes.js +32 -0
  2653. package/entrypoints/panel/src/builder-input.d.ts +7 -0
  2654. package/entrypoints/panel/src/builder-input.js +66 -0
  2655. package/entrypoints/panel/src/bundle-routes.d.ts +16 -0
  2656. package/entrypoints/panel/src/bundle-routes.js +59 -0
  2657. package/entrypoints/panel/src/chain-console-routes.d.ts +9 -0
  2658. package/entrypoints/panel/src/chain-console-routes.js +18 -0
  2659. package/entrypoints/panel/src/client/activity.d.ts +5 -0
  2660. package/entrypoints/panel/src/client/activity.js +173 -0
  2661. package/entrypoints/panel/src/client/address-bar.css +36 -0
  2662. package/entrypoints/panel/src/client/address-bar.d.ts +62 -0
  2663. package/entrypoints/panel/src/client/address-bar.js +311 -0
  2664. package/entrypoints/panel/src/client/after-failure-view.d.ts +8 -0
  2665. package/entrypoints/panel/src/client/after-failure-view.js +24 -0
  2666. package/entrypoints/panel/src/client/agents-tools.d.ts +5 -0
  2667. package/entrypoints/panel/src/client/agents-tools.js +31 -0
  2668. package/entrypoints/panel/src/client/app-builds.d.ts +16 -0
  2669. package/entrypoints/panel/src/client/app-builds.js +38 -0
  2670. package/entrypoints/panel/src/client/app-tiles.d.ts +30 -0
  2671. package/entrypoints/panel/src/client/app-tiles.js +484 -0
  2672. package/entrypoints/panel/src/client/bindings.d.ts +39 -0
  2673. package/entrypoints/panel/src/client/bindings.js +120 -0
  2674. package/entrypoints/panel/src/client/builder-blocks.d.ts +26 -0
  2675. package/entrypoints/panel/src/client/builder-blocks.js +346 -0
  2676. package/entrypoints/panel/src/client/builder-chrome.d.ts +27 -0
  2677. package/entrypoints/panel/src/client/builder-chrome.js +144 -0
  2678. package/entrypoints/panel/src/client/builder-view.d.ts +86 -0
  2679. package/entrypoints/panel/src/client/builder-view.js +334 -0
  2680. package/entrypoints/panel/src/client/builder.d.ts +34 -0
  2681. package/entrypoints/panel/src/client/builder.js +620 -0
  2682. package/entrypoints/panel/src/client/bundle-actions.d.ts +9 -0
  2683. package/entrypoints/panel/src/client/bundle-actions.js +124 -0
  2684. package/entrypoints/panel/src/client/chain-console.css +31 -0
  2685. package/entrypoints/panel/src/client/chain-console.d.ts +13 -0
  2686. package/entrypoints/panel/src/client/chain-console.js +77 -0
  2687. package/entrypoints/panel/src/client/chain-day.d.ts +29 -0
  2688. package/entrypoints/panel/src/client/chain-day.js +43 -0
  2689. package/entrypoints/panel/src/client/checkpoint.d.ts +5 -0
  2690. package/entrypoints/panel/src/client/checkpoint.js +8 -0
  2691. package/entrypoints/panel/src/client/client.d.ts +1 -0
  2692. package/entrypoints/panel/src/client/client.js +634 -0
  2693. package/entrypoints/panel/src/client/components.css +219 -0
  2694. package/entrypoints/panel/src/client/confirm-dialogs.d.ts +11 -0
  2695. package/entrypoints/panel/src/client/confirm-dialogs.js +54 -0
  2696. package/entrypoints/panel/src/client/detached-tiles.d.ts +39 -0
  2697. package/entrypoints/panel/src/client/detached-tiles.js +106 -0
  2698. package/entrypoints/panel/src/client/dock-status.d.ts +17 -0
  2699. package/entrypoints/panel/src/client/dock-status.js +30 -0
  2700. package/entrypoints/panel/src/client/dock.d.ts +21 -0
  2701. package/entrypoints/panel/src/client/dock.js +74 -0
  2702. package/entrypoints/panel/src/client/dom.d.ts +8 -0
  2703. package/entrypoints/panel/src/client/dom.js +28 -0
  2704. package/entrypoints/panel/src/client/environment-lifecycle.d.ts +19 -0
  2705. package/entrypoints/panel/src/client/environment-lifecycle.js +164 -0
  2706. package/entrypoints/panel/src/client/environment-options.d.ts +18 -0
  2707. package/entrypoints/panel/src/client/environment-options.js +33 -0
  2708. package/entrypoints/panel/src/client/environment.d.ts +189 -0
  2709. package/entrypoints/panel/src/client/environment.js +521 -0
  2710. package/entrypoints/panel/src/client/evidence-controls.d.ts +14 -0
  2711. package/entrypoints/panel/src/client/evidence-controls.js +37 -0
  2712. package/entrypoints/panel/src/client/evidence-model.d.ts +65 -0
  2713. package/entrypoints/panel/src/client/evidence-model.js +179 -0
  2714. package/entrypoints/panel/src/client/evidence-view.css +82 -0
  2715. package/entrypoints/panel/src/client/evidence-view.d.ts +9 -0
  2716. package/entrypoints/panel/src/client/evidence-view.js +56 -0
  2717. package/entrypoints/panel/src/client/extensions.d.ts +21 -0
  2718. package/entrypoints/panel/src/client/extensions.js +345 -0
  2719. package/entrypoints/panel/src/client/features.d.ts +88 -0
  2720. package/entrypoints/panel/src/client/features.js +247 -0
  2721. package/entrypoints/panel/src/client/fixtures.d.ts +16 -0
  2722. package/entrypoints/panel/src/client/fixtures.js +155 -0
  2723. package/entrypoints/panel/src/client/fonts/inter.OFL.txt +93 -0
  2724. package/entrypoints/panel/src/client/fonts/inter.woff2 +0 -0
  2725. package/entrypoints/panel/src/client/fonts/jetbrains-mono.OFL.txt +93 -0
  2726. package/entrypoints/panel/src/client/fonts/jetbrains-mono.woff2 +0 -0
  2727. package/entrypoints/panel/src/client/fonts/unbounded.OFL.txt +93 -0
  2728. package/entrypoints/panel/src/client/fonts/unbounded.woff2 +0 -0
  2729. package/entrypoints/panel/src/client/fonts.css +24 -0
  2730. package/entrypoints/panel/src/client/forms.d.ts +3 -0
  2731. package/entrypoints/panel/src/client/forms.js +58 -0
  2732. package/entrypoints/panel/src/client/frame.css +515 -0
  2733. package/entrypoints/panel/src/client/gallery.css +68 -0
  2734. package/entrypoints/panel/src/client/gallery.d.ts +1 -0
  2735. package/entrypoints/panel/src/client/gallery.html +17 -0
  2736. package/entrypoints/panel/src/client/gallery.js +81 -0
  2737. package/entrypoints/panel/src/client/gherkin-view.d.ts +149 -0
  2738. package/entrypoints/panel/src/client/gherkin-view.js +223 -0
  2739. package/entrypoints/panel/src/client/gherkin.css +88 -0
  2740. package/entrypoints/panel/src/client/host-bypass-model.d.ts +68 -0
  2741. package/entrypoints/panel/src/client/host-bypass-model.js +131 -0
  2742. package/entrypoints/panel/src/client/host-bypass.d.ts +13 -0
  2743. package/entrypoints/panel/src/client/host-bypass.js +50 -0
  2744. package/entrypoints/panel/src/client/host-request-words.d.ts +6 -0
  2745. package/entrypoints/panel/src/client/host-request-words.js +32 -0
  2746. package/entrypoints/panel/src/client/identity-words.d.ts +23 -0
  2747. package/entrypoints/panel/src/client/identity-words.js +46 -0
  2748. package/entrypoints/panel/src/client/index.html +326 -0
  2749. package/entrypoints/panel/src/client/integrations.d.ts +16 -0
  2750. package/entrypoints/panel/src/client/integrations.js +32 -0
  2751. package/entrypoints/panel/src/client/island.css +21 -0
  2752. package/entrypoints/panel/src/client/island.d.ts +99 -0
  2753. package/entrypoints/panel/src/client/island.js +199 -0
  2754. package/entrypoints/panel/src/client/keep-switch.d.ts +7 -0
  2755. package/entrypoints/panel/src/client/keep-switch.js +24 -0
  2756. package/entrypoints/panel/src/client/keep-words.d.ts +24 -0
  2757. package/entrypoints/panel/src/client/keep-words.js +22 -0
  2758. package/entrypoints/panel/src/client/lab-actions.d.ts +9 -0
  2759. package/entrypoints/panel/src/client/lab-actions.js +16 -0
  2760. package/entrypoints/panel/src/client/lab-document.d.ts +10 -0
  2761. package/entrypoints/panel/src/client/lab-document.js +37 -0
  2762. package/entrypoints/panel/src/client/lab-menu.css +11 -0
  2763. package/entrypoints/panel/src/client/lab-menu.d.ts +44 -0
  2764. package/entrypoints/panel/src/client/lab-menu.js +105 -0
  2765. package/entrypoints/panel/src/client/landing.d.ts +4 -0
  2766. package/entrypoints/panel/src/client/landing.js +24 -0
  2767. package/entrypoints/panel/src/client/lanes.d.ts +41 -0
  2768. package/entrypoints/panel/src/client/lanes.js +100 -0
  2769. package/entrypoints/panel/src/client/lucide.LICENSE +43 -0
  2770. package/entrypoints/panel/src/client/lucide.d.ts +95 -0
  2771. package/entrypoints/panel/src/client/lucide.js +95 -0
  2772. package/entrypoints/panel/src/client/navigation-activity.d.ts +34 -0
  2773. package/entrypoints/panel/src/client/navigation-activity.js +97 -0
  2774. package/entrypoints/panel/src/client/navigation-controls.d.ts +18 -0
  2775. package/entrypoints/panel/src/client/navigation-controls.js +29 -0
  2776. package/entrypoints/panel/src/client/operation-phases.d.ts +16 -0
  2777. package/entrypoints/panel/src/client/operation-phases.js +70 -0
  2778. package/entrypoints/panel/src/client/own-window.d.ts +9 -0
  2779. package/entrypoints/panel/src/client/own-window.js +113 -0
  2780. package/entrypoints/panel/src/client/panel-snapshot.d.ts +25 -0
  2781. package/entrypoints/panel/src/client/panel-snapshot.js +3 -0
  2782. package/entrypoints/panel/src/client/panel-tabs.d.ts +21 -0
  2783. package/entrypoints/panel/src/client/panel-tabs.js +41 -0
  2784. package/entrypoints/panel/src/client/pause-inspector.d.ts +14 -0
  2785. package/entrypoints/panel/src/client/pause-inspector.js +104 -0
  2786. package/entrypoints/panel/src/client/principals.d.ts +18 -0
  2787. package/entrypoints/panel/src/client/principals.js +21 -0
  2788. package/entrypoints/panel/src/client/recordings.d.ts +38 -0
  2789. package/entrypoints/panel/src/client/recordings.js +481 -0
  2790. package/entrypoints/panel/src/client/registry.d.ts +53 -0
  2791. package/entrypoints/panel/src/client/registry.js +415 -0
  2792. package/entrypoints/panel/src/client/release-notice.d.ts +2 -0
  2793. package/entrypoints/panel/src/client/release-notice.js +36 -0
  2794. package/entrypoints/panel/src/client/replace-kept.d.ts +21 -0
  2795. package/entrypoints/panel/src/client/replace-kept.js +21 -0
  2796. package/entrypoints/panel/src/client/replay-chain.d.ts +20 -0
  2797. package/entrypoints/panel/src/client/replay-chain.js +31 -0
  2798. package/entrypoints/panel/src/client/request-error.d.ts +11 -0
  2799. package/entrypoints/panel/src/client/request-error.js +17 -0
  2800. package/entrypoints/panel/src/client/request.d.ts +1 -0
  2801. package/entrypoints/panel/src/client/request.js +16 -0
  2802. package/entrypoints/panel/src/client/reset-words.d.ts +9 -0
  2803. package/entrypoints/panel/src/client/reset-words.js +13 -0
  2804. package/entrypoints/panel/src/client/resize.d.ts +18 -0
  2805. package/entrypoints/panel/src/client/resize.js +137 -0
  2806. package/entrypoints/panel/src/client/root-call-confirm.d.ts +11 -0
  2807. package/entrypoints/panel/src/client/root-call-confirm.js +35 -0
  2808. package/entrypoints/panel/src/client/run-mode.d.ts +105 -0
  2809. package/entrypoints/panel/src/client/run-mode.js +49 -0
  2810. package/entrypoints/panel/src/client/run-outcome.d.ts +28 -0
  2811. package/entrypoints/panel/src/client/run-outcome.js +110 -0
  2812. package/entrypoints/panel/src/client/run-preludes.d.ts +54 -0
  2813. package/entrypoints/panel/src/client/run-preludes.js +46 -0
  2814. package/entrypoints/panel/src/client/run-progress.d.ts +117 -0
  2815. package/entrypoints/panel/src/client/run-progress.js +322 -0
  2816. package/entrypoints/panel/src/client/run-steps.d.ts +105 -0
  2817. package/entrypoints/panel/src/client/run-steps.js +319 -0
  2818. package/entrypoints/panel/src/client/run-writes.d.ts +66 -0
  2819. package/entrypoints/panel/src/client/run-writes.js +76 -0
  2820. package/entrypoints/panel/src/client/scenario-environment.d.ts +15 -0
  2821. package/entrypoints/panel/src/client/scenario-environment.js +34 -0
  2822. package/entrypoints/panel/src/client/selection.d.ts +7 -0
  2823. package/entrypoints/panel/src/client/selection.js +32 -0
  2824. package/entrypoints/panel/src/client/settings.d.ts +35 -0
  2825. package/entrypoints/panel/src/client/settings.js +178 -0
  2826. package/entrypoints/panel/src/client/shell-kit.d.ts +89 -0
  2827. package/entrypoints/panel/src/client/shell-kit.js +38 -0
  2828. package/entrypoints/panel/src/client/shell.css +355 -0
  2829. package/entrypoints/panel/src/client/show-cursor.css +55 -0
  2830. package/entrypoints/panel/src/client/show-cursor.d.ts +10 -0
  2831. package/entrypoints/panel/src/client/show-cursor.js +69 -0
  2832. package/entrypoints/panel/src/client/status-actions.d.ts +21 -0
  2833. package/entrypoints/panel/src/client/status-actions.js +40 -0
  2834. package/entrypoints/panel/src/client/step-evidence.css +11 -0
  2835. package/entrypoints/panel/src/client/step-evidence.d.ts +6 -0
  2836. package/entrypoints/panel/src/client/step-evidence.js +62 -0
  2837. package/entrypoints/panel/src/client/switch-run.d.ts +34 -0
  2838. package/entrypoints/panel/src/client/switch-run.js +67 -0
  2839. package/entrypoints/panel/src/client/tile-device.d.ts +55 -0
  2840. package/entrypoints/panel/src/client/tile-device.js +70 -0
  2841. package/entrypoints/panel/src/client/tile-grid.d.ts +54 -0
  2842. package/entrypoints/panel/src/client/tile-grid.js +67 -0
  2843. package/entrypoints/panel/src/client/tile-strip.d.ts +13 -0
  2844. package/entrypoints/panel/src/client/tile-strip.js +66 -0
  2845. package/entrypoints/panel/src/client/timeline.d.ts +82 -0
  2846. package/entrypoints/panel/src/client/timeline.js +195 -0
  2847. package/entrypoints/panel/src/client/tokens.css +206 -0
  2848. package/entrypoints/panel/src/client/tool-report.d.ts +15 -0
  2849. package/entrypoints/panel/src/client/tool-report.js +61 -0
  2850. package/entrypoints/panel/src/client/tools-page.css +168 -0
  2851. package/entrypoints/panel/src/client/ui-calls.d.ts +41 -0
  2852. package/entrypoints/panel/src/client/ui-calls.js +42 -0
  2853. package/entrypoints/panel/src/client/ui.d.ts +251 -0
  2854. package/entrypoints/panel/src/client/ui.js +493 -0
  2855. package/entrypoints/panel/src/client/unawaited.d.ts +5 -0
  2856. package/entrypoints/panel/src/client/unawaited.js +14 -0
  2857. package/entrypoints/panel/src/client/view-builder.css +372 -0
  2858. package/entrypoints/panel/src/client/view-characters.d.ts +3 -0
  2859. package/entrypoints/panel/src/client/view-characters.js +20 -0
  2860. package/entrypoints/panel/src/client/view-config.css +23 -0
  2861. package/entrypoints/panel/src/client/view-config.d.ts +6 -0
  2862. package/entrypoints/panel/src/client/view-config.js +41 -0
  2863. package/entrypoints/panel/src/client/view-environment.css +193 -0
  2864. package/entrypoints/panel/src/client/view-environment.d.ts +42 -0
  2865. package/entrypoints/panel/src/client/view-environment.js +240 -0
  2866. package/entrypoints/panel/src/client/view-identities.css +100 -0
  2867. package/entrypoints/panel/src/client/view-identities.d.ts +21 -0
  2868. package/entrypoints/panel/src/client/view-identities.js +288 -0
  2869. package/entrypoints/panel/src/client/view-recordings.css +9 -0
  2870. package/entrypoints/panel/src/client/view-replay.css +127 -0
  2871. package/entrypoints/panel/src/client/view-report.css +31 -0
  2872. package/entrypoints/panel/src/client/view-run-steps.css +98 -0
  2873. package/entrypoints/panel/src/client/view-runs.css +123 -0
  2874. package/entrypoints/panel/src/client/view-runs.d.ts +9 -0
  2875. package/entrypoints/panel/src/client/view-runs.js +443 -0
  2876. package/entrypoints/panel/src/client/view-scenarios.css +164 -0
  2877. package/entrypoints/panel/src/client/view-scenarios.d.ts +126 -0
  2878. package/entrypoints/panel/src/client/view-scenarios.js +510 -0
  2879. package/entrypoints/panel/src/client/view-settings.css +27 -0
  2880. package/entrypoints/panel/src/client/view-timeline.css +66 -0
  2881. package/entrypoints/panel/src/client/view-timeline.d.ts +22 -0
  2882. package/entrypoints/panel/src/client/view-timeline.js +136 -0
  2883. package/entrypoints/panel/src/client/view-tools.css +114 -0
  2884. package/entrypoints/panel/src/client/view-tools.d.ts +16 -0
  2885. package/entrypoints/panel/src/client/view-tools.js +285 -0
  2886. package/entrypoints/panel/src/client/views.d.ts +47 -0
  2887. package/entrypoints/panel/src/client/views.js +105 -0
  2888. package/entrypoints/panel/src/client/watch-layout.d.ts +47 -0
  2889. package/entrypoints/panel/src/client/watch-layout.js +79 -0
  2890. package/entrypoints/panel/src/client/window-bindings.d.ts +21 -0
  2891. package/entrypoints/panel/src/client/window-bindings.js +61 -0
  2892. package/entrypoints/panel/src/client/window-switch.d.ts +15 -0
  2893. package/entrypoints/panel/src/client/window-switch.js +19 -0
  2894. package/entrypoints/panel/src/client/workspace-shell.d.ts +20 -0
  2895. package/entrypoints/panel/src/client/workspace-shell.js +637 -0
  2896. package/entrypoints/panel/src/controls.d.ts +51 -0
  2897. package/entrypoints/panel/src/controls.js +119 -0
  2898. package/entrypoints/panel/src/device-list.d.ts +5 -0
  2899. package/entrypoints/panel/src/device-list.js +9 -0
  2900. package/entrypoints/panel/src/extensions.d.ts +5 -0
  2901. package/entrypoints/panel/src/extensions.js +28 -0
  2902. package/entrypoints/panel/src/feature-bindings.d.ts +9 -0
  2903. package/entrypoints/panel/src/feature-bindings.js +40 -0
  2904. package/entrypoints/panel/src/feature-control.d.ts +14 -0
  2905. package/entrypoints/panel/src/feature-control.js +25 -0
  2906. package/entrypoints/panel/src/feature-events.d.ts +10 -0
  2907. package/entrypoints/panel/src/feature-events.js +32 -0
  2908. package/entrypoints/panel/src/frame-check.d.ts +28 -0
  2909. package/entrypoints/panel/src/frame-check.js +69 -0
  2910. package/entrypoints/panel/src/index.d.ts +4 -0
  2911. package/entrypoints/panel/src/index.js +5 -0
  2912. package/entrypoints/panel/src/main.d.ts +3 -0
  2913. package/entrypoints/panel/src/main.js +40 -0
  2914. package/entrypoints/panel/src/react/browser.d.ts +9 -0
  2915. package/entrypoints/panel/src/react/browser.js +32 -0
  2916. package/entrypoints/panel/src/react/prepare.d.ts +10 -0
  2917. package/entrypoints/panel/src/react/prepare.js +49 -0
  2918. package/entrypoints/panel/src/rebuild-rule.d.ts +9 -0
  2919. package/entrypoints/panel/src/rebuild-rule.js +18 -0
  2920. package/entrypoints/panel/src/runtime-routes.d.ts +29 -0
  2921. package/entrypoints/panel/src/runtime-routes.js +143 -0
  2922. package/entrypoints/panel/src/served-assets.d.ts +7 -0
  2923. package/entrypoints/panel/src/served-assets.js +39 -0
  2924. package/entrypoints/panel/src/server.d.ts +95 -0
  2925. package/entrypoints/panel/src/server.js +653 -0
  2926. package/entrypoints/panel/src/tool-routes.d.ts +19 -0
  2927. package/entrypoints/panel/src/tool-routes.js +98 -0
  2928. package/entrypoints/panel/src/visible/app-reload.d.ts +6 -0
  2929. package/entrypoints/panel/src/visible/app-reload.js +22 -0
  2930. package/entrypoints/panel/src/visible/app-ui.d.ts +44 -0
  2931. package/entrypoints/panel/src/visible/app-ui.js +189 -0
  2932. package/entrypoints/panel/src/visible/detached-conditions.d.ts +9 -0
  2933. package/entrypoints/panel/src/visible/detached-conditions.js +37 -0
  2934. package/entrypoints/panel/src/visible/detached-identities.d.ts +82 -0
  2935. package/entrypoints/panel/src/visible/detached-identities.js +243 -0
  2936. package/entrypoints/panel/src/visible/detached-surface.d.ts +38 -0
  2937. package/entrypoints/panel/src/visible/detached-surface.js +182 -0
  2938. package/entrypoints/panel/src/visible/detached-window.d.ts +71 -0
  2939. package/entrypoints/panel/src/visible/detached-window.js +161 -0
  2940. package/entrypoints/panel/src/visible/device-catalogue.d.ts +12 -0
  2941. package/entrypoints/panel/src/visible/device-catalogue.js +40 -0
  2942. package/entrypoints/panel/src/visible/embedded-host.d.ts +6 -0
  2943. package/entrypoints/panel/src/visible/embedded-host.js +8 -0
  2944. package/entrypoints/panel/src/visible/frame-locations.d.ts +15 -0
  2945. package/entrypoints/panel/src/visible/frame-locations.js +29 -0
  2946. package/entrypoints/panel/src/visible/index.d.ts +13 -0
  2947. package/entrypoints/panel/src/visible/index.js +15 -0
  2948. package/entrypoints/panel/src/visible/mirror.d.ts +41 -0
  2949. package/entrypoints/panel/src/visible/mirror.js +100 -0
  2950. package/entrypoints/panel/src/visible/png-parts.d.ts +33 -0
  2951. package/entrypoints/panel/src/visible/png-parts.js +38 -0
  2952. package/entrypoints/panel/src/visible/png-work.d.ts +14 -0
  2953. package/entrypoints/panel/src/visible/png-work.js +15 -0
  2954. package/entrypoints/panel/src/visible/png-worker.mjs +13 -0
  2955. package/entrypoints/panel/src/visible/run-view.d.ts +37 -0
  2956. package/entrypoints/panel/src/visible/run-view.js +65 -0
  2957. package/entrypoints/panel/src/visible/runner.d.ts +192 -0
  2958. package/entrypoints/panel/src/visible/runner.js +450 -0
  2959. package/entrypoints/panel/src/visible/surface-session.d.ts +14 -0
  2960. package/entrypoints/panel/src/visible/surface-session.js +10 -0
  2961. package/entrypoints/panel/src/visible/tile-conditions.d.ts +33 -0
  2962. package/entrypoints/panel/src/visible/tile-conditions.js +94 -0
  2963. package/entrypoints/panel/src/visible/tile-placement.d.ts +61 -0
  2964. package/entrypoints/panel/src/visible/tile-placement.js +155 -0
  2965. package/entrypoints/panel/src/visible/tile-ready.d.ts +25 -0
  2966. package/entrypoints/panel/src/visible/tile-ready.js +78 -0
  2967. package/entrypoints/panel/src/visible/ui-activity.d.ts +60 -0
  2968. package/entrypoints/panel/src/visible/ui-activity.js +91 -0
  2969. package/entrypoints/panel/src/visible/ui-timing.d.ts +95 -0
  2970. package/entrypoints/panel/src/visible/ui-timing.js +32 -0
  2971. package/entrypoints/panel/src/visible/verified-typing.d.ts +39 -0
  2972. package/entrypoints/panel/src/visible/verified-typing.js +76 -0
  2973. package/entrypoints/panel/src/visible/viewport-shot.d.ts +29 -0
  2974. package/entrypoints/panel/src/visible/viewport-shot.js +83 -0
  2975. package/entrypoints/panel/src/visible/visible-ui.d.ts +132 -0
  2976. package/entrypoints/panel/src/visible/visible-ui.js +429 -0
  2977. package/entrypoints/panel/src/visible/window-frames.d.ts +35 -0
  2978. package/entrypoints/panel/src/visible/window-frames.js +128 -0
  2979. package/entrypoints/panel/src/visible/window-hold.d.ts +21 -0
  2980. package/entrypoints/panel/src/visible/window-hold.js +29 -0
  2981. package/entrypoints/panel/src/visible/window-video.d.ts +17 -0
  2982. package/entrypoints/panel/src/visible/window-video.js +21 -0
  2983. package/entrypoints/panel/src/visible/window.d.ts +99 -0
  2984. package/entrypoints/panel/src/visible/window.js +184 -0
  2985. package/entrypoints/panel/src/words.d.ts +6 -0
  2986. package/entrypoints/panel/src/words.js +8 -0
  2987. package/package.json +561 -3
@@ -0,0 +1,123 @@
1
+ # @product-lab/env-engine
2
+
3
+ Environment provider for [previewnet-engine](https://github.com/paritytech/previewnet-engine)
4
+ (Zombienet) full forks, with Engine's own session record and the routing hosts
5
+ use to reach an Engine network. Imported from the original lab.
6
+
7
+ | Module | Purpose |
8
+ | --- | --- |
9
+ | `session/session.ts` | `EngineSession` (schema 1: People, Asset Hub, Bulletin, identity backend, dashboard, spawn provenance), `validateEngineSession`, `readEngineSession`, `engineRoutes(session)` (the domain's `HostNetworkRoutes`: every chain with its genesis and the identity backend, validated loopback, distinct genesis, network and namespace), `appConfig`, `localUrl`. Refactor step 7 part b removed `LabSession` (the union with the manual-seal schema 2, now env-relayless's `ManualSealSession`), `validateSession`, `checkSession` and `NETWORKS` (the domain's `HOST_NETWORKS`) |
10
+ | `session/readiness.ts` | `attachEngine(rpc, …)`, `checkEngineSession(rpc, …)`, `observeChain(rpc, …)`, `rpc(rpc, …)`: ready means advancing finality, not an open port; since 3 October 2026 (fork cut 1) only on the chains `ReadinessOptions.finality` names (the lab's `requiredChains`): the others must answer and are read once, each chain's `readiness` (`finality` or `answered`) is in the session, and a resume's stall verdict counts only the finality chains. Since backlog 141 (5 October 2026) a start's checks (an owned first boot, a saved network's resume) pass `ReadinessOptions.firstBest`: a chain is ready only once its finalized head passes the best head the start first read, because after every node start a fork's parachains finalize the blocks they had and then pause while the validators prepare their PVFs (`tests/first-best-readiness.test.ts`, with the old rule as its negative control). `checkEngineSession` (every reconnect and resume) refuses a restarted Engine (spawn stamp), another genesis or endpoint, and since Phase 6 another runtime (`:code` hash or spec) than the session recorded. `checkAfterStateChange(check, warn, checks = STATE_CHANGE_CHECKS)` (backlog 93, 4 October 2026): an environment's own network check after an `@isolated` save or restore; restored validators restart their approval voting and the relay's finality can stand still for about one check's 90 s, so while every failure is a standing finalized head (`ChainsNotReadyError.standing()`) it checks again, up to 3 times, and a chain that does not answer or any other failure fails at once (`tests/check-after-state-change.test.ts`). Every JSON-RPC call goes through the injected `JsonRpcClient` and only to loopback endpoints (refused before anything is sent); the dashboard's HTTP reads still use `fetch` |
11
+ | `engine/live-network.ts`, `engine/fork-snapshot.ts` | `publishedNetworkEndpoints(engine, network)` (backlog A2, 3 October 2026): a live network's public endpoint per chain from the published fork bundle's manifest (`chains.*.endpoint`), else from Engine's network file (`liveEndpoints`), with the runtimes the bundle was bitten at; each endpoint is marked `public: true` and nothing connects, so a caller still opts in to every connection (`publicEndpoint: { reason }`); neither source naming one throws, naming the network. `forkSnapshotFrom`/`readForkSnapshot`: the bundle's bite time, source, blocks and runtimes by chain name; Web3 Storage is para 1503 or, on previewnet, 1600. `tests/engine-networks.test.ts`, `tests/fork-snapshot.test.ts` |
12
+ | `session/engine-networks.ts` | `ENGINE_NETWORKS`: what attaching expects of each network Engine knows, per network (backlog A1, 3 October 2026): the para id of People, Asset Hub and Bulletin and People's spec name. `paseo-next-v2` and `previewnet` hold the same values (1502, 1500, 1501; `next-people-paseo`); previewnet's Web3 Storage (1600) is not routed. `tests/engine-networks.test.ts` checks them against Engine's own network files (`tests/fixtures/engine-networks/`, from the tested Engine ref) and both published bundles' manifests |
13
+ | `session/runtime-dependency.ts` | `RuntimeDependency<Session>` lifecycle contract (default `EngineSession`) and `AttachedRuntimeDependency(rpc, session)` for an Engine session |
14
+ | `session/network-lock.ts` | `acquireScenarioLock(locks, …)`: one mutating owner per network generation, on the injected `LockManager` (People endpoint + genesis + Engine spawn stamp or node peer id); dead owners are reported with their evidence and reclaimed only with `PRODUCT_LAB_RECLAIM_STALE_LOCK=1` Since 3 October 2026 (backlog 17h) `networkLockPath(session, directory)` and `reclaimLockPredatedByRestore(locks, session, savedAt, directory)`: after a snapshot restore, the restored network's lock is reclaimed only when its holder is gone (the lock manager's `stale`), it took the lock after the snapshot's `savedAt`, and the lock records exactly that network's identity; otherwise it stays for the operator (`tests/network-lock.test.ts`, each condition with its negative control) |
15
+ | `engine/owned-engine.ts` | `OwnedEngineDependency(config, reports, system, options)`: a fresh owned Engine per reset. `system` (`EngineSystem`) is the injected `ProcessRunner` (or an open `OwnedProcesses` registry), `CommandRunner`, `PortAllocator`, `JsonRpcClient`, `EnvironmentVariables` and `Logger`, and optionally a `LockManager` (`requireEngineSystem(deps)` names what a lab left out). Engine's tree is recorded in the registry and stopped with `ENGINE_STOP` (SIGINT, 20 s, then SIGKILL, 5 s); setup jobs are awaited through `commands(id)`. Refactor step 7 deleted its own spawn, process-group signalling, `ps` scans and port probe. **Preparatory commands** (bite, bundle fetch, `fork toml`, `genesis-toml`) run through the same registry, asynchronously, via `runEnginePrepare`. Each is a recorded tree (`<id>-prepare-<n>`, `PREPARE_STOP`), with its own log, a pointer line in the Engine log, and `stdoutTo` as the port's `stdout`. It is bounded by its `timeoutMs` and by the start's signal. However it ends, its tree is stopped, and the registry must report no recorded member alive before data is removed; a recorded survivor is `PrepareNotStopped`, and the data is kept. That is not proof the whole tree is gone: `NodeOwnedProcesses` records every process in the tree's group at the command's exit (its group anchor), but a descendant that left the group (`setsid`) before the registry saw it is never recorded, and is not covered. The setup-job wait takes the start's signal too, and the signal is checked again before the fork setup; `start()` while a stop is under way is refused. `start(signal)` is cancelled by that signal or by `stop()`, which joins it; the readiness wait is cancellable too. After a cancellation nothing of Engine starts. A preparatory tree that did not stop makes `stop()` fail, never report a clean stop, and a later `stop()` retries it |
16
+ | `engine/engine-config.ts`, `engine/engine-prepare.ts`, `engine/engine-setup-jobs.ts` | The owned Engine's phases around `OwnedEngineDependency`, split out of `owned-engine.ts`, which still exports their public names: the configuration (`engineConfiguration`, `EngineSystem`, `requireEngineSystem`, `ENGINE_STOP`); the preparatory commands and stopping their trees (`runEnginePrepare`, `PREPARE_STOP`, `PrepareNotStopped`); the setup-job wait after readiness (`engineServices`: Engine's long-running processes, every other custom process is a one-shot job the start waits for; since 3 October 2026 it names previewnet's Web3 Storage provider `storage-provider-node`, para 1600, which the start had waited on until its bound). engine.json `pinProducts` (default `false`): the lab passes `PRODUCT_SYNC=0`, so Engine does not spawn its best-effort DotNS product import (`pin-bulletin-products`, a one-shot job); `true` passes `PRODUCT_SYNC=1`, and a topology's own `engine.env` still decides. Off because previewnet's network file turns the import on, and its fork had imported 50 of 637 products from previewnet.substrate.dev after about 10 minutes (3 October 2026); next-v2 never imports. `tests/setup-jobs.test.ts` |
17
+ | `engine/fork-isolation.ts` | Fork isolation, on by default (engine.json `isolate`, `expose`): `--no-mdns` on every node including a collator's relay side, loopback-only listeners, RPC and Prometheus unless `expose`, fresh node keys (0600 key files) and renamed bootnodes for a persisted network, cleared authority-discovery caches, and an IPFS repository with its own identity and no public network. No per-fork chain spec `forkId`: collators then resolve no validator. At a first boot zombie-cli starts every node on `0.0.0.0` with `--prometheus-external`; unless `expose`, the isolated TOML launches relay nodes through a product-lab launcher named like the binary (`<data>.isolation/relay/<binary>`, `nodeWrapperScript`) and collators through `collator.sh`, which rewrite both sides to loopback (a bare relay-side `--port` becomes a loopback `--listen-addr`), and `inspectIsolation` refuses a first boot whose node listens beyond loopback without one (`nonLoopbackListeners`). zombie-cli's own port reservations (`*:<port>` until it spawns each node, about 30 s) are upstream behaviour and not changed Old workspaces migrate with `persistentNetwork(..., { isolate: true })` |
18
+ | `engine/node-isolation.ts`, `engine/fork-toml.ts`, `engine/persisted-isolation.ts`, `engine/ipfs-isolation.ts` | Fork isolation by phase, split out of `fork-isolation.ts`, which keeps the check of what ran (`inspectIsolation`, `nonLoopbackListeners`) and still exports every public name: what the phases share (the node-argument rewrite, `zombieNodes`, `chainSpecFiles`); a first boot (the isolated fork TOML and its launchers); a resume (fresh node keys, renamed bootnodes, cleared caches); IPFS. Since backlog 190 (8 October 2026) two engine.json settings shape a parachain collator's own arguments, at a first boot (the fork TOML's collator lists, by section) and on **every start** of a saved network (`persistentNetwork`'s start loop, so a plan saved before them gets them too): `txpoolLog` (`debug` by default, `trace`) adds `-ltxpool=<level>` (`withNodeLogTargets`, `nodeLogTargets`) unless its `-l` lists set `txpool`, so a transaction a client hears of only as "Extrinsic marked as invalid" (polkadot-sdk#8497) shows in the collator's log (debug: counts per block and path; trace: each transaction by hash with its validity, about 46 MB an hour on a busy collator); `bulletinAuthoring` (`slot-based` by default, or `lookahead`, Engine's choice) gives Bulletin's collator (the one with `--ipfs-server`) `--authoring=slot-based` (`withBulletinAuthoring`), as Engine runs Asset Hub and People: Bulletin's lookahead collator forks its own chain (300 reorganizations in 6 h); on a light fork's A/B (`tools/verify/live/engine/bulletin-authoring.ts`, 10 minutes each) slot-based took forked collations from 19 to 0 and retracted best blocks from 20 to 3. It reduces reorgs but does not end them, nor the failures they cause: in an hour with stores 15 depth-1 reorgs remained, and each store signed at a retracted block (14 of 535) was marked invalid. `SavedForkSettings` carries both into a saved fork's engine.json. Relay validators and a collator's relay side get neither (`tests/fork-isolation.test.ts`, `tests/network-supervision.test.ts`) |
19
+ | `engine/persistent-network.ts` | With `options.versions` (Phase 6) a new network is checked against the resolution and records it in `versions.json` (0600); an existing one resumes only with the combination it recorded (`VersionedWorkspace.resume`): a downgrade, a version change, or versions known on one side only are refused before any port check or process, and nothing is reset. Resume a persisted Engine network through the injected system (`{ processes, files, ports, rpc, environment, logger }`: the workspace's `OwnedProcesses`, a `FileSystem`, a `PortAllocator`, a `JsonRpcClient`, `EnvironmentVariables`, a `Logger`); the bootstrap Engine is recorded in the workspace registry as `engine-bootstrap`; a first boot is cancelled by the start's signal (Engine's `start(signal)`: a preparatory command such as the bundle download is stopped and no network is recorded; `tools/verify/tests/engine-owned-start.test.ts`); `network.json` version 2 is isolated, version 1 resumes with a warning until migrated. Every `start()` completes the saved plan (`completePlan`: eth-rpc on `ETH_RPC_PORT` from `<data>/engine-ports.json`, which a first boot writes, or engine.json `ports`; with engine.json `nodePorts` every port inside it): a plan saved by an older version is rewritten on its next resume, only with its old and new ports free (a taken one is refused, nothing is killed), the previous plan kept as `network.previous.json`. eth-rpc is optional: if it exits or does not answer `eth_chainId` and `eth_blockNumber` within 60 s the network still starts and `network.ethRpc` says why (`EthRpcStatus`; `probeEthRpc`); a first boot with `nodePorts` gives zombie-cli every node port (`assignForkTomlPorts`: `prometheus_port`, `p2p_port`, a collator's `full_node_p2p_port` and `full_node_prometheus_port`) and eth-rpc its port. With engine.json `template` the first boot saves the template (`engine/network-template.ts`). `start()` first checks the saved data (`requirePersistedData`, `missingPersistedData`, `hasChainDatabase`): every node's own `--base-path` must hold a chain database (RocksDB `CURRENT` naming a live manifest, or ParityDB metadata; a collator's relay side keeps none), the identity backend's Postgres cluster its `PG_VERSION`, and IPFS its repository. Anything missing is refused before any port check or process, named: a node started without its database would begin again from the fork's genesis (or resync from peers) instead of resuming. Once its ports are free it restates what another network's boot from the same Engine checkout rewrote: its data directories in `ports.local.env` (`restateEngineLocalEnv`) and its ports in the checkout's `config/ports.env` (`restateEnginePorts`, `engineCheckout`). A taken port is named (`portNames`); the readiness wait shows its last answer and fails early on an exited service or a dashboard refusing its port (`readyTimeoutMs`) |
20
+ | `engine/plan-ports.ts` | Every port of a persisted network inside the workspace's own ports, and eth-rpc in the saved plan. `containPlanPorts(plan, range, named, taken?)`: each port a node listens on (`--prometheus-port`, `--rpc-port`, `--port`, `--listen-addr`, both sides of a collator's `--`) that is neither config/ports.env's (`named`) nor the plan's own is moved into engine.json `nodePorts`, in process order, deterministic and idempotent, around the `taken` ports (backlog 237: the persistent network passes the range's ports busy right now, probed only when a port moves, so an outgoing connection holding one of the OS's ephemeral range is gone around; the first boot's `planForkTomlPorts` does the same with `busyPorts`); `--bootnodes`/`--reserved-nodes` and chain spec `bootNodes` (`remapBootNodePorts`, `remapSpecBootNodePorts`) follow. `withEthRpc`/`ethRpcProcess`: Engine's eth-rpc (`scripts/eth-rpc.sh`'s `--node-rpc-url` Asset Hub and `--base-path <data>/eth-rpc-db`) plus `--rpc-port <ETH_RPC_PORT>` (Engine's launcher passes none, so it listened on 8545 while its dashboard probed ETH_RPC_PORT) and `--no-prometheus`, loopback, before the dashboard; or the reason it cannot run (no ETH_RPC_PORT known, no binary). `planPorts`, `listenedPorts` |
21
+ | `engine/fork-topology.ts` | How an owned fork is laid out (backlog 144, 5 October 2026): engine.json `forkTopology`, `faithful` (the default, Engine's own: 6 relay validators, Asset Hub on 3 cores) or `light` (4 validators, Asset Hub on 1 core, one PVF worker of each kind per validator). Engine publishes bundles of its own layout only, so a light fork lives in a workspace of its own (`forkTopologyWorkspace`: `<workspace>.light`, Engine's binaries cloned in, its IPFS repository not), where `applyForkLayoutDescriptor` merges the descriptor overlay `patches/previewnet-engine/light-topology.json` (`relay.validators` 4; shipped as `LIGHT_TOPOLOGY_OVERLAY` in `setup/patch-catalogue.ts`, since the package carries no `patches/`) into `networks/<network>.json` before each start, `engineRun` adds `--cores asset-hub=1` to `ppn start` and bites the bundle with it when there is none (never downloads it), and the isolated TOML appends the PVF limits to the relay chain's `default_args` (`relayArgs`). Needs isolation (refused without it). Seeds are kept per layout (`networkSeedDirectory`, `networkSeedProblems`); `savedForkUpdates({ published: false })` refuses `--refresh` and fetches no newer published state. The checkout and Engine's own workspace are never written. Backlog 184: `light` also lays out previewnet (the same overlay), and `LIGHT_BUNDLE_SOURCE` (off: `bite`) is the one setting that makes a light fork's first start download Engine's own light bundle (`ppn fork fetch-bundle` with `PPN_FORK_BUNDLE_ASSET`) once Engine publishes one; `publishesLayout` says which. `tests/fork-topology.test.ts` |
22
+ | `engine/turn-relay.ts` | Engine v0.7.0's TURN/STUN relay (eturnal, beside the identity backend on any network with People) as the lab runs it (2 October 2026). `TURN_PORT_OFFSETS`/`turnPorts(base)`: each lab block names its own `TURN_*` ports (349, 478, 479, UDP relay range 200-239), so two networks never share Engine's defaults (3478, 49152-49407). eturnal publishes no macOS build (Homebrew's processone tap builds it; Linux: `ppn fetch` downloads it): `chooseTurnRelay`, called by `OwnedEngineDependency` before a first boot, keeps a workspace copy of each descriptor with `services.turn: false` while eturnal is missing (`applyTurnRelayChoice`; Engine reads the workspace's `networks/` first) and warns once (`turnRelayOffNotice`, naming `ETURNAL_BREW_INSTALL`); peers on the machine still connect over host candidates. With eturnal, a second relay on the machine is refused (`otherTurnRelays`, `refuseSecondTurnRelay`): eturnal's fixed Erlang node name `eturnal@127.0.0.1` allows one (its `ERL_DIST_PORT`, which skips EPMD, is unverified). A resumed network keeps the relay state of its first boot. Exported from `.`. Tests: `tests/turn-relay.test.ts` |
23
+ | `engine/network-template.ts` | engine.json `template: true`: `saveNetworkTemplate` keeps a clean copy of a new network right after its first boot (Engine stopped, before the first resume) in `<workspace>/template/` (its data folder, network.json, versions.json, the session, `template.json`); `restoreNetworkTemplate` (a reset) clones it back as a new generation: a new spawn stamp in `<data>/spawn.json` and the session (the session check and the network lock compare it) and a new run id; its chain state is the first boot's, so nothing created since exists on it. `cloneTree`: `cp -c -R` (APFS copy-on-write) on macOS, `cp --reflink=auto -a` elsewhere, else a plain copy with a warning. The template serves its own workspace's resets only: every saved path names `<workspace>/network` |
24
+ | `engine/network-snapshots.ts` | Fixtures: `networkSnapshots(control)`, the `EnvironmentSnapshots` of a persistent network: `save` records each chain's finalized head, stops the network, copies `<workspace>/network` through the `TreeCloner` port (an APFS clone on macOS) with network.json, versions.json and the session, and resumes; `restore` refuses another kind, another lineage (`networkLineage`: the template's first boot, else the session's run; a network forked again is another lineage) or another workspace (saved paths name it), moves the live network aside, copies the snapshot in and resumes it, putting the moved one back when that fails. Since 30 September 2026 (backlog 1a) `control.files` names more plain files of the workspace to save beside the network (a consumer's own manifests, for example a workspace, an identity pool and its actors) under `files/`; restore puts each back, and one absent when saved stays absent. `networkSnapshotsUnsupported(owned, trees)` says why an attached network offers none. Since 30 September 2026 `networkSnapshots({ upgrade })` offers `EnvironmentSnapshots.upgrade` (a lab that owns the fork passes `savedForkUpdates(...).upgradeToLive`: `fixture refresh` upgrades a restored fixture in place); without it the snapshots say `upgradeUnsupported`. An Engine topology run (`engineEnvironment`) is disposable and reports `snapshotsUnsupported` Since 3 October 2026 (backlog 17h) `save` records `detail.savedAt` once the network has stopped, and with `control.locks` (`{ manager, directory?, log? }`) a restore reclaims the restored network's stale lock that a killed run took after that moment (`reclaimLockPredatedByRestore`), logging `Reclaimed the network lock … the restored state predates it (saved …)` |
25
+ | `engine/network-adoption.ts` | Fixture sharing (30 September 2026): `planNetworkAdoption` reads an imported network snapshot and this workspace's running plan and says what adopting it moves: the saved workspace directory and prepared Engine tooling directory to this checkout's (another tooling hash, another Engine, is refused) and, when the port block differs by one offset, every port of the old block wherever a port is named (plan arguments and environment, session, `engine-ports.json`, isolation and zombienet records, chain spec boot nodes, IPFS addresses; `rewriteText`); it refuses, naming each, another port layout, content-addressed IPFS blocks naming an old loopback port, and any other small file that still names the old workspace or ports. `applyNetworkAdoption` rewrites the snapshot copy; `networkSnapshots` `restore(…, { adopt: true })` plans before anything stops, applies it to its own snapshot copy, keeps the brought lineage in `network/adopted-lineage.json` (`readAdoptedLineage`, read first by `networkLineage`; a template reset replaces the folder and forgets it) and returns what moved. `save` records Engine's bite (`fork-snapshot.json`) and ports as `detail.provenance`. Since backlog 242 the workspace's own files a snapshot carries under `files/` (the environment names them: `networkSnapshots({ files })`) are rewritten too, so an environment's records with their ports and directories move with it. `tests/network-adoption.test.ts`; a dry run on a real saved fork: `tools/verify/live/engine/fixture-adoption.ts` |
26
+ | `engine/finality-stall.ts` | A saved network whose finality never advances after a resume (backlog 76). Seen live: relay validators that restart together can each lose the approval check of a candidate in their first second (`Session params unavailable (no active leaf?)`, upstream behaviour), and when too few are left to approve it (four of six lost) the relay block is never approved and nothing finalizes until the validators restart. `persistentNetwork.start()` recovers within a bound: it reads the validators' logs every second (`lostApprovalChecks`, `unapprovable`: the verdict arrives about 12 s into the start) and also calls a stall from the symptom alone (every chain answers, no finalized head advanced for `stallAfterMs`, default 2 minutes); it keeps what every process logged in `<workspace>/stall-evidence/<time>-start-<n>/` with `stall.json` (`keepStallEvidence`; `history.jsonl` lists every stall and outcome), stops the saved processes and starts them again, at most `stallRecovery.restarts` times (default 2). A recovered stall is reported: the `network-ready` phase says `finality advancing after 1 restart (finality had stalled: …)`, the logger warns, and `network.recovery.stalls` lists each stall (`NetworkStartRecovery`). One that is not recovered throws `FinalityStalledError` (`attempts`, `stalls`, each with its evidence directory), with the processes stopped and the data kept. `tests/finality-stall.test.ts` (the control: a network that never finalizes fails after 3 starts); the live loop is `tools/verify/live/engine/resume-loop.ts` Backlog 143 (5 October 2026): chains that stand while the relay's finalized head advances (read from a relay validator's RPC, `relayEndpoint` in `engine/drain.ts`) are waiting for the validators to prepare the parachains' PVFs, so they get no standing verdict and no restart, said in the start's progress; the start's deadline still bounds them, and a relay that stands too, or cannot be read, gives the verdict as before (`tests/finality-stall.test.ts`, with a frozen relay as its control). |
27
+ | `engine/chain-clock.ts` | A resumed network's chains reach the wall clock before it is ready (backlog 106). A saved chain keeps the time of its last block until it builds a new one, and readiness waits for finality only on the lab's required chains, so a chain that only has to answer (Notes: Asset Hub) could still be at the save's time. That time is signed with: the truAPI CLI host timestamps its dotNS registration with Asset Hub's `Timestamp.Now` at the best block, and the identity backend refuses one more than 600 s old (seen 5 October 2026: gate batch 21's resume of a fork saved hours earlier failed onboarding with `dotns.signedAt is older than the intake freshness bound (600s)`). `persistentNetwork.start()` reads every chain's `Timestamp.Now` and best block after readiness (`waitForChainClocks`, `chainTime`) and waits until each is within 2 minutes (`CHAIN_CLOCK_MAX_LAG_MS`) of the wall clock, the `network-ready` phase naming what it waits for; one still behind after `CHAIN_CLOCK_TIMEOUT_MS` (2 minutes) is not building blocks, and the start fails with `ChainClockBehindError` (`behind`: each chain, its lag and best block), naming why and the way out (restart the network, or a fresh fork). The logger gives each chain's time, its lag at the first read and how long the wait took (`onRead`). `chainClock: false` skips it. `tests/chain-clock.test.ts` (the fake dashboard's `chainLagMs` sets each chain's time) |
28
+ | `engine/approval-pin.ts` | Relay finality pinned at the approval threshold after a session change (backlog 93, 239). A start whose first block changes the session builds two gossip topologies before any peer connects; polkadot-sdk's `SessionGridTopologies::update_authority_ids` gives the peers to the first only, so some approval votes reach nobody until approval-distribution's level-1 aggression (`l1_threshold` 16), and every block then finalizes about 16 blocks late for the rest of the start. `ApprovalPinWatch` and the constants `APPROVAL_PIN_GAP` (14), `APPROVAL_PIN_HOLD_MS` (30 s), `APPROVAL_PIN_RESTARTS` (1): once the relay has finalized past the best head of the start's first read (so a backlog the start began with, as after the pin's own restart without a drain, is finalized first), a best head 14 or more ahead of the finalized one for 30 s restarts the network once (`stallRecovery.pinned`), recorded in `recovery.stalls` as `pinned` ("finality pinned at the approval threshold after a session change; restarted once", with the heads and the gap), its logs kept like a stall's; a second pin fails the start (`FinalityPinnedError`). Watched while the start waits for readiness and, if the relay is at the threshold when it is ready, until it falls below or holds |
29
+ | `engine/node-temp-dir.ts` | A relay validator's TMPDIR fits its PVF sockets (backlog 93). A validator binds its PVF workers' Unix sockets directly in its TMPDIR (`pvf-host-prepare-<10>`); a path of `sun_path`'s size or more is refused (`path must be shorter than SUN_LEN`: 104 bytes on macOS and the BSDs, 108 on Linux, `SUN_PATH_BYTES`), so no candidate is validated, no approval completes and the relay's finality stops at the last block before the first unapproved candidate. Seen 4 October 2026: a fork started with TMPDIR under a lane's `_artifacts` folder (107-byte socket paths) stalled at relay #1,310,664 on a fresh boot and on every resume. `nodeTempDir(network, inherited)`: when the inherited TMPDIR is too long (`pvfSocketsFit`), the network's processes get `TMPDIR=/tmp/pl-pvf-<12 hex of the network directory>` (0700), on the first boot (`OwnedEngineDependency`: Engine, zombie-cli and so every node) and on each resume (`persistentNetwork`: every saved process), with a warning naming the byte counts; it is removed on stop, and the next start of the same network removes one a crashed run left. A TMPDIR that fits changes nothing. `tests/node-temp-dir.test.ts` (both sides of the limit on macOS and Linux), `tests/finality-stall.test.ts` (a resume), `tools/verify/tests/engine-owned-start.test.ts` (a first boot); each fails with the override removed |
30
+ | `engine/drain.ts` | The drain before a saved network stops (backlog 17d): the stall above comes from relay blocks left unfinalized at the stop, whose candidates every validator checks again at the next start. `persistentNetwork.stop()` (and so a fixture save) first stops the collators (`drainPlan`: the processes whose arguments carry `--collator`; the relay at a validator's `--rpc-port`), then waits until no parachain head (`Paras.Heads`, read by the `PARAS_HEADS_PREFIX` keys) has changed for `DRAIN_QUIET_BLOCKS` (3) relay blocks and the block of the last change is finalized (with asynchronous backing a candidate backed before the stop is still included a few blocks later; a fixed two-block margin was too short), bounded by `DRAIN_TIMEOUT_MS` (120 s), then stops the rest (`drainCollators`, `DrainResult`, `network.drain`; a snapshot record keeps it under `detail.drain`). A relay that does not finalize in time or does not answer is stopped anyway with a warning, and the stall recovery still covers the next resume, as it covers a network stopped by a crash or a kill. `drain: false` stops everything at once (the loop's control, `DRAIN=0`). A restore's stop does not drain (`network.stop({ drain: false })`, lane speed, 7 October 2026): the snapshot's data replaces the stopped data, so no resume reads what a drain would settle (27-38 s on a full local fork); only a failed restore resumes that data again, and the stall recovery covers it then (`tests/network-snapshots.test.ts`, `tests/network-supervision.test.ts`). `tests/drain.test.ts`; live: `tools/verify/live/engine/resume-loop.ts` counts each resume's lost approval checks |
31
+ | `engine/fork-setup.ts` | What a fork needs after Engine's setup jobs, checked on the chain instead of trusted. `grantDotnsAttestationAllowance` (DotNS), and since 30 September 2026 `ensurePeopleLiteAttestationAllowance`: Engine's job `increase-people-lite-attestation-allowance` submits once and can lose a nonce race against `grant-invites` (`Invalid: Stale`), leaving the allowance at 0, which showed later as a failed onboarding. The start reads `PeopleLite.AttestationAllowance` of the verifier account with the `dot` CLI; when it is short it grants it through sudo (at most 3 submissions, read back each time) and says so (`setupReport.forkSetup.peopleLiteAttestationAllowance`: `grantedBy` `engine` or `lab`, a warning, the setup phase's detail). A grant that does not land throws `ForkSetupError`, which ends the start at once instead of being retried until Engine's deadline. `tests/fork-setup.test.ts` |
32
+ | `engine/network-seed.ts` | A first boot shared on one machine (backlog 77): `publishNetworkSeed(workspace, target)` copies a workspace's template and its launchers (`network.isolation/`) to `<shared>/fork-seeds/<network>-<tooling>-<platform>-<arch>/` (`networkSeedDirectory`) with `seed.json`. With engine.json `seed` naming that directory, a new workspace adopts it instead of forking (`adoptNetworkSeed`: clone, move every saved path to this workspace through `planNetworkAdoption`, check that each launcher's binary exists), then restores it as a new generation, as a reset does. Refused, with each reason in the `network-seed` phase, and the ordinary first boot runs: another network or mode, another platform, another prepared Engine (tooling hash), another port layout (`networkSeedProblems`, `NetworkSeedRefused`). Since 3 October 2026 (fork cut 4) a seed fits another port block of the same layout (one offset for every Engine port): the adoption plan moves the saved plan, records and chain specs, every zombienet TOML beside the launchers gets its ports moved by `moveForkTomlPorts` (port keys, loopback addresses, multiaddresses, port arguments; a port of the old block it cannot move refuses the seed), and the collator and relay node launchers are written again by `writeIsolatedForkToml` for this workspace's `nodePorts` window and Engine ports, never text-rewritten. Not used with `options.versions`. A stopped first boot (a data folder without `network.json`, which a boot, a restore and a seed write last) is removed with a warning before the seed or a new boot (backlog 210; before, the boot refused it until a retry), unless that boot may still run: the registry's `engine-bootstrap` alive or Engine's dashboard port taken refuses the start by name and removes nothing. A seeded network shares its first boot's chain state and node keys with every other copy: for local tests only. `tests/network-seed.test.ts` |
33
+ | `engine/network-reset.ts` | `resetPersistentNetwork(directory, { stop, sessionFile, commands })` (29 September 2026): stops the saved network, removes its data and network.json, and restores the first boot's template as a new generation (`method: "template"`, with `stopMs` and the copy); a workspace without a template gets `method: "fork-again"` with the reason, and the caller's next `persistentNetwork` forks again (the old path). Notes' `paseo-copy` reset uses it. The persistent network's `stop()` (`persistent-network.ts`) now stops every saved process at once (`stopTogether`; on Notes' fork 3.8 s and 4.2 s against 4.5 s one after another), each with its own stop policy, every failure reported together (`tests/stop-together.test.ts`) |
34
+ | `engine/runtime-upgrade.ts` | An in-place runtime upgrade of one chain of a running network (relay, People, Asset Hub, Bulletin): `upgradeRuntime(request)` runs Engine's own `ppn upgrade <chain> <wasm> --ws <loopback> --enact-timeout <min>` (with `--allow-same-spec` for the same spec or `withoutChecks`; the caller decides whether Engine's authorization path applies to its network) as a recorded tree of the network's registry through `runEnginePrepare`, writes its code through the injected `FileSystem.writePrivateBytes`, and judges the result on the chain: `observeRuntime(rpc, ws)` before and after (finalized `:code` hash, spec, block, and `System.LastRuntimeUpgrade`, decoded by `decodeLastRuntimeUpgrade`, which says the new runtime's migrations ran). While Engine waits for enactment, the chain is read every 5 s: an authorization dropped with nothing scheduled and the code unchanged (`System.RejectedInvalidAuthorizedUpgrade`: another chain's runtime, a lower spec), which Engine's tool does not notice until its enact timeout, stops the wait at once as a failure. Outcomes: `already-running` (nothing submitted), `upgraded` (the chain runs exactly the code, `migrated` true or false), `failed` (with `unchanged`: the chain still runs its old code). `recordRuntimeUpgrade(files, …)` rewrites a persistent network's saved session (`network.json` and the session file) on purpose, since `checkEngineSession` refuses any runtime change it was not told about, and appends `runtime-upgrades.json` |
35
+ | `engine/fork-bundle.ts` | A fork bundle is reused only once verified complete. `verifyForkBundle(dir)`: `manifest.json` parses, every snapshot it names is there at the size it records (`snapshotBytes`, written by every bite since Engine v0.8.0; else one snapshot per chain) and decompresses to its end (3.5 s for the 642 MB Paseo bundle). `markForkBundle` writes `.product-lab-complete` (the manifest's sha256, each snapshot's size); `markedComplete` holds while both match. `forkBundleState(bundle)`: complete, absent, or incomplete; an unmarked bundle (fetched before this check, or copied in) is verified once and marked. A start's fetch or bite writes into `<bundle>.incoming` (cleared first; `EngineCommand.installs`), and `installIncomingBundle` verifies it, marks it and renames it into place after the command exits 0, so a fetch or bite stopped part way never leaves a bundle that is reused, and a failed one leaves the bundle in place unchanged. `acquireForkBundleLock` (`<bundle>.lock`, through the injected `LockManager`) is held from the bundle's check to the end of the preparatory commands: a second start from one workspace waits, then finds it complete. A start without isolation, where Engine's own `ppn start` fetches a missing bundle, is not covered |
36
+ | `engine/published-bundle.ts` | Engine's published fork bundles (the rolling `PPN_REPO@PPN_BITE_TAG` pre-release of the checkout's `config/versions.env`, `engineReleaseSettings`): `publishedBundle({ files, checkout, network, fetch })` (bounded by `timeoutMs`, default 180 000 ms, with the caller's optional `signal`) reads the asset record from GitHub's API and the bundle's `manifest.json` by streaming at most the first 48 MiB of the compressed tarball (an HTTP range, stopping once `manifest.json` is read), so what is published is known without downloading it; the caller passes `fetch` (the public-endpoint opt-in) and the `FileSystem` system port for the checkout settings and staged bundles. `startPrefetch` downloads it with Engine's own `ppn fork fetch-bundle` into `fork-bundle-<network>.next.partial` at background priority (`backgroundPriority`: macOS `taskpolicy -c utility`, else `nice -n 19`) as a recorded process of the caller's registry; `finishPrefetch` verifies it complete and marks it (`engine/fork-bundle.ts`; an incomplete download is removed), then `completePrefetch` stages it (`.next`, `stagedBundle`, which offers only a verified one); `installStagedBundle` makes it the bundle new forks start from, keeping the old one until `discardPrevious` or `restorePrevious`. `currentBundle`, `bittenAfter`, `prefetchActive`, `bundleLocations` |
37
+ | `engine/fork-freshness.ts`, `engine/fork-refresh.ts`, `engine/fork-updates.ts` | Freshness, `--update-runtime` and `--refresh` for any saved Engine fork (fixture sharing, 30 September 2026, backlog 17c). They were lifted from an example, which now wraps them. State: `forkState` reads what a saved fork runs: its saved session, `runtimes.json` and its bite. `liveEndpoints` reads the public RPCs from Engine's network file; a relative one (previewnet's `relay/alice`, `people`) resolves under the file's `bite.source` as `wss://` (`resolveNetworkRpc`, as Engine's bite does). Freshness line: `freshness` is pure: it gives the age, the blocks behind live, and each chain whose spec or code changed, ending with the update command. The live read is injected as `LiveRuntimeReader`; the composition root's is `readLiveRuntimes`. `--update-runtime`: `updateForkRuntimes` applies each changed live runtime in place through `upgradeRuntime`. The code comes from an injected `LiveCodeFetcher`, checked against its hash. It then records the upgrade and waits `settleBlocks`. It refuses without a live read or a sudo key. Other pieces: `recordForkRuntimes`. `prefetchNewerState` fetches a newer published state in the background and never rejects. `prepareRefresh` sets the old fork aside for the newest published state; a lab record is carried across with `carry`. `commit` or `rollback` ends it. For a lab's start: `savedForkUpdates(options)` combines these into three calls. Before the start it runs `--refresh` when asked, and runs the live read and line beside the start. `started(target)` runs `--update-runtime` before anything connects, records the runtimes, commits a refresh and prefetches. `failed()` rolls a refresh back. `liveRpc` (3 October 2026): the lab's own RPC per chain for the live reads, over the network file's. `upgradeToLive(target, signal)` serves `networkSnapshots({ upgrade })` for `fixture refresh`. `tests/fork-freshness.test.ts` |
38
+ | `engine/owned-environment.ts` | `ownedEngineEnvironment`: owned Engine + consumer app sessions as one resettable environment; its local `engineSessionEnvironment` forwards optional app surfaces across reset and closes the current sessions and Engine once |
39
+ | `engine/network-plan.ts`, `engine/persisted-data.ts`, `engine/eth-rpc-probe.ts` | The persistent network's phases around `persistentNetwork`, split out of `persistent-network.ts`, which still exports their public names: the saved plan (`NetworkPlan`, `resumePlan`, `isolatedPlan`, `completePlan`, `planFacts`, `ENGINE_PORTS_FILE`); the resume's preconditions (`hasChainDatabase`, `missingPersistedData`, `requirePersistedData`, `restateEngineLocalEnv`, `engineCheckout`, `restateEnginePorts`, `portNames`, `requireFreePorts`; and, in `engine/saved-tooling.ts`, `missingSavedTooling` and `requireSavedTooling`: every command, what the lab's launchers in `<network>.isolation` exec, and the Engine checkout are on this machine); eth-rpc's health after a start (`probeEthRpc`, `EthRpcStatus`) |
40
+ | `engine/checkout-lock.ts` | Exclusive per checkout, enforced: fresh starts and saved resumes require the injected `LockManager` and hold the canonical checkout’s `config/ports.env.lock` from before start through completed stop, including Engine’s `finishGroup`. Another live network is refused immediately, naming the shared-checkout sweep gap and the fix: a separate cache or checkout. The lock records the registry of the holder's Engine and service trees. A holder that is gone (PID plus start time) is recovered and reported only once every member of every registry it recorded is gone too: Engine's trees run detached and can outlive their lab, so a live member refuses the recovery. A member of the workspace's own registry (`<workspace>/processes`) names the workspace, whose next start stops it; a member of a per-start registry (an owned Engine's reports, which no later start reads) names that registry and the live members' commands to stop. A record that names no registry, or an empty list, is refused (an older lab, or a holder that recorded none: a lifetime without a registry records no `registries` field). A saved fork's survivors step (`stopSavedForkSurvivors`) reads its engine.json through `namedCheckout`, so a damaged one names no checkout instead of failing the step, as for `persistentNetwork`. Live and unknown owners are never broken. `stopWorkspaceSurvivors` (and `persistentNetwork`'s `survivors: "stop"`, a workspace's first open in a new lab process) stops what an interrupted owner left in the workspace's own registry only while it holds the lock of every checkout the workspace names; `stop()` stops the saved network's trees under the lock and leaves the registry's other trees (hosts, downloads) to their owners. The historical `acquireCheckoutPorts`, `checkoutPortsLock` and `CheckoutLockTimeout` names remain; `waitMs` no longer enables waiting. |
41
+ | `engine/engine-start-phases.ts` | The start's phases through the progress port (`OwnedEngineDependency` option `phase`, `persistentNetwork` option `phase`; the Engine topology passes `EnvironmentStartContext.phase`): `EngineStartPhases`, `ENGINE_PHASES`, `zombienetNodes`, `readServiceHealth`. Network state (cached when Engine's bundle test passes, active while the preparatory `fork fetch-bundle` or `bite` runs, done on its exit 0), node binaries (Engine's fetch lines: `artifacts present` is cached, `✓` lines are counted, `Done!` is done), booting the network (zombienet's `should be running now` lines against the isolated TOML's relay validators and collators; done only on `network is up`), Engine services (the dashboard's `/api/health` for the `/api/network` services, with those down named; done when the dashboard answers with this network's spawn stamp), setup jobs (n of m finished, then the fork setup). `persistentNetwork` adds saving a first boot, the saved processes started (n of m) and the chains answering (`checkEngineSession`). Engine's downloads read each response whole before writing it (its `lib/github.ts`), so they are reported without a byte count or percentage |
42
+ | `engine/engine-health.ts` | Lab-side node supervision for a network's whole lifetime (backlog item 70). `engineNodeInventory(zombieJson, plan?)` / `readEngineNodeInventory(file, plan?)`: every node zombie.json lists (the relay's nodes and every parachain's collators, whatever their ids; the fixed 1500/1501/1502 check is gone), on a resume each as its saved process `network-<name>` on the metrics port its saved arguments give; a missing or malformed inventory, a duplicate name, a non-loopback endpoint, a node the plan does not start or one with `--no-prometheus` throws `EngineNodeInventoryRefused`. `superviseEngineNodes(endpoints, { intervalMs = 5000, timeoutMs = 20000, misses = 2, liveness, signal })`: every node answers `process_start_time_seconds` first (as zombie-cli's `metric` verifier reads it), then every interval a node the registry reports gone (`liveness`) or whose start time changed is lost at once, and one whose metrics fail (refused, timed out, HTTP error, no metric) `misses` checks in a row is lost: `EngineNodeLost` names each node and why (`Engine node collator-2000 is not listening (connection refused at …: killed or exited) on 2 checks in a row while the network ran`). `stop()` cancels the check in progress and joins it; the lab's own stop is never a loss. engine.json `nodeSupervision` (default `true`): `OwnedEngineDependency` starts Engine with `ppn start --node-verifier none` (`NODE_VERIFIER_OPTION`, `nodeVerifierArgs`; stock Engine v0.11.0 passes it to zombie-cli) and supervises from readiness until stop, racing its setup jobs and fork setup against a loss (`onLost`, `lost`, `monitorNodes`; `ppn start` exiting is a loss too); `false` passes no option, so zombie-cli keeps its `metric` default, and supervises nothing. `persistentNetwork` (option `nodeSupervision`, else engine.json's, default on) supervises every resume from readiness until `stop()` (`network.supervision`, `network.onLost`), refusing an unsupervisable inventory before any process starts. The Engine topology environment reports a loss through `RunningEnvironment.onLost`, and the runtime fails the active run with it. `tests/engine-health.test.ts`, `tests/network-supervision.test.ts`; on real processes `tools/verify/tests/engine-owned-start.test.ts` |
43
+ | `evidence/*` | Progress diagnostics, log preservation |
44
+ | `errors.ts` | Typed failures callers branch on instead of the message: `EndpointUnansweredError` (the dashboard or identity backend did not answer: `url`, and `systemCode`, the socket's `ECONNREFUSED`/`ECONNRESET` from the cause chain, `systemErrorCode`); `PortOccupiedError` (`port`, `owner`: `requireFreePorts`); `IncompleteNetworkError` (`directory`, `missing`: which process lacks which data, `MissingPersistedData`, also from `missingPersistedParts(plan)`); `MissingEngineToolingError` (`directory`, `missing`: `MissingToolingPath`, each process and path; `savedCheckout`, `currentCheckout`): a saved network whose Engine tooling is gone, its cache deleted or moved or another `PRODUCT_LAB_CACHE_DIR` set, refused before any port check or process with the way out (that cache again, or a new saved network, its identities discarded). Since 30 September 2026 the readiness check's failures are typed too: `FinalityNotAdvancingError` (one chain), `ChainsNotReadyError` (`standing()` gives each chain's finalized number when every chain answered and none advanced), `FinalityStalledError` (the recovery gave up: `attempts`, `stalls`), `FinalityPinnedError` (backlog 239: relay finality pinned at the approval threshold again after its one restart; `stalls`) and `ForkSetupError`. The wait for a resumed network takes a dashboard that runs but refuses its own port from the type and code (`refusedUnder`). `errorMessage` appends a cause's message unless the message already quotes it: that text comparison is formatting only and stays counted in the architecture baseline |
45
+ | `topology/engine-plan.ts` | `engineLaunchPlan`: a resolved relay-backed `EngineTopology` as `ppn` commands (fork, `--fresh-bite`, `--upgrade`, `--runtime`, `--binary`, genesis subsets through `genesis-toml --parachains` then `start --toml`) and `config/ports.env` keys |
46
+ | `topology/engine-topology.ts` | `resolveEngineTopology`, `engineOptionsSchema`, `engineProfiles` (full-fork, genesis-subset), `engineFlagOptions`, `ENGINE_FLAGS` (`--engine-arg`, `--engine-env`, `--engine-toml`), `ENGINE_KIND`, `DEFAULT_ENGINE_PORTS`: the adapter's own topology options, defaults, flags and issues (refactor step 5) |
47
+ | `topology/engine-environment-factory.ts` | `EngineEnvironmentFactory`: the adapter's `TopologyAdapterFactory` (kind `engine`, section `engine`), constructed by the composition root when a lab selects `defineLab({ environmentAdapters: { engine: { engineConfig } } })` (`composition/src/adapter-catalogue.ts`), or registered directly with `defineLab({ environmentFactories: [new EngineEnvironmentFactory({ engineConfig })] })` |
48
+ | `setup/prepare-engine.ts`, `setup/engine-build.ts`, `setup/patches.ts`, `setup/patch-catalogue.ts` | Stock Engine v0.11.0 preparation and shipped release pin; `preparedEngine` checks the pin, stock record, checkout HEAD, built CLI and dot CLI. Retired patched records and requests are refused. Descriptor overlays remain digest-checked through the manifest. |
49
+ | `setup/setup-command.ts` | The command every Engine refusal names, for where this adapter runs (`engineSetupCommand(environment?)`): `bun run setup` in product-lab's checkout, `npx --no-install product-lab fetch --environment <id>` in a product, which has no `bun run setup` (`insideProductLabCheckout`, this adapter's own copy of the CLI's check) |
50
+ | `saved-fork/saved-fork-tooling.ts` | The Engine checkout a saved fork starts from, `<cacheDir>/engine` (16 October 2026): `savedForkEngine` (the start's check, `as-prepared`, its refusal naming `SavedForkSettings.setupCommand`, default `engineSetupCommand`), and `savedForkTooling`, the fork's `EnvironmentProvider.tooling` (id `engine:<cacheDir>/engine`, shared by every saved fork with that cache; kind `engine`): `check` is `savedForkEngine`'s, `prepare` runs `prepareEngine` there for the fork's network with the request's source (`repository`, `ref`, `patched: false` for stock, also the default; `patched: true` is refused) and returns the check of exactly what it asked for. `product-lab fetch` prepares it and `product-lab doctor` reports it in a product. A saved fork started from a stock build writes `enginePatch: "none"` in its own engine.json |
51
+ | `testing` subpath | Fake Engine dashboard and chain RPCs for contract tests (`codeHashOffset`, `specVersion` change the served runtime) |
52
+ | `versions/engine-versions.ts` | Phase 6: `engineVersionPlan(topology, resolution, { snapshot, now })` (what Engine honours: runtimes read from the network it forks; refused as unsupported: released or git runtimes, resolved binaries, a runtime override on the same chain, a network runtime on genesis, a published bundle that `SnapshotFreshness` finds stale or on another runtime), `engineVersionCheck(session, plan, snapshot)` (each chain's observed `:code` hash, spec, genesis and bite block against the resolution), `VersionedEngineDependency` (checks every start and reset, stops and throws `EngineVersionMismatch` on other code), `engineVersionsRecord`, `workspaceVersionPlan` (persistent networks). Engine cannot fork at a chosen block: a `deployed` resolution is honoured by runtime, and the bite blocks are recorded beside the resolved block |
53
+
54
+ The engine's running environment (`engineEnvironment`, a `RunningEnvironment`
55
+ from `@product-lab/ports/environment`) exposes `routes` (`engineRoutes` of the
56
+ current session, recomputed after a reset) and `processes()` (the Engine tree
57
+ its registry records). It offers no `time` control (backlog 16): `timeUnsupported` is `ENGINE_TIME_UNSUPPORTED`,
58
+ exported for consumers' own Engine environments (Notes' `paseo-copy`, another example's `local`): its validators and
59
+ collators author on the wall clock, so no block is built on request and no chain's clock can be moved.
60
+ The manual-seal session of the relay-less fast lane is
61
+ [`@product-lab/env-relayless`](../relayless)'s own since refactor step 7 part b;
62
+ an example that uses both composes them in its own session.
63
+
64
+ Local state defaults to `.product-lab/` in the consumer's directory (tooling,
65
+ `engine.json`, `session.json`, network locks). Commands, run from the
66
+ consumer's root (they never touch a developer's own Engine clone):
67
+
68
+ ```sh
69
+ node --import tsx <product-lab>/composition/src/engine-setup.ts --dry-run # show paths only
70
+ node --import tsx <product-lab>/composition/src/engine-setup.ts # clone and build stock Engine
71
+ node --import tsx <product-lab>/composition/src/engine-setup.ts --engine-repository <url|path> --engine-ref <ref> --no-patch # stock Engine from another repository
72
+ node --import tsx <product-lab>/tools/verify/src/engine-network.ts # start an owned local fork
73
+ ```
74
+
75
+ The saved forks' Engine (`paseo-copy` and `previewnet-copy`) lives in the shared cache,
76
+ `<PRODUCT_LAB_CACHE_DIR or ~/.cache/product-lab>/engine`. `bun run setup` in this repository and
77
+ `npx --no-install product-lab fetch --environment paseo-copy` in an installed product both prepare stock
78
+ Engine v0.11.0 (`e11792b234ca0c39a5fc1d47af491f82fc8e2670`) with no Engine flags required.
79
+ `--no-patch` and `--no-engine-patch` remain compatible aliases for that default. `--engine-repository` and
80
+ `--engine-ref` can prepare another explicit source; `preparedEngine` checks the tested pin unless its caller
81
+ explicitly supplies a ref. A saved fork's normal start checks the tested pin.
82
+
83
+ The build record and generated engine.json say `patch: "none"` and `enginePatch: "none"`. Before accepting the
84
+ prepared checkout, the adapter checks its immutable ref, empty patch digest, checkout HEAD, built CLI and pinned
85
+ dot CLI. A stale or legacy patched record is refused with the setup command. The retired patch API also refuses.
86
+ Stock Engine carries the neutral `--node-verifier` option (#43), so the lab continues passing `none` only while
87
+ supervising every node. The light layout's four-validator descriptor overlay stays necessary; Engine's new light
88
+ specs are for light clients and do not reduce the fork's nodes.
89
+
90
+ `engine-network.ts` moved to `tools/verify` in refactor step 7: it wires the Node system adapters, which this adapter never imports.
91
+ Blocking setup commands have explicit limits: 30 s for local Git checks and key tools,
92
+ 2 minutes to resolve a remote ref, and 30 minutes for a setup build command. A copy-on-write
93
+ template clone is limited to 10 minutes before falling back to the ordinary file copy.
94
+
95
+ Existence probes (`missingPersistedData`'s files, `applyIpfsPorts`, `usableForkBundle`, the start log's poll) answer
96
+ "absent" only for a path that does not exist; one that exists but cannot be read is reported as that error, not
97
+ taken as missing (`tests/probe-failures.test.ts`).
98
+
99
+ Several forks on one machine need separate caches or prepared Engine checkouts, plus distinct ports. Stock Engine v0.11.0 has a known shared-checkout sweep gap: its `finishGroup` cleanup matches service commands by checkout path, even when they belong to another workspace. The lab enforces checkout exclusivity for the whole network lifetime, including shutdown. A second start on that checkout is refused immediately. Saved networks may reuse a checkout sequentially; each resume restates its own ports (`restateEnginePorts`). PID and process start time distinguish stale lock owners from reused PIDs, and a stale lock is recovered (with a warning) only when every Engine and service process its holder recorded is gone; otherwise it stays, naming the workspace to stop. Restarting that workspace stops what its interrupted run left while holding the lock. A live or unknown owner remains locked. This is a checkout-exclusivity guarantee, not a general ownership-safety claim.
100
+
101
+ Version resolutions (Phase 6): `engineEnvironment` takes `EnvironmentStartContext.versions`, refuses what `engineVersionPlan` refuses before anything starts, checks the fork after every start and reset (`VersionedEngineDependency`), adds the plan's notes to the environment's notices, and records `extra.versions` (the resolution, each runtime's row, what did not apply) in the run manifest and `versions` in the provenance. `EngineEnvironmentSettings.maxSnapshotAgeMs` (default 24 h) bounds a published bundle's age for a `deployed` resolution.
102
+
103
+ System ports (refactor step 7): `EngineEnvironmentFactory.create(topology, deps)` passes the lab's system ports (the composition root's Node ports, plus any the lab gives as `defineLab({ system })`) to the environment, which requires `processes`, `commands`, `ports`, `rpc`, `environment`, `logger` and `runManifests` when it starts (not when it is created) and refuses with the missing names. Fork setup signs the DotNS attestation allowance with three bounded `dot` commands through `commands`, using the start's abort signal. The run manifest (`<reports>/run-manifest-<run id>.json`) is built by the domain's `createRunManifest` with an adapter-owned timestamp (which redacts sensitive customizations) and written through the injected `RunManifestStore` (`writeTo`); the adapter's own writer is deleted.
104
+
105
+ ## Package
106
+
107
+ | | |
108
+ | --- | --- |
109
+ | Nx project | `env-engine` |
110
+ | Tags | `scope:provider`, `type:adapter` |
111
+ | Exports | `.` (`src/index.ts`: session, readiness, network lock, owned Engine, fork isolation, persistent network (including its data guard, `completePlan`, `probeEthRpc`), plan ports and eth-rpc (`containPlanPorts`, `withEthRpc`), network templates (`saveNetworkTemplate`, `restoreNetworkTemplate`, `cloneTree`), stall recovery (`lostApprovalChecks`, `unapprovable`, `keepStallEvidence`, `FinalityStalledError`, `NetworkStartRecovery`, `StallRecoveryOptions`), a relay pinned at the approval threshold (`ApprovalPinWatch`, `relayHeads`, `describeApprovalPin`, `APPROVAL_PIN_GAP`, `APPROVAL_PIN_HOLD_MS`, `APPROVAL_PIN_RESTARTS`, `FinalityPinnedError`), chain time after a resume (`waitForChainClocks`, `chainTime`, `ChainClockBehindError`, `ChainLag`, `CHAIN_CLOCK_MAX_LAG_MS`, `CHAIN_CLOCK_TIMEOUT_MS`, `TIMESTAMP_NOW_KEY`), the drain before a stop (`drainPlan`, `drainCollators`, `DrainResult`, `DRAIN_TIMEOUT_MS`, `DRAIN_QUIET_BLOCKS`, `PARAS_HEADS_PREFIX`), the fork setup checks (`ensurePeopleLiteAttestationAllowance`, `ForkSetupError`), network seeds (`publishNetworkSeed`, `adoptNetworkSeed`, `networkSeedDirectory`, `readNetworkSeed`, `NetworkSeedRefused`), runtime upgrade (`upgradeRuntime`, `observeRuntime`, `recordRuntimeUpgrade`), published bundles (`publishedBundle`, `startPrefetch`, `installStagedBundle`), fork freshness (`forkState`, `freshness`, `updateForkRuntimes`, `prepareRefresh`, `prefetchNewerState`, `savedForkUpdates`), setup (`prepareEngine`, `preparedEngine`, `EngineNotPrepared`, `engineBuildIssue`; since 16 October 2026 `EngineSource`, `engineRepository`, `defaultEngineRepository`, `ENGINE_PATCHES`, `EnginePatch`, `PreparedEnginePatch`, `recordedPatch`, `engineSetupCommand`, `CHECKOUT_ENGINE_SETUP`), saved forks (the user's decision 5: `savedForkEnvironment`, `SavedForkSettings`, `SAVED_FORK_LAYOUTS`, `savedForkFor`, `savedForkPorts`, `savedForkBlock`, `SAVED_FORK_STARTUP_MS`, and their Engine: `savedForkTooling`, `savedForkEngine`, `savedForkEngineState`, `savedForkSetupCommand`, `engineBuildWords`; `src/saved-fork/saved-fork.ts`, moved from Notes' owned fork; composition's `paseoCopy()` builds them; `tests/saved-fork.test.ts`), `engineLaunchPlan`, `resolveEngineTopology`, `EngineEnvironmentFactory`, `engineEnvironment`), `./session` (`src/session/session.ts`), `./testing` (`src/testing/engine-dashboard.ts`) |
112
+ | Implements | `TopologyAdapterFactory` (`EngineEnvironmentFactory`) and `TopologyEnvironment` (`engineEnvironment`, whose `start` returns a `RunningEnvironment` with `routes` and `processes()`), both `@product-lab/ports/environment` (step 7 part b; `ownedEngineEnvironment` is a legacy `LabEnvironment`); takes `ProcessRunner`/`OwnedProcesses`, `CommandRunner`, `PortAllocator`, `JsonRpcClient`, `EnvironmentVariables`, `Logger`, `FileSystem` and `LockManager` from `@product-lab/ports/system` and `RunManifestStore` from `@product-lab/ports/storage` |
113
+ | Depends on | `@product-lab/domain`, `@product-lab/ports`, `zod`. The shared topology options schema is its own copy (`src/topology/topology-options-schema.ts`); the environment contract kit's `malformed-throws` case keeps it the same as the other topology adapters' |
114
+ | Used by | the composition root (`composition/src/adapter-catalogue.ts`), `examples/notes` and another example, `tools/verify`. No adapter imports it: `host-truapi-cli` since step 7 part a, `env-relayless` since step 7 part b (it imported the `LabSession` contract) |
115
+
116
+ Contract kit: `tests/contract.test.ts` runs the [environment contract kit](../../../contracts/environment/README.md), declaring `topology`, `profiles`, `flags`, `workspaces` and `sensitiveOptions`. The lifecycle cases (`lifecycle`, `reset`, `routes`, and `sensitiveOptions` on a running network) start a real Engine network through the Node system ports, which this package's tests never import: they moved to `tools/verify/tests/environment-contract-live.test.ts` in step 7 and run only with `PRODUCT_LAB_KIT_LIVE=1` and `PRODUCT_LAB_KIT_ENGINE_CONFIG` (not run by the gates).
117
+
118
+ Tests: `bunx nx run env-engine:test` (fakes for Engine, processes, JSON-RPC and the lock; no fork; `tests/persistent-data.test.ts`
119
+ covers the data guard on temporary directories; `tests/shared-checkout.test.ts` two networks resuming on one Engine checkout,
120
+ a taken port named, and the readiness wait's reasons). With the Node
121
+ system adapters: the lock on disk, `tools/verify/tests/scenario-lock.test.ts`; an owned Engine started, awaited and
122
+ stopped against a stand-in checkout, and a stock build passing the pre-start check while legacy patched configurations are refused, `tools/verify/tests/engine-owned-start.test.ts`; an Engine session routing the
123
+ truAPI CLI host, `tools/verify/tests/host-routes.test.ts`.
@@ -0,0 +1,9 @@
1
+ {
2
+ "checkout": "/absolute/path/to/patched-previewnet-engine",
3
+ "workspace": "/absolute/path/to/prepared-engine-workspace",
4
+ "network": "paseo-next-v2",
5
+ "mode": "fork",
6
+ "dashboard": "http://127.0.0.1:8090",
7
+ "extraPath": [],
8
+ "startupTimeoutMs": 600000
9
+ }
@@ -0,0 +1,106 @@
1
+ import type { JsonRpcClient } from "@parity/product-lab/ports/system";
2
+ /**
3
+ * How far the relay's best head may run ahead of its finalized head before finality is called pinned: polkadot-sdk's
4
+ * approval-distribution `AggressionConfig::default().l1_threshold` (16), less two blocks, as the gap read between two
5
+ * blocks stands at 14 to 17 while pinned (row 93, row 231). A normal start runs 2 to 5 behind.
6
+ */
7
+ export declare const APPROVAL_PIN_GAP = 14;
8
+ /** How long the gap must stay at `APPROVAL_PIN_GAP` or more, once relay finality first moved, before the start restarts. */
9
+ export declare const APPROVAL_PIN_HOLD_MS = 30000;
10
+ /** How often a start restarts for a pinned relay: once; a second pin fails the start (`FinalityPinnedError`). */
11
+ export declare const APPROVAL_PIN_RESTARTS = 1;
12
+ /** The relay's two heads, read together. */
13
+ export interface RelayHeads {
14
+ readonly best: bigint;
15
+ readonly finalized: bigint;
16
+ /** When they were read (ms since the epoch). */
17
+ readonly at: number;
18
+ }
19
+ /** A pinned relay: its heads when the hold was reached, the gap, and since when it stood at the threshold or more. */
20
+ export interface ApprovalPin {
21
+ readonly best: bigint;
22
+ readonly finalized: bigint;
23
+ readonly gap: bigint;
24
+ readonly heldMs: number;
25
+ }
26
+ /**
27
+ * What the watch says after a read: `pinned` (restart), `watching` (at the threshold, not yet held), `pending` (at the
28
+ * threshold while blocks the start began with are still being finalized), or `clear`.
29
+ */
30
+ export type PinState = {
31
+ readonly state: "pinned";
32
+ readonly pin: ApprovalPin;
33
+ } | {
34
+ readonly state: "watching";
35
+ readonly gap: bigint;
36
+ readonly heldMs: number;
37
+ } | {
38
+ readonly state: "pending";
39
+ readonly gap: bigint;
40
+ readonly firstBest: bigint;
41
+ } | {
42
+ readonly state: "clear";
43
+ readonly gap?: bigint;
44
+ };
45
+ /**
46
+ * The rule, fed one read at a time: nothing counts until the relay's finalized head passes the best head of the first
47
+ * read, so blocks the start began with are finalized first (a start's first minutes, before the validators finalize at
48
+ * all, are the standing verdict's). That matters after the pin's own restart: it stops the network without a drain, and
49
+ * the second start begins 16 blocks behind, finalizing one block per block until that backlog is through, the gap
50
+ * standing at 16 meanwhile (live 8 October 2026, `239L-2044` start 3). After that, a gap of `gap` or more for `holdMs`
51
+ * without a read below it is a pin.
52
+ */
53
+ export declare class ApprovalPinWatch {
54
+ private readonly gap;
55
+ private readonly holdMs;
56
+ private firstBest;
57
+ private passed;
58
+ private since;
59
+ constructor(gap?: number, holdMs?: number);
60
+ observe(heads: RelayHeads): PinState;
61
+ }
62
+ /** The relay's best and finalized heads at a validator's RPC. */
63
+ export declare function relayHeads(client: JsonRpcClient, ws: string, now?: () => number): Promise<RelayHeads>;
64
+ /** The start's record of a pin, with the numbers: what `recovery.stalls`, the log and the evidence say. */
65
+ export declare function describeApprovalPin(pin: ApprovalPin, restarted: boolean): string;
66
+ /** The pin rule's bounds for one start. */
67
+ export interface PinPolicy {
68
+ readonly gap: number;
69
+ readonly holdMs: number;
70
+ /** How often the relay is read. */
71
+ readonly pollMs: number;
72
+ }
73
+ /** What a start does on a pin: the verdict kind persistent-network.ts restarts or fails on, with the numbers. */
74
+ export interface PinVerdict {
75
+ readonly kind: "pinned";
76
+ readonly reason: string;
77
+ readonly detail: Record<string, unknown>;
78
+ }
79
+ /** One start's pin watch: the relay read at most once per `pollMs`, into the rule. */
80
+ export declare class RelayPinSampler {
81
+ private readonly client;
82
+ private readonly ws;
83
+ readonly policy: PinPolicy;
84
+ /** Restarts already made for a pin in this `start()` (decides the verdict's wording). */
85
+ private readonly restartsSoFar;
86
+ readonly watch: ApprovalPinWatch;
87
+ private readAt;
88
+ private last;
89
+ /** Why the last read failed, when it did. */
90
+ lastError: string | undefined;
91
+ constructor(client: JsonRpcClient, ws: string, policy: PinPolicy,
92
+ /** Restarts already made for a pin in this `start()` (decides the verdict's wording). */
93
+ restartsSoFar: number);
94
+ /** The rule after a read (`force`: read now, else at most once per `pollMs`); undefined while the relay cannot be read. */
95
+ read(force?: boolean): Promise<PinState | undefined>;
96
+ /** The verdict when `state` is a pin. */
97
+ verdict(state: PinState | undefined): PinVerdict | undefined;
98
+ /**
99
+ * After the chains are ready: while the relay stands at the threshold it is read until it falls below (undefined, no
100
+ * restart) or holds (the verdict); a relay below the threshold costs one read and no wait. While it is still
101
+ * finalizing the blocks the start began with (`pending`), it is read for at most `pendingMs`, then the start goes on.
102
+ */
103
+ settle(pendingMs: number, watching: (state: Extract<PinState, {
104
+ state: "watching" | "pending";
105
+ }>) => void, signal?: AbortSignal): Promise<PinVerdict | undefined>;
106
+ }
@@ -0,0 +1,98 @@
1
+ // Copyright 2026 Parity Technologies (UK) Ltd.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { setTimeout as delay } from "node:timers/promises";
4
+ import { bestNumber, finalizedNumber } from "../session/readiness.js";
5
+ export const APPROVAL_PIN_GAP = 14;
6
+ export const APPROVAL_PIN_HOLD_MS = 30_000;
7
+ export const APPROVAL_PIN_RESTARTS = 1;
8
+ export class ApprovalPinWatch {
9
+ gap;
10
+ holdMs;
11
+ firstBest;
12
+ passed = false;
13
+ since;
14
+ constructor(gap = APPROVAL_PIN_GAP, holdMs = APPROVAL_PIN_HOLD_MS) {
15
+ this.gap = gap;
16
+ this.holdMs = holdMs;
17
+ }
18
+ observe(heads) {
19
+ this.firstBest ??= heads.best;
20
+ if (heads.finalized > this.firstBest)
21
+ this.passed = true;
22
+ const gap = heads.best - heads.finalized;
23
+ if (gap < BigInt(this.gap)) {
24
+ this.since = undefined;
25
+ return { state: "clear", gap };
26
+ }
27
+ if (!this.passed)
28
+ return { state: "pending", gap, firstBest: this.firstBest };
29
+ this.since ??= heads.at;
30
+ const heldMs = heads.at - this.since;
31
+ return heldMs >= this.holdMs ? { state: "pinned", pin: { best: heads.best, finalized: heads.finalized, gap, heldMs } } : { state: "watching", gap, heldMs };
32
+ }
33
+ }
34
+ export async function relayHeads(client, ws, now = Date.now) {
35
+ const [best, finalized] = await Promise.all([bestNumber(client, ws), finalizedNumber(client, ws)]);
36
+ return { best: BigInt(best), finalized, at: now() };
37
+ }
38
+ export function describeApprovalPin(pin, restarted) {
39
+ const numbers = `relay best #${pin.best}, finalized #${pin.finalized}: ${pin.gap} blocks behind for ${Math.round(pin.heldMs / 1000)} s, at or past ${APPROVAL_PIN_GAP} (approval-distribution's level-1 threshold is 16)`;
40
+ return restarted
41
+ ? `finality pinned at the approval threshold after a session change; restarted once (${numbers})`
42
+ : `finality pinned at the approval threshold after a session change, again after one restart (${numbers})`;
43
+ }
44
+ export class RelayPinSampler {
45
+ client;
46
+ ws;
47
+ policy;
48
+ restartsSoFar;
49
+ watch;
50
+ readAt = 0;
51
+ last;
52
+ lastError;
53
+ constructor(client, ws, policy,
54
+ restartsSoFar) {
55
+ this.client = client;
56
+ this.ws = ws;
57
+ this.policy = policy;
58
+ this.restartsSoFar = restartsSoFar;
59
+ this.watch = new ApprovalPinWatch(policy.gap, policy.holdMs);
60
+ }
61
+ async read(force = false) {
62
+ if (!force && Date.now() - this.readAt < this.policy.pollMs)
63
+ return this.last;
64
+ this.readAt = Date.now();
65
+ try {
66
+ this.last = this.watch.observe(await relayHeads(this.client, this.ws));
67
+ this.lastError = undefined;
68
+ }
69
+ catch (error) {
70
+ this.lastError = error instanceof Error ? error.message : String(error);
71
+ this.last = undefined;
72
+ }
73
+ return this.last;
74
+ }
75
+ verdict(state) {
76
+ if (state?.state !== "pinned")
77
+ return undefined;
78
+ const { pin } = state;
79
+ return {
80
+ kind: "pinned",
81
+ reason: describeApprovalPin(pin, this.restartsSoFar < APPROVAL_PIN_RESTARTS),
82
+ detail: { relay: { best: pin.best.toString(), finalized: pin.finalized.toString(), gap: pin.gap.toString(), heldMs: pin.heldMs } },
83
+ };
84
+ }
85
+ async settle(pendingMs, watching, signal) {
86
+ const until = Date.now() + pendingMs;
87
+ for (;;) {
88
+ signal?.throwIfAborted();
89
+ const state = await this.read(true);
90
+ if (state?.state === "pending" && Date.now() >= until)
91
+ return undefined;
92
+ if (state?.state !== "watching" && state?.state !== "pending")
93
+ return this.verdict(state);
94
+ watching(state);
95
+ await delay(this.policy.pollMs);
96
+ }
97
+ }
98
+ }
@@ -0,0 +1,55 @@
1
+ import type { JsonRpcClient } from "@parity/product-lab/ports/system";
2
+ /** `Timestamp.Now`'s storage key: twox128("Timestamp") ++ twox128("Now"). */
3
+ export declare const TIMESTAMP_NOW_KEY = "0xf0c365c3cf59d671eb72da0e7a4113c49f1f0515f462cdcf84e0f1d6045dfcbb";
4
+ /** How far behind the wall clock a chain's time may be: well inside the identity backend's 600 s. */
5
+ export declare const CHAIN_CLOCK_MAX_LAG_MS = 120000;
6
+ /** How long a start waits for every chain's time to catch up. */
7
+ export declare const CHAIN_CLOCK_TIMEOUT_MS = 120000;
8
+ /** One chain whose time is checked. */
9
+ export interface ClockedChain {
10
+ readonly id: string;
11
+ readonly name: string;
12
+ readonly ws: string;
13
+ }
14
+ /** A chain's time and best block, as read once. */
15
+ export interface ChainTime {
16
+ readonly chain: ClockedChain;
17
+ /** `Timestamp.Now` at the best block (ms since the epoch). */
18
+ readonly at: number;
19
+ readonly best: number;
20
+ }
21
+ /** A chain's time and how far it is behind the wall clock when read (negative: ahead). */
22
+ export type ChainLag = ChainTime & {
23
+ readonly lagMs: number;
24
+ };
25
+ /** Every chain that has not caught up, with how far behind it is. */
26
+ export declare class ChainClockBehindError extends Error {
27
+ readonly behind: readonly ChainLag[];
28
+ readonly waitedMs: number;
29
+ constructor(behind: readonly ChainLag[], waitedMs: number);
30
+ }
31
+ /** `chain`'s `Timestamp.Now` and best block number, read at its best block. */
32
+ export declare function chainTime(client: JsonRpcClient, chain: ClockedChain, signal?: AbortSignal): Promise<ChainTime>;
33
+ /** A SCALE `u64` (little-endian, 8 bytes) given as hex. */
34
+ export declare function decodeMoment(hex: string, name: string): number;
35
+ export interface ChainClockOptions {
36
+ maxLagMs?: number;
37
+ timeoutMs?: number;
38
+ pollMs?: number;
39
+ /** The wall clock (ms since the epoch). */
40
+ now?: () => number;
41
+ wait?: (ms: number) => Promise<void>;
42
+ signal?: AbortSignal;
43
+ /** Told what is still behind while the wait lasts. */
44
+ waiting?: (behind: readonly ChainLag[]) => void;
45
+ /** Told every chain's time and lag at each read (the first read is how far behind the resume found them). */
46
+ onRead?: (times: readonly ChainLag[]) => void;
47
+ }
48
+ /**
49
+ * Wait until every chain's time is within `maxLagMs` of the wall clock (a chain ahead of it is fine: its node's clock
50
+ * may run a little fast). Returns the times read last; throws `ChainClockBehindError` when one has not caught up by
51
+ * `timeoutMs`. A chain that does not answer fails as its read does.
52
+ */
53
+ export declare function waitForChainClocks(client: JsonRpcClient, chains: readonly ClockedChain[], options?: ChainClockOptions): Promise<readonly ChainTime[]>;
54
+ /** A duration as people read it: `45 s`, `12 min`, `3 h 14 min`. */
55
+ export declare function span(ms: number): string;
@@ -0,0 +1,66 @@
1
+ // Copyright 2026 Parity Technologies (UK) Ltd.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { rpc } from "../session/readiness.js";
4
+ export const TIMESTAMP_NOW_KEY = "0xf0c365c3cf59d671eb72da0e7a4113c49f1f0515f462cdcf84e0f1d6045dfcbb";
5
+ export const CHAIN_CLOCK_MAX_LAG_MS = 120_000;
6
+ export const CHAIN_CLOCK_TIMEOUT_MS = 120_000;
7
+ export class ChainClockBehindError extends Error {
8
+ behind;
9
+ waitedMs;
10
+ constructor(behind, waitedMs) {
11
+ super(`${behind.map((chain) => `${chain.chain.name}'s time is ${span(chain.lagMs)} behind this machine's clock (best block #${chain.best})`).join("; ")} ` +
12
+ `after waiting ${span(waitedMs)}: ${behind.length === 1 ? "it is" : "they are"} not building blocks on the saved chain. ` +
13
+ "Signatures timestamped with chain time are refused: the truAPI CLI host signs its dotNS registration with Asset Hub time, " +
14
+ "and the identity backend refuses one more than 600 s old. Restart the network, or start a fresh fork.");
15
+ this.behind = behind;
16
+ this.waitedMs = waitedMs;
17
+ this.name = "ChainClockBehindError";
18
+ }
19
+ }
20
+ export async function chainTime(client, chain, signal) {
21
+ const [value, header] = await Promise.all([
22
+ rpc(client, chain.ws, "state_getStorage", [TIMESTAMP_NOW_KEY], signal),
23
+ rpc(client, chain.ws, "chain_getHeader", [], signal),
24
+ ]);
25
+ return { chain, at: decodeMoment(value, chain.name), best: Number.parseInt(header.number, 16) };
26
+ }
27
+ export function decodeMoment(hex, name) {
28
+ const bytes = /^0x([0-9a-f]{16})$/i.exec(hex)?.[1];
29
+ if (!bytes)
30
+ throw new Error(`${name}'s Timestamp.Now is not a u64: ${hex}`);
31
+ let value = 0n;
32
+ for (let index = 7; index >= 0; index--)
33
+ value = (value << 8n) | BigInt(Number.parseInt(bytes.slice(index * 2, index * 2 + 2), 16));
34
+ return Number(value);
35
+ }
36
+ export async function waitForChainClocks(client, chains, options = {}) {
37
+ const now = options.now ?? Date.now;
38
+ const wait = options.wait ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
39
+ const maxLagMs = options.maxLagMs ?? CHAIN_CLOCK_MAX_LAG_MS;
40
+ const timeoutMs = options.timeoutMs ?? CHAIN_CLOCK_TIMEOUT_MS;
41
+ const started = now();
42
+ for (;;) {
43
+ options.signal?.throwIfAborted();
44
+ const times = await Promise.all(chains.map((chain) => chainTime(client, chain, options.signal)));
45
+ const read = now();
46
+ const lags = times.map((time) => ({ ...time, lagMs: read - time.at }));
47
+ options.onRead?.(lags);
48
+ const behind = lags.filter((time) => time.lagMs > maxLagMs);
49
+ if (!behind.length)
50
+ return times;
51
+ if (read - started >= timeoutMs)
52
+ throw new ChainClockBehindError(behind, read - started);
53
+ options.waiting?.(behind);
54
+ await wait(options.pollMs ?? 2000);
55
+ }
56
+ }
57
+ export function span(ms) {
58
+ const seconds = Math.round(ms / 1000);
59
+ if (seconds < 120)
60
+ return `${seconds} s`;
61
+ const minutes = Math.round(seconds / 60);
62
+ if (minutes < 120)
63
+ return `${minutes} min`;
64
+ const hours = Math.floor(minutes / 60);
65
+ return `${hours} h ${minutes % 60} min`;
66
+ }
@@ -0,0 +1,52 @@
1
+ import type { FileSystem, HeldLock, LockManager, LockOwner, Logger, OwnedProcesses, ProcessRunner } from "@parity/product-lab/ports/system";
2
+ /** The lock beside the files it guards: `<checkout>/config/ports.env.lock`. */
3
+ export declare const checkoutPortsLock: (checkout: string) => string;
4
+ export declare class CheckoutLockTimeout extends Error {
5
+ readonly lock: string;
6
+ readonly waitedMs: number;
7
+ readonly owner?: LockOwner | undefined;
8
+ constructor(lock: string, waitedMs: number, owner?: LockOwner | undefined);
9
+ }
10
+ export interface CheckoutLockOptions {
11
+ /** Recorded in the lock's owner record (who holds it). */
12
+ network: string;
13
+ /** This lifetime's registry, recorded in the lock: every Engine and service tree it starts is recorded there. */
14
+ registry?: string;
15
+ /** Reads a dead holder's recorded registries (their status only; nothing is signalled). */
16
+ inspect?: Pick<ProcessRunner, "open">;
17
+ /** The caller's own open registry: read instead of opening its directory a second time. */
18
+ own?: OwnedProcesses;
19
+ /**
20
+ * A dead holder's members still alive: `refuse` (the default) names the workspace to stop. `own`: members alive only
21
+ * in `own` (this workspace's interrupted owner) do not block recovery; the caller stops them while it holds the lock.
22
+ */
23
+ survivors?: "refuse" | "own";
24
+ /** Retained for compatibility; checkout contention now refuses immediately, without waiting. */
25
+ waitMs: number;
26
+ signal?: AbortSignal;
27
+ /** Called once when another network holds the checkout, before refusing. */
28
+ waiting?: (owner: LockOwner | undefined) => void;
29
+ /** Reports a verified stale owner whose lock was recovered. */
30
+ recovered?: (owner: LockOwner) => void;
31
+ }
32
+ /**
33
+ * Exclusive per checkout, enforced from before start until stop has joined Engine's finishGroup. A lock whose holder
34
+ * is gone is recovered only when the holder is fingerprinted and every member of every registry it recorded is gone
35
+ * too: Engine's trees run detached, so a dead lab can leave a live Engine whose cleanup sweeps the checkout later.
36
+ */
37
+ export declare function acquireCheckoutPorts(locks: LockManager | undefined, checkout: string | undefined, options: CheckoutLockOptions): Promise<HeldLock | undefined>;
38
+ /**
39
+ * What an interrupted owner left running in a workspace's registry (PersistentNetworkOptions.survivors), stopped while
40
+ * this lab holds the lock of every Engine checkout the workspace names: stopping a leftover `ppn` runs Engine's cleanup,
41
+ * which sweeps its checkout's services, so it never runs while another workspace may be live there. The lock of a
42
+ * dead holder is recovered only when its live members are this registry's. A workspace that names no Engine checkout
43
+ * (an attached network) holds no Engine tree of the lab's, and its leftovers are stopped as they are.
44
+ */
45
+ export declare function stopWorkspaceSurvivors(directory: string, system: {
46
+ processes: OwnedProcesses;
47
+ registries?: Pick<ProcessRunner, "open">;
48
+ locks?: LockManager | undefined;
49
+ logger: Pick<Logger, "warn">;
50
+ }, named: (string | undefined)[], signal?: AbortSignal): Promise<void>;
51
+ /** The checkout engine.json names, if it can be read (readEngineConfiguration reports an unreadable one). */
52
+ export declare function namedCheckout(files: Pick<FileSystem, "readJson">, engineConfig: string | undefined): string | undefined;