@reticlehq/server 2.1.0 → 2.2.1

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 (471) hide show
  1. package/LICENSE-ENTERPRISE +37 -0
  2. package/README.md +5 -1
  3. package/dist/bridge-security.d.ts +1 -1
  4. package/dist/bridge-security.js +1 -1
  5. package/dist/bridge.d.ts +7 -0
  6. package/dist/bridge.d.ts.map +1 -1
  7. package/dist/bridge.js +22 -3
  8. package/dist/bridge.js.map +1 -1
  9. package/dist/bridge.test-harness.d.ts +5 -0
  10. package/dist/bridge.test-harness.d.ts.map +1 -1
  11. package/dist/bridge.test-harness.js +4 -0
  12. package/dist/bridge.test-harness.js.map +1 -1
  13. package/dist/capsule/capsule-store.d.ts +66 -0
  14. package/dist/capsule/capsule-store.d.ts.map +1 -0
  15. package/dist/capsule/capsule-store.js +110 -0
  16. package/dist/capsule/capsule-store.js.map +1 -0
  17. package/dist/capsule/capsule.d.ts +19 -0
  18. package/dist/capsule/capsule.d.ts.map +1 -0
  19. package/dist/capsule/capsule.js +36 -0
  20. package/dist/capsule/capsule.js.map +1 -0
  21. package/dist/capsule/causal-summary.d.ts +36 -0
  22. package/dist/capsule/causal-summary.d.ts.map +1 -0
  23. package/dist/capsule/causal-summary.js +111 -0
  24. package/dist/capsule/causal-summary.js.map +1 -0
  25. package/dist/capsule/divergence.d.ts +31 -0
  26. package/dist/capsule/divergence.d.ts.map +1 -0
  27. package/dist/capsule/divergence.js +41 -0
  28. package/dist/capsule/divergence.js.map +1 -0
  29. package/dist/capsule/minimize.d.ts +13 -0
  30. package/dist/capsule/minimize.d.ts.map +1 -0
  31. package/dist/capsule/minimize.js +23 -0
  32. package/dist/capsule/minimize.js.map +1 -0
  33. package/dist/capsule/predicate-to-links.d.ts +9 -0
  34. package/dist/capsule/predicate-to-links.d.ts.map +1 -0
  35. package/dist/capsule/predicate-to-links.js +31 -0
  36. package/dist/capsule/predicate-to-links.js.map +1 -0
  37. package/dist/cli-flow-commands.d.ts +31 -0
  38. package/dist/cli-flow-commands.d.ts.map +1 -0
  39. package/dist/cli-flow-commands.js +207 -0
  40. package/dist/cli-flow-commands.js.map +1 -0
  41. package/dist/cli-parse.d.ts +36 -2
  42. package/dist/cli-parse.d.ts.map +1 -1
  43. package/dist/cli-parse.js +97 -2
  44. package/dist/cli-parse.js.map +1 -1
  45. package/dist/cli-port.d.ts +10 -4
  46. package/dist/cli-port.d.ts.map +1 -1
  47. package/dist/cli-port.js +32 -6
  48. package/dist/cli-port.js.map +1 -1
  49. package/dist/cli-verify.d.ts +2 -0
  50. package/dist/cli-verify.d.ts.map +1 -1
  51. package/dist/cli-verify.js +52 -11
  52. package/dist/cli-verify.js.map +1 -1
  53. package/dist/cli.d.ts +2 -3
  54. package/dist/cli.d.ts.map +1 -1
  55. package/dist/cli.js +175 -9
  56. package/dist/cli.js.map +1 -1
  57. package/dist/cloud/cloud-config.d.ts +37 -0
  58. package/dist/cloud/cloud-config.d.ts.map +1 -0
  59. package/dist/cloud/cloud-config.js +87 -0
  60. package/dist/cloud/cloud-config.js.map +1 -0
  61. package/dist/cloud/cloud-sync.d.ts +96 -3
  62. package/dist/cloud/cloud-sync.d.ts.map +1 -1
  63. package/dist/cloud/cloud-sync.js +131 -2
  64. package/dist/cloud/cloud-sync.js.map +1 -1
  65. package/dist/cloud-cli.d.ts +4 -0
  66. package/dist/cloud-cli.d.ts.map +1 -0
  67. package/dist/cloud-cli.js +507 -0
  68. package/dist/cloud-cli.js.map +1 -0
  69. package/dist/crawl/crawl-tools.d.ts.map +1 -1
  70. package/dist/crawl/crawl-tools.js +12 -0
  71. package/dist/crawl/crawl-tools.js.map +1 -1
  72. package/dist/crawl/crawl.d.ts +23 -1
  73. package/dist/crawl/crawl.d.ts.map +1 -1
  74. package/dist/crawl/crawl.js +36 -9
  75. package/dist/crawl/crawl.js.map +1 -1
  76. package/dist/daemon-resilience.d.ts +5 -5
  77. package/dist/daemon-resilience.js +5 -5
  78. package/dist/daemon.d.ts +1 -1
  79. package/dist/daemon.d.ts.map +1 -1
  80. package/dist/daemon.js +53 -8
  81. package/dist/daemon.js.map +1 -1
  82. package/dist/domain/domain-tools.d.ts.map +1 -1
  83. package/dist/domain/domain-tools.js +11 -1
  84. package/dist/domain/domain-tools.js.map +1 -1
  85. package/dist/domain/flow-risk.d.ts +4 -4
  86. package/dist/domain/flow-risk.js +4 -4
  87. package/dist/ee/audit-log.d.ts +2 -2
  88. package/dist/ee/audit-log.js +2 -2
  89. package/dist/events/event-filters.d.ts +29 -1
  90. package/dist/events/event-filters.d.ts.map +1 -1
  91. package/dist/events/event-filters.js +75 -1
  92. package/dist/events/event-filters.js.map +1 -1
  93. package/dist/events/predicate-eval.d.ts +15 -0
  94. package/dist/events/predicate-eval.d.ts.map +1 -1
  95. package/dist/events/predicate-eval.js +97 -18
  96. package/dist/events/predicate-eval.js.map +1 -1
  97. package/dist/events/predicate.d.ts +22 -1
  98. package/dist/events/predicate.d.ts.map +1 -1
  99. package/dist/events/predicate.js +154 -20
  100. package/dist/events/predicate.js.map +1 -1
  101. package/dist/events/ring-buffer.d.ts +3 -3
  102. package/dist/events/ring-buffer.d.ts.map +1 -1
  103. package/dist/events/ring-buffer.js +54 -8
  104. package/dist/events/ring-buffer.js.map +1 -1
  105. package/dist/flows/affected.d.ts +25 -0
  106. package/dist/flows/affected.d.ts.map +1 -0
  107. package/dist/flows/affected.js +36 -0
  108. package/dist/flows/affected.js.map +1 -0
  109. package/dist/flows/annotate.d.ts +4 -4
  110. package/dist/flows/annotate.js +4 -4
  111. package/dist/flows/assertion-integrity.d.ts +24 -0
  112. package/dist/flows/assertion-integrity.d.ts.map +1 -0
  113. package/dist/flows/assertion-integrity.js +27 -0
  114. package/dist/flows/assertion-integrity.js.map +1 -0
  115. package/dist/flows/assertion-tiers-store.d.ts +80 -0
  116. package/dist/flows/assertion-tiers-store.d.ts.map +1 -0
  117. package/dist/flows/assertion-tiers-store.js +99 -0
  118. package/dist/flows/assertion-tiers-store.js.map +1 -0
  119. package/dist/flows/buddy-status.d.ts +25 -0
  120. package/dist/flows/buddy-status.d.ts.map +1 -0
  121. package/dist/flows/buddy-status.js +33 -0
  122. package/dist/flows/buddy-status.js.map +1 -0
  123. package/dist/flows/coverage.d.ts +28 -0
  124. package/dist/flows/coverage.d.ts.map +1 -0
  125. package/dist/flows/coverage.js +22 -0
  126. package/dist/flows/coverage.js.map +1 -0
  127. package/dist/flows/decision.d.ts.map +1 -1
  128. package/dist/flows/decision.js +16 -8
  129. package/dist/flows/decision.js.map +1 -1
  130. package/dist/flows/flake-store.d.ts +20 -0
  131. package/dist/flows/flake-store.d.ts.map +1 -0
  132. package/dist/flows/flake-store.js +59 -0
  133. package/dist/flows/flake-store.js.map +1 -0
  134. package/dist/flows/flake.d.ts +58 -0
  135. package/dist/flows/flake.d.ts.map +1 -0
  136. package/dist/flows/flake.js +36 -0
  137. package/dist/flows/flake.js.map +1 -0
  138. package/dist/flows/flow-classify.d.ts +8 -8
  139. package/dist/flows/flow-classify.js +8 -8
  140. package/dist/flows/flow-replay-run.d.ts.map +1 -1
  141. package/dist/flows/flow-replay-run.js +58 -5
  142. package/dist/flows/flow-replay-run.js.map +1 -1
  143. package/dist/flows/flow-replay.d.ts +9 -0
  144. package/dist/flows/flow-replay.d.ts.map +1 -1
  145. package/dist/flows/flow-replay.js +48 -13
  146. package/dist/flows/flow-replay.js.map +1 -1
  147. package/dist/flows/flow-report.d.ts +4 -4
  148. package/dist/flows/flow-sources.d.ts +20 -0
  149. package/dist/flows/flow-sources.d.ts.map +1 -0
  150. package/dist/flows/flow-sources.js +33 -0
  151. package/dist/flows/flow-sources.js.map +1 -0
  152. package/dist/flows/flow-tools.d.ts +13 -1
  153. package/dist/flows/flow-tools.d.ts.map +1 -1
  154. package/dist/flows/flow-tools.js +116 -13
  155. package/dist/flows/flow-tools.js.map +1 -1
  156. package/dist/flows/flows.d.ts +9 -4
  157. package/dist/flows/flows.d.ts.map +1 -1
  158. package/dist/flows/flows.js +38 -21
  159. package/dist/flows/flows.js.map +1 -1
  160. package/dist/flows/gate.d.ts +39 -0
  161. package/dist/flows/gate.d.ts.map +1 -0
  162. package/dist/flows/gate.js +34 -0
  163. package/dist/flows/gate.js.map +1 -0
  164. package/dist/flows/git-changed.d.ts +9 -0
  165. package/dist/flows/git-changed.d.ts.map +1 -0
  166. package/dist/flows/git-changed.js +25 -0
  167. package/dist/flows/git-changed.js.map +1 -0
  168. package/dist/flows/heal-run.d.ts +1 -1
  169. package/dist/flows/heal-run.js +1 -1
  170. package/dist/flows/parallel-suite.d.ts +27 -0
  171. package/dist/flows/parallel-suite.d.ts.map +1 -0
  172. package/dist/flows/parallel-suite.js +51 -0
  173. package/dist/flows/parallel-suite.js.map +1 -0
  174. package/dist/flows/replay.d.ts.map +1 -1
  175. package/dist/flows/replay.js +33 -11
  176. package/dist/flows/replay.js.map +1 -1
  177. package/dist/flows/server-verify.d.ts +16 -0
  178. package/dist/flows/server-verify.d.ts.map +1 -0
  179. package/dist/flows/server-verify.js +43 -0
  180. package/dist/flows/server-verify.js.map +1 -0
  181. package/dist/flows/watch-batcher.d.ts +18 -0
  182. package/dist/flows/watch-batcher.d.ts.map +1 -0
  183. package/dist/flows/watch-batcher.js +20 -0
  184. package/dist/flows/watch-batcher.js.map +1 -0
  185. package/dist/honesty/blind-spots.d.ts +37 -0
  186. package/dist/honesty/blind-spots.d.ts.map +1 -0
  187. package/dist/honesty/blind-spots.js +57 -0
  188. package/dist/honesty/blind-spots.js.map +1 -0
  189. package/dist/honesty/honesty.d.ts +57 -0
  190. package/dist/honesty/honesty.d.ts.map +1 -0
  191. package/dist/honesty/honesty.js +63 -0
  192. package/dist/honesty/honesty.js.map +1 -0
  193. package/dist/http-server.d.ts +5 -5
  194. package/dist/http-server.js +4 -4
  195. package/dist/idle-shutdown.d.ts +2 -2
  196. package/dist/idle-shutdown.js +2 -2
  197. package/dist/index.d.ts +3 -2
  198. package/dist/index.d.ts.map +1 -1
  199. package/dist/index.js +98 -13
  200. package/dist/index.js.map +1 -1
  201. package/dist/init/agent-rules.d.ts +38 -0
  202. package/dist/init/agent-rules.d.ts.map +1 -0
  203. package/dist/init/agent-rules.js +65 -0
  204. package/dist/init/agent-rules.js.map +1 -0
  205. package/dist/init/plan.d.ts +6 -0
  206. package/dist/init/plan.d.ts.map +1 -1
  207. package/dist/init/plan.js +79 -3
  208. package/dist/init/plan.js.map +1 -1
  209. package/dist/init/run.d.ts.map +1 -1
  210. package/dist/init/run.js +4 -0
  211. package/dist/init/run.js.map +1 -1
  212. package/dist/init/snippets.js +1 -1
  213. package/dist/init/vite-config.d.ts +1 -1
  214. package/dist/init/vite-config.js +2 -2
  215. package/dist/init/vite-config.js.map +1 -1
  216. package/dist/input/network-detail.d.ts +74 -0
  217. package/dist/input/network-detail.d.ts.map +1 -0
  218. package/dist/input/network-detail.js +160 -0
  219. package/dist/input/network-detail.js.map +1 -0
  220. package/dist/input/network-mock.d.ts +4 -4
  221. package/dist/input/real-input.d.ts +44 -11
  222. package/dist/input/real-input.d.ts.map +1 -1
  223. package/dist/input/real-input.js +57 -9
  224. package/dist/input/real-input.js.map +1 -1
  225. package/dist/journal/ambient-store.d.ts +16 -0
  226. package/dist/journal/ambient-store.d.ts.map +1 -0
  227. package/dist/journal/ambient-store.js +46 -0
  228. package/dist/journal/ambient-store.js.map +1 -0
  229. package/dist/journal/ambient.d.ts +48 -0
  230. package/dist/journal/ambient.d.ts.map +1 -0
  231. package/dist/journal/ambient.js +48 -0
  232. package/dist/journal/ambient.js.map +1 -0
  233. package/dist/journal/attach-journal.d.ts +22 -0
  234. package/dist/journal/attach-journal.d.ts.map +1 -0
  235. package/dist/journal/attach-journal.js +20 -0
  236. package/dist/journal/attach-journal.js.map +1 -0
  237. package/dist/journal/deviation-report.d.ts +28 -0
  238. package/dist/journal/deviation-report.d.ts.map +1 -0
  239. package/dist/journal/deviation-report.js +54 -0
  240. package/dist/journal/deviation-report.js.map +1 -0
  241. package/dist/journal/deviation-service.d.ts +12 -0
  242. package/dist/journal/deviation-service.d.ts.map +1 -0
  243. package/dist/journal/deviation-service.js +32 -0
  244. package/dist/journal/deviation-service.js.map +1 -0
  245. package/dist/journal/envelope-store.d.ts +19 -0
  246. package/dist/journal/envelope-store.d.ts.map +1 -0
  247. package/dist/journal/envelope-store.js +62 -0
  248. package/dist/journal/envelope-store.js.map +1 -0
  249. package/dist/journal/envelope.d.ts +232 -0
  250. package/dist/journal/envelope.d.ts.map +1 -0
  251. package/dist/journal/envelope.js +94 -0
  252. package/dist/journal/envelope.js.map +1 -0
  253. package/dist/journal/journal-query.d.ts +20 -0
  254. package/dist/journal/journal-query.d.ts.map +1 -0
  255. package/dist/journal/journal-query.js +28 -0
  256. package/dist/journal/journal-query.js.map +1 -0
  257. package/dist/journal/journal-recorder.d.ts +38 -0
  258. package/dist/journal/journal-recorder.d.ts.map +1 -0
  259. package/dist/journal/journal-recorder.js +81 -0
  260. package/dist/journal/journal-recorder.js.map +1 -0
  261. package/dist/journal/retention.d.ts +21 -0
  262. package/dist/journal/retention.d.ts.map +1 -0
  263. package/dist/journal/retention.js +50 -0
  264. package/dist/journal/retention.js.map +1 -0
  265. package/dist/journal/rollups.d.ts +49 -0
  266. package/dist/journal/rollups.d.ts.map +1 -0
  267. package/dist/journal/rollups.js +83 -0
  268. package/dist/journal/rollups.js.map +1 -0
  269. package/dist/journal/session-end.d.ts +32 -0
  270. package/dist/journal/session-end.d.ts.map +1 -0
  271. package/dist/journal/session-end.js +52 -0
  272. package/dist/journal/session-end.js.map +1 -0
  273. package/dist/journal/session-journal.d.ts +25 -0
  274. package/dist/journal/session-journal.d.ts.map +1 -0
  275. package/dist/journal/session-journal.js +168 -0
  276. package/dist/journal/session-journal.js.map +1 -0
  277. package/dist/license/license.d.ts +8 -3
  278. package/dist/license/license.d.ts.map +1 -1
  279. package/dist/license/license.js +34 -11
  280. package/dist/license/license.js.map +1 -1
  281. package/dist/mcp-proxy.d.ts +20 -0
  282. package/dist/mcp-proxy.d.ts.map +1 -1
  283. package/dist/mcp-proxy.js +45 -27
  284. package/dist/mcp-proxy.js.map +1 -1
  285. package/dist/mcp.d.ts +14 -0
  286. package/dist/mcp.d.ts.map +1 -1
  287. package/dist/mcp.js +79 -9
  288. package/dist/mcp.js.map +1 -1
  289. package/dist/oracles/flow-instrument-gaps.d.ts +19 -0
  290. package/dist/oracles/flow-instrument-gaps.d.ts.map +1 -0
  291. package/dist/oracles/flow-instrument-gaps.js +45 -0
  292. package/dist/oracles/flow-instrument-gaps.js.map +1 -0
  293. package/dist/oracles/propose-consequences.d.ts +22 -0
  294. package/dist/oracles/propose-consequences.d.ts.map +1 -0
  295. package/dist/oracles/propose-consequences.js +93 -0
  296. package/dist/oracles/propose-consequences.js.map +1 -0
  297. package/dist/oracles/self-instrument.d.ts +32 -0
  298. package/dist/oracles/self-instrument.d.ts.map +1 -0
  299. package/dist/oracles/self-instrument.js +44 -0
  300. package/dist/oracles/self-instrument.js.map +1 -0
  301. package/dist/pairing-token.d.ts +1 -1
  302. package/dist/phenomena/phenomena.d.ts +27 -0
  303. package/dist/phenomena/phenomena.d.ts.map +1 -0
  304. package/dist/phenomena/phenomena.js +102 -0
  305. package/dist/phenomena/phenomena.js.map +1 -0
  306. package/dist/pool/browser-pool.d.ts +5 -3
  307. package/dist/pool/browser-pool.d.ts.map +1 -1
  308. package/dist/pool/browser-pool.js +21 -3
  309. package/dist/pool/browser-pool.js.map +1 -1
  310. package/dist/pool/playwright-launcher.d.ts +2 -0
  311. package/dist/pool/playwright-launcher.d.ts.map +1 -1
  312. package/dist/pool/playwright-launcher.js +21 -2
  313. package/dist/pool/playwright-launcher.js.map +1 -1
  314. package/dist/project/baselines.d.ts.map +1 -1
  315. package/dist/project/baselines.js +5 -3
  316. package/dist/project/baselines.js.map +1 -1
  317. package/dist/project/file-lock.d.ts +2 -0
  318. package/dist/project/file-lock.d.ts.map +1 -0
  319. package/dist/project/file-lock.js +24 -0
  320. package/dist/project/file-lock.js.map +1 -0
  321. package/dist/project/fs-port.d.ts +18 -0
  322. package/dist/project/fs-port.d.ts.map +1 -1
  323. package/dist/project/fs-port.js +24 -2
  324. package/dist/project/fs-port.js.map +1 -1
  325. package/dist/project/project-store.d.ts.map +1 -1
  326. package/dist/project/project-store.js +33 -15
  327. package/dist/project/project-store.js.map +1 -1
  328. package/dist/project/project-tools.d.ts +0 -6
  329. package/dist/project/project-tools.d.ts.map +1 -1
  330. package/dist/project/project-tools.js +52 -6
  331. package/dist/project/project-tools.js.map +1 -1
  332. package/dist/project/reticle-dir.d.ts +39 -14
  333. package/dist/project/reticle-dir.d.ts.map +1 -1
  334. package/dist/project/reticle-dir.js +30 -4
  335. package/dist/project/reticle-dir.js.map +1 -1
  336. package/dist/runs/build-verification-run.d.ts +1 -1
  337. package/dist/runs/build-verification-run.js +1 -1
  338. package/dist/runs/repair-prompt.d.ts +2 -0
  339. package/dist/runs/repair-prompt.d.ts.map +1 -1
  340. package/dist/runs/repair-prompt.js +14 -1
  341. package/dist/runs/repair-prompt.js.map +1 -1
  342. package/dist/runs/reticle-runner.d.ts +1 -1
  343. package/dist/runs/reticle-runner.d.ts.map +1 -1
  344. package/dist/runs/run-diff.d.ts +34 -0
  345. package/dist/runs/run-diff.d.ts.map +1 -0
  346. package/dist/runs/run-diff.js +71 -0
  347. package/dist/runs/run-diff.js.map +1 -0
  348. package/dist/runs/run-store.d.ts +6 -1
  349. package/dist/runs/run-store.d.ts.map +1 -1
  350. package/dist/runs/run-store.js +22 -2
  351. package/dist/runs/run-store.js.map +1 -1
  352. package/dist/runs/run-tools.d.ts.map +1 -1
  353. package/dist/runs/run-tools.js +16 -3
  354. package/dist/runs/run-tools.js.map +1 -1
  355. package/dist/runs/verification-sync.d.ts +24 -0
  356. package/dist/runs/verification-sync.d.ts.map +1 -0
  357. package/dist/runs/verification-sync.js +67 -0
  358. package/dist/runs/verification-sync.js.map +1 -0
  359. package/dist/runs/verify-server.js +1 -1
  360. package/dist/runs/verify-server.js.map +1 -1
  361. package/dist/session/control-envelope.d.ts +9 -1
  362. package/dist/session/control-envelope.d.ts.map +1 -1
  363. package/dist/session/control-envelope.js +13 -1
  364. package/dist/session/control-envelope.js.map +1 -1
  365. package/dist/session/live-control-tools.d.ts +1 -1
  366. package/dist/session/live-control-tools.js +1 -1
  367. package/dist/session/live-control.d.ts +38 -0
  368. package/dist/session/live-control.d.ts.map +1 -0
  369. package/dist/session/live-control.js +64 -0
  370. package/dist/session/live-control.js.map +1 -0
  371. package/dist/session/observed-state.d.ts +46 -0
  372. package/dist/session/observed-state.d.ts.map +1 -0
  373. package/dist/session/observed-state.js +76 -0
  374. package/dist/session/observed-state.js.map +1 -0
  375. package/dist/session/output-budget.d.ts +9 -0
  376. package/dist/session/output-budget.d.ts.map +1 -1
  377. package/dist/session/output-budget.js +9 -0
  378. package/dist/session/output-budget.js.map +1 -1
  379. package/dist/session/review-store.d.ts +1 -1
  380. package/dist/session/review-store.d.ts.map +1 -1
  381. package/dist/session/review-store.js +2 -2
  382. package/dist/session/review-store.js.map +1 -1
  383. package/dist/session/session-manager.d.ts +9 -7
  384. package/dist/session/session-manager.d.ts.map +1 -1
  385. package/dist/session/session-manager.js +8 -8
  386. package/dist/session/session-manager.js.map +1 -1
  387. package/dist/session/session-readiness.js +1 -1
  388. package/dist/session/session-readiness.js.map +1 -1
  389. package/dist/session/session-reaper.d.ts +1 -1
  390. package/dist/session/session-reaper.js +1 -1
  391. package/dist/session/session-recommendation.d.ts +1 -1
  392. package/dist/session/session-recommendation.js +1 -1
  393. package/dist/session/session-tools.js +1 -1
  394. package/dist/session/session-tools.js.map +1 -1
  395. package/dist/session/session.d.ts +43 -11
  396. package/dist/session/session.d.ts.map +1 -1
  397. package/dist/session/session.js +115 -46
  398. package/dist/session/session.js.map +1 -1
  399. package/dist/telemetry/telemetry.d.ts +41 -0
  400. package/dist/telemetry/telemetry.d.ts.map +1 -0
  401. package/dist/telemetry/telemetry.js +220 -0
  402. package/dist/telemetry/telemetry.js.map +1 -0
  403. package/dist/tools/act-tools.d.ts.map +1 -1
  404. package/dist/tools/act-tools.js +252 -70
  405. package/dist/tools/act-tools.js.map +1 -1
  406. package/dist/tools/act-view.d.ts +4 -4
  407. package/dist/tools/act-view.js +4 -4
  408. package/dist/tools/browser-tools.d.ts.map +1 -1
  409. package/dist/tools/browser-tools.js +32 -8
  410. package/dist/tools/browser-tools.js.map +1 -1
  411. package/dist/tools/contract-tools.d.ts.map +1 -1
  412. package/dist/tools/contract-tools.js +5 -0
  413. package/dist/tools/contract-tools.js.map +1 -1
  414. package/dist/tools/dynamic-tools.d.ts.map +1 -1
  415. package/dist/tools/dynamic-tools.js +8 -7
  416. package/dist/tools/dynamic-tools.js.map +1 -1
  417. package/dist/tools/invoke-tool.d.ts.map +1 -1
  418. package/dist/tools/invoke-tool.js +36 -29
  419. package/dist/tools/invoke-tool.js.map +1 -1
  420. package/dist/tools/lease-tools.d.ts +16 -0
  421. package/dist/tools/lease-tools.d.ts.map +1 -1
  422. package/dist/tools/lease-tools.js +11 -0
  423. package/dist/tools/lease-tools.js.map +1 -1
  424. package/dist/tools/merge-tools.d.ts +43 -0
  425. package/dist/tools/merge-tools.d.ts.map +1 -0
  426. package/dist/tools/merge-tools.js +66 -0
  427. package/dist/tools/merge-tools.js.map +1 -0
  428. package/dist/tools/observe-tools.d.ts.map +1 -1
  429. package/dist/tools/observe-tools.js +172 -29
  430. package/dist/tools/observe-tools.js.map +1 -1
  431. package/dist/tools/profiles.d.ts +18 -13
  432. package/dist/tools/profiles.d.ts.map +1 -1
  433. package/dist/tools/profiles.js +39 -33
  434. package/dist/tools/profiles.js.map +1 -1
  435. package/dist/tools/query-paginate.d.ts +9 -2
  436. package/dist/tools/query-paginate.d.ts.map +1 -1
  437. package/dist/tools/query-paginate.js +21 -4
  438. package/dist/tools/query-paginate.js.map +1 -1
  439. package/dist/tools/read-tools.d.ts.map +1 -1
  440. package/dist/tools/read-tools.js +30 -1
  441. package/dist/tools/read-tools.js.map +1 -1
  442. package/dist/tools/snapshot-delta.d.ts +2 -0
  443. package/dist/tools/snapshot-delta.d.ts.map +1 -1
  444. package/dist/tools/snapshot-delta.js +0 -0
  445. package/dist/tools/snapshot-delta.js.map +1 -1
  446. package/dist/tools/tool-kit.d.ts +3 -2
  447. package/dist/tools/tool-kit.d.ts.map +1 -1
  448. package/dist/tools/tool-kit.js +11 -1
  449. package/dist/tools/tool-kit.js.map +1 -1
  450. package/dist/tools/tool-names.d.ts +18 -10
  451. package/dist/tools/tool-names.d.ts.map +1 -1
  452. package/dist/tools/tool-names.js +22 -13
  453. package/dist/tools/tool-names.js.map +1 -1
  454. package/dist/tools/tools-helpers.d.ts +12 -0
  455. package/dist/tools/tools-helpers.d.ts.map +1 -1
  456. package/dist/tools/tools-helpers.js +20 -0
  457. package/dist/tools/tools-helpers.js.map +1 -1
  458. package/dist/tools/tools.d.ts.map +1 -1
  459. package/dist/tools/tools.js +162 -12
  460. package/dist/tools/tools.js.map +1 -1
  461. package/dist/update/update-checker.d.ts.map +1 -1
  462. package/dist/update/update-checker.js +26 -1
  463. package/dist/update/update-checker.js.map +1 -1
  464. package/dist/update/updater.d.ts +1 -1
  465. package/dist/update/updater.js +2 -2
  466. package/dist/update/updater.js.map +1 -1
  467. package/package.json +8 -3
  468. package/dist/update/update-tools.d.ts +0 -3
  469. package/dist/update/update-tools.d.ts.map +0 -1
  470. package/dist/update/update-tools.js +0 -94
  471. package/dist/update/update-tools.js.map +0 -1
@@ -2,14 +2,14 @@
2
2
  * Classify whether a flow asserts an observable CONSEQUENCE or is "assertion-free" / presence-only.
3
3
  *
4
4
  * Why this exists (grounded in real testing behavior):
5
- * - Martin Fowler, *Assertion-Free Testing*: teams hit 100% coverage with tests that "weren't any
6
- * assertions" — green, but verifying nothing.
7
- * - Kent C. Dodds, *Make Your Test Fail*: a test that doesn't fail when you break the code gives
8
- * false security.
9
- * - Self-healing vendors (mabl, qate.ai) admit a locator healed to the WRONG element makes a test
10
- * pass green while a real regression ships — but only if the test merely checks presence.
11
- * - AI agents agree with human pass/fail only ~68% of the time (arXiv 2510.02418), so the flow
12
- * itself must carry a real oracle, not rely on the agent eyeballing success.
5
+ * - Martin Fowler, *Assertion-Free Testing*: teams hit 100% coverage with tests that "weren't any
6
+ * assertions" — green, but verifying nothing.
7
+ * - Kent C. Dodds, *Make Your Test Fail*: a test that doesn't fail when you break the code gives
8
+ * false security.
9
+ * - Self-healing vendors (mabl, qate.ai) admit a locator healed to the WRONG element makes a test
10
+ * pass green while a real regression ships — but only if the test merely checks presence.
11
+ * - AI agents agree with human pass/fail only ~68% of the time (arXiv 2510.02418), so the flow
12
+ * itself must carry a real oracle, not rely on the agent eyeballing success.
13
13
  *
14
14
  * For a flow, an FlowExpect can assert a `signal` (app emitted an event), a `net` call, or just an
15
15
  * `element` presence. signal/net are OBSERVABLE CONSEQUENCES — they can't be satisfied by a wrong
@@ -2,14 +2,14 @@
2
2
  * Classify whether a flow asserts an observable CONSEQUENCE or is "assertion-free" / presence-only.
3
3
  *
4
4
  * Why this exists (grounded in real testing behavior):
5
- * - Martin Fowler, *Assertion-Free Testing*: teams hit 100% coverage with tests that "weren't any
6
- * assertions" — green, but verifying nothing.
7
- * - Kent C. Dodds, *Make Your Test Fail*: a test that doesn't fail when you break the code gives
8
- * false security.
9
- * - Self-healing vendors (mabl, qate.ai) admit a locator healed to the WRONG element makes a test
10
- * pass green while a real regression ships — but only if the test merely checks presence.
11
- * - AI agents agree with human pass/fail only ~68% of the time (arXiv 2510.02418), so the flow
12
- * itself must carry a real oracle, not rely on the agent eyeballing success.
5
+ * - Martin Fowler, *Assertion-Free Testing*: teams hit 100% coverage with tests that "weren't any
6
+ * assertions" — green, but verifying nothing.
7
+ * - Kent C. Dodds, *Make Your Test Fail*: a test that doesn't fail when you break the code gives
8
+ * false security.
9
+ * - Self-healing vendors (mabl, qate.ai) admit a locator healed to the WRONG element makes a test
10
+ * pass green while a real regression ships — but only if the test merely checks presence.
11
+ * - AI agents agree with human pass/fail only ~68% of the time (arXiv 2510.02418), so the flow
12
+ * itself must carry a real oracle, not rely on the agent eyeballing success.
13
13
  *
14
14
  * For a flow, an FlowExpect can assert a `signal` (app emitted an event), a `net` call, or just an
15
15
  * `element` presence. signal/net are OBSERVABLE CONSEQUENCES — they can't be satisfied by a wrong
@@ -1 +1 @@
1
- {"version":3,"file":"flow-replay-run.d.ts","sourceRoot":"","sources":["../../src/flows/flow-replay-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,aAAa,EAKb,KAAK,QAAQ,EACb,KAAK,gBAAgB,EAErB,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAMzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EAAE,GACrB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,iBAAiB,EAAE,QAAQ,CAAA;CAAE,GAAG,SAAS,CAQxE;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAW5D;AA+BD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE;IAAE,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAAA;CAAE,GACvD,MAAM,GAAG,SAAS,CASpB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA8E3B;AASD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,GAAG,SAAS,CAMpB"}
1
+ {"version":3,"file":"flow-replay-run.d.ts","sourceRoot":"","sources":["../../src/flows/flow-replay-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,aAAa,EAKb,KAAK,QAAQ,EACb,KAAK,gBAAgB,EAErB,KAAK,YAAY,EAClB,MAAM,iBAAiB,CAAC;AAgBzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,EAAE,GACrB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,iBAAiB,EAAE,QAAQ,CAAA;CAAE,GAAG,SAAS,CAQxE;AAED,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAW5D;AAiDD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE;IAAE,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAAA;CAAE,GACvD,MAAM,GAAG,SAAS,CASpB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA+F3B;AA2BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,GAAG,SAAS,CAMpB"}
@@ -4,6 +4,15 @@ import { replayFlow } from './flow-replay.js';
4
4
  import { assertSuccess, dynamicTestids, successLabel, SUCCESS_STEP_TOOL } from './flow-success.js';
5
5
  import { buildDecision } from './decision.js';
6
6
  import { waitForPredicate } from '../events/predicate.js';
7
+ import { computeSegments } from '../journal/rollups.js';
8
+ import { AssertionTiersStore } from './assertion-tiers-store.js';
9
+ import { toFlowSources } from './flow-sources.js';
10
+ import { reportAndAccumulate } from '../journal/deviation-service.js';
11
+ import { EnvelopeStore } from '../journal/envelope-store.js';
12
+ import { homedir } from 'node:os';
13
+ import { syncRunRecordToCloud, SyncOutcome } from '../cloud/cloud-sync.js';
14
+ import { resolveProjectCloud } from '../cloud/cloud-config.js';
15
+ import { log } from '../log.js';
7
16
  export function latestRecordedFlow(events) {
8
17
  for (let i = events.length - 1; i >= 0; i--) {
9
18
  const event = events[i];
@@ -39,15 +48,28 @@ function replayToRunStatus(status) {
39
48
  return RunStatus.ERROR;
40
49
  }
41
50
  }
42
- /** Append a flow-replay outcome to .reticle/project.json (never throws into replay). */
43
- async function recordReplayRun(deps, name, status, driftSteps, durationMs) {
51
+ /**
52
+ * Append a flow-replay outcome to .reticle/project.json (never throws into replay) and, when logged in,
53
+ * best-effort mirror it to Reticle Cloud so the team's server-side regression history stays current. The
54
+ * cloud push is fire-and-forget: not logged in → skipped, a network failure is logged and swallowed.
55
+ */
56
+ async function recordReplayRun(deps, name, status, driftSteps, durationMs, projectId) {
57
+ const runStatus = replayToRunStatus(status);
44
58
  await deps.project.recordRun({
45
59
  kind: RunKind.FLOW_REPLAY,
46
60
  name,
47
- status: replayToRunStatus(status),
61
+ status: runStatus,
48
62
  evidence: { driftSteps },
49
63
  durationMs,
50
64
  });
65
+ // Per-project cloud: push memory outcomes only when cloud is attached AND memory sync is enabled.
66
+ const cloud = await resolveProjectCloud(deps.fs, deps.reticleRoot, homedir(), process.env);
67
+ if (cloud.config === null || !cloud.policy.memory)
68
+ return; // not attached / memory disabled → local only
69
+ const result = await syncRunRecordToCloud({ kind: RunKind.FLOW_REPLAY, name, status: runStatus, at: deps.now(), durationMs }, projectId, cloud.config, (url, init) => fetch(url, init));
70
+ if (result.outcome !== SyncOutcome.SYNCED) {
71
+ log('cloud-run-record-sync-failed', { flow: name, status: result.status, error: result.error });
72
+ }
51
73
  }
52
74
  /**
53
75
  * When a flow records the page its journey started on (`startPath`) and the tab is currently on a
@@ -90,7 +112,7 @@ export async function replayNamedFlow(deps, args) {
90
112
  }
91
113
  const loaded = await deps.flows.load(name, projectId);
92
114
  if (!loaded.ok) {
93
- await recordReplayRun(deps, name, ReplayStatus.ERROR, 0, deps.now() - startedAt);
115
+ await recordReplayRun(deps, name, ReplayStatus.ERROR, 0, deps.now() - startedAt, projectId);
94
116
  return {
95
117
  name,
96
118
  status: ReplayStatus.ERROR,
@@ -124,7 +146,19 @@ export async function replayNamedFlow(deps, args) {
124
146
  const driftSteps = steps.filter((s) => s.drift !== undefined).length;
125
147
  const allOk = steps.every((s) => s.ok);
126
148
  const status = driftSteps > 0 ? ReplayStatus.DRIFT : allOk ? ReplayStatus.OK : ReplayStatus.ERROR;
127
- await recordReplayRun(deps, name, status, driftSteps, deps.now() - startedAt);
149
+ await recordReplayRun(deps, name, status, driftSteps, deps.now() - startedAt, projectId);
150
+ // Anti-reward-hacking baseline: record what this flow asserted ONLY when it passed clean. A
151
+ // failing run must never become the baseline a later weakening is measured against.
152
+ if (status === ReplayStatus.OK) {
153
+ await new AssertionTiersStore(deps.fs, deps.reticleRoot).recordPassing(name, loaded.value.steps.map((s, i) => ({
154
+ step: i,
155
+ ...(s.expect === undefined ? {} : { expect: s.expect }),
156
+ })),
157
+ // Record what this flow COVERS so a later deletion can be scoped to the files that changed.
158
+ toFlowSources([{ name, steps: loaded.value.steps }])[0]?.sources ?? []);
159
+ }
160
+ // Push-default: the deviation report over this drive's segments, learned across runs. Best-effort.
161
+ const deviation = await computeReplayDeviation(deps, session, replayFloor);
128
162
  const failed = steps.find((step) => !step.ok && step.drift === undefined);
129
163
  if (failed !== undefined) {
130
164
  const errored = {
@@ -135,14 +169,33 @@ export async function replayNamedFlow(deps, args) {
135
169
  };
136
170
  errored.decision = buildDecision(errored, loaded.value);
137
171
  applyStartPathHint(errored, startPathHint);
172
+ if (deviation !== undefined)
173
+ errored.deviation = deviation;
138
174
  return errored;
139
175
  }
140
176
  const result = { name, status, steps };
141
177
  if (status !== ReplayStatus.OK)
142
178
  result.decision = buildDecision(result, loaded.value);
143
179
  applyStartPathHint(result, startPathHint);
180
+ if (deviation !== undefined)
181
+ result.deviation = deviation;
144
182
  return result;
145
183
  }
184
+ /**
185
+ * The deviation report over a replay's route segments — compared against the learned envelope, which is
186
+ * then updated. Best-effort: any failure (disk, empty window) yields undefined, never breaking the replay.
187
+ */
188
+ async function computeReplayDeviation(deps, session, floor) {
189
+ try {
190
+ const segments = computeSegments(session.eventsSince(floor));
191
+ if (segments.length === 0)
192
+ return undefined;
193
+ return await reportAndAccumulate(new EnvelopeStore(deps.fs, deps.reticleRoot), segments);
194
+ }
195
+ catch {
196
+ return undefined;
197
+ }
198
+ }
146
199
  /** Fold a start-page-mismatch hint onto a non-passing replay's decision (the actionable next move). */
147
200
  function applyStartPathHint(result, hint) {
148
201
  if (hint === undefined || result.decision === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"flow-replay-run.js","sourceRoot":"","sources":["../../src/flows/flow-replay-run.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,OAAO,EACP,SAAS,GAKV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,MAAM,UAAU,kBAAkB,CAChC,MAAsB;IAEtB,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAK,EAAE,IAAI,KAAK,SAAS,CAAC,aAAa;YAAE,SAAS;QACtD,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,IAAmB;IAClD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,YAAY;YAC7B,OAAO,wFAAwF,CAAC;QAClG,KAAK,aAAa,CAAC,SAAS;YAC1B,OAAO,iEAAiE,CAAC;QAC3E,KAAK,aAAa,CAAC,YAAY;YAC7B,OAAO,sEAAsE,CAAC;QAChF,KAAK,aAAa,CAAC,YAAY;YAC7B,OAAO,mFAAmF,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,wEAAwE;AACxE,SAAS,iBAAiB,CAAC,MAAoB;IAC7C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,YAAY,CAAC,EAAE;YAClB,OAAO,SAAS,CAAC,IAAI,CAAC;QACxB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,SAAS,CAAC,KAAK,CAAC;QACzB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,SAAS,CAAC,KAAK,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,wFAAwF;AACxF,KAAK,UAAU,eAAe,CAC5B,IAAc,EACd,IAAY,EACZ,MAAoB,EACpB,UAAkB,EAClB,UAAkB;IAElB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAC3B,IAAI,EAAE,OAAO,CAAC,WAAW;QACzB,IAAI;QACJ,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC;QACjC,QAAQ,EAAE,EAAE,UAAU,EAAE;QACxB,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAc,EACd,OAAwD;IAExD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxE,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,YAAY,CAAC,CAAC;IACvF,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACrE,OAAO,iCAAiC,SAAS,sBAAsB,OAAO,+CAA+C,SAAS,mBAAmB,CAAC;AAC5J,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAc,EACd,IAA6B;IAE7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,kGAAkG;IAClG,kGAAkG;IAClG,oGAAoG;IACpG,IAAI,SAA6B,CAAC;IAClC,IAAI,CAAC;QACH,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,SAAS,GAAG,SAAS,CAAC;IACxB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACtD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QACjF,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,YAAY,CAAC,KAAK;YAC1B,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;SACrE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACnE,oGAAoG;IACpG,yGAAyG;IACzG,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnE,0FAA0F;IAC1F,yCAAyC;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,UAAU,CAC5B,OAAO,EACP,MAAM,CAAC,KAAK,EACZ,gBAAgB,EAChB,sBAAsB,EACtB,IAAI,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAClC,CAAC;IACF,uFAAuF;IACvF,8FAA8F;IAC9F,6FAA6F;IAC7F,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IACzF,IAAI,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,MAAM,aAAa,CACjC,OAAO,EACP,MAAM,CAAC,KAAK,CAAC,OAAO,EACpB,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAC5B,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,CACZ,CAAC;QACF,MAAM,GAAG,GAAmB;YAC1B,IAAI,EAAE,KAAK,CAAC,MAAM;YAClB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YAC1C,EAAE,EAAE,OAAO,CAAC,IAAI;YAChB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,aAAa,IAAI,4BAA4B,EAAE,CAAC;SAC1F,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACrE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;IAClG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IAC9E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IAC1E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,OAAO,GAAqB;YAChC,IAAI;YACJ,MAAM;YACN,KAAK;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,IAAI,oBAAoB,EAAE;SACnF,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,MAAM,GAAqB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACzD,IAAI,MAAM,KAAK,YAAY,CAAC,EAAE;QAAE,MAAM,CAAC,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACtF,kBAAkB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,uGAAuG;AACvG,SAAS,kBAAkB,CAAC,MAAwB,EAAE,IAAwB;IAC5E,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO;IAChE,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;IACpC,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAc,EACd,SAA6B;IAE7B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"flow-replay-run.js","sourceRoot":"","sources":["../../src/flows/flow-replay-run.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,15 @@ import type { EvalResult, Predicate } from '../events/predicate.js';
7
7
  */
8
8
  export interface FlowReplaySession {
9
9
  command(name: string, args?: Record<string, unknown>): Promise<CommandResult>;
10
+ /**
11
+ * Attribution window around each replayed step. Optional so a minimal test double still satisfies the
12
+ * interface, but a real session MUST supply it: without a window the step's own effects carry no
13
+ * actionId, and Session.pushEvent classifies an unattributed ref-bearing event as ambient background
14
+ * churn. A 15-step flow can therefore teach the settle oracle to ignore every region the app reacts
15
+ * in — and this is the CI path, so the result is a green suite over an app that is still working.
16
+ */
17
+ beginAction?(tool: string, args: Record<string, unknown>): void;
18
+ finishAction?(error?: string, settled?: boolean, settleMs?: number): void;
10
19
  eventsSince(cursor: number): ReticleEvent[];
11
20
  onEvent(listener: (event: ReticleEvent) => void): () => void;
12
21
  /** Buffer clock (ms since connect) — required by the predicate engine's `settled` check. */
@@ -1 +1 @@
1
- {"version":3,"file":"flow-replay.d.ts","sourceRoot":"","sources":["../../src/flows/flow-replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,aAAa,EAIlB,KAAK,QAAQ,EAEb,KAAK,cAAc,EACnB,KAAK,YAAY,EAElB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIpE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IAC5C,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC7D,4FAA4F;IAC5F,OAAO,IAAI,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,KACX,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAiBzD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAkB/E;AAYD,mGAAmG;AACnG,KAAK,KAAK,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AA2B3C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAc9E;AA8QD;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,gBAAgB,UAAQ,EACxB,KAAK,GAAE,KAAiB,GACvB,OAAO,CAAC,cAAc,EAAE,CAAC,CAgD3B"}
1
+ {"version":3,"file":"flow-replay.d.ts","sourceRoot":"","sources":["../../src/flows/flow-replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,aAAa,EAIlB,KAAK,QAAQ,EAEb,KAAK,cAAc,EACnB,KAAK,YAAY,EAElB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAKpE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9E;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChE,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;IAC5C,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC7D,4FAA4F;IAC5F,OAAO,IAAI,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,KACX,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAiBzD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAkB/E;AAYD,mGAAmG;AACnG,KAAK,KAAK,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AA2B3C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAc9E;AAuSD;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,gBAAgB,UAAQ,EACxB,KAAK,GAAE,KAAiB,GACvB,OAAO,CAAC,cAAc,EAAE,CAAC,CA+D3B"}
@@ -1,6 +1,7 @@
1
1
  import { AnchorKind, DriftReason, EventType, ReticleCommand, QueryBy, } from '@reticlehq/core';
2
2
  import { asRecord, asString } from '../tools/tools-helpers.js';
3
3
  import { replayActionArgs, ambiguousTestidNote, queryRefs } from './replay.js';
4
+ import { ReticleTool } from '../tools/tool-names.js';
4
5
  /**
5
6
  * A single ASCII-ish edit distance (case-insensitive). Small inputs (testids), so O(n*m) is fine.
6
7
  * Exported so the heal proposal layer derives its confidence from the SAME distance used to
@@ -241,11 +242,21 @@ async function runComponentStep(session, step, index, anchor, confirmDangerous,
241
242
  };
242
243
  }
243
244
  const ref = refs[0] ?? '';
244
- const act = await session.command(ReticleCommand.ACT, {
245
- ref,
246
- action: step.action ?? '',
247
- args: replayActionArgs(step.args, confirmDangerous),
248
- });
245
+ // Attribute the step's effects to the step. Without this window they arrive with no actionId and are
246
+ // learned as ambient churn on the very regions the flow exercises.
247
+ session.beginAction?.(ReticleTool.FLOW_REPLAY, { ref, action: step.action ?? '' });
248
+ let act;
249
+ try {
250
+ act = await session.command(ReticleCommand.ACT, {
251
+ ref,
252
+ action: step.action ?? '',
253
+ args: replayActionArgs(step.args, confirmDangerous),
254
+ });
255
+ }
256
+ finally {
257
+ // Close on every exit so a throwing step cannot leak the window onto the next step's events.
258
+ session.finishAction?.();
259
+ }
249
260
  const result = { step: index, tool: step.tool, anchor: label, ok: act.ok };
250
261
  if (!act.ok)
251
262
  result.error = act.error ?? 'command failed';
@@ -265,11 +276,18 @@ async function runTestidStep(session, step, index, value, dynamic, confirmDanger
265
276
  }
266
277
  const ref = refs[0] ?? '';
267
278
  const note = refs.length > 1 ? ambiguousTestidNote(value) : undefined;
268
- const act = await session.command(ReticleCommand.ACT, {
269
- ref,
270
- action: step.action ?? '',
271
- args: replayActionArgs(step.args, confirmDangerous),
272
- });
279
+ session.beginAction?.(ReticleTool.FLOW_REPLAY, { ref, action: step.action ?? '' });
280
+ let act;
281
+ try {
282
+ act = await session.command(ReticleCommand.ACT, {
283
+ ref,
284
+ action: step.action ?? '',
285
+ args: replayActionArgs(step.args, confirmDangerous),
286
+ });
287
+ }
288
+ finally {
289
+ session.finishAction?.();
290
+ }
273
291
  const result = { step: index, tool: step.tool, anchor: value, ok: act.ok };
274
292
  if (!act.ok) {
275
293
  result.error = act.error ?? 'command failed';
@@ -320,8 +338,17 @@ async function assertStepState(session, state, waitForSignal, timeoutMs, since)
320
338
  };
321
339
  }
322
340
  /** Run one signal-anchored step: wait for the signal predicate, else drift (no nearest for signals). */
323
- async function runSignalStep(session, step, index, name, waitForSignal, signalTimeoutMs) {
324
- const verdict = await waitForSignal(session, { kind: 'signal', name }, signalTimeoutMs);
341
+ async function runSignalStep(session, step, index, name, waitForSignal, signalTimeoutMs, since) {
342
+ // Scope to THIS replay's floor, not the whole buffer.
343
+ //
344
+ // A signal step is a pure wait — the signal is fired by the PRECEDING act step — so a per-step floor
345
+ // would miss it (false negative). But the default whole-buffer read (since=0) was too loose in the
346
+ // one place it matters most: reticle_flow_verify replays every saved flow back-to-back in ONE
347
+ // session, so a signal an EARLIER flow emitted (`auth:granted`, `nav:changed`) sat in the buffer and
348
+ // satisfied a LATER flow's signal step even when that flow's own action never fired it — a
349
+ // cross-flow false green on the exact suite-verify path the regression-cost claim rests on. The
350
+ // replay-start floor excludes prior flows/runs while still seeing this run's adjacent-step signal.
351
+ const verdict = await waitForSignal(session, { kind: 'signal', name }, signalTimeoutMs, since);
325
352
  if (verdict.pass)
326
353
  return { step: index, tool: step.tool, anchor: name, ok: true };
327
354
  return {
@@ -349,6 +376,9 @@ export async function replayFlow(session, flow, waitForSignal, signalTimeoutMs,
349
376
  const dynamic = new Set((flow.dynamic ?? [])
350
377
  .filter((a) => a.kind === AnchorKind.TESTID)
351
378
  .map((a) => (a.kind === AnchorKind.TESTID ? a.value : '')));
379
+ // Floor for signal steps: signals that fire during THIS replay, never a prior flow/run in the same
380
+ // session. Captured once, before any step, so a back-to-back suite verify cannot cross-satisfy.
381
+ const replayFloor = session.elapsed();
352
382
  let index = 0;
353
383
  for (const step of flow.steps) {
354
384
  const label = anchorLabel(step.anchor);
@@ -358,7 +388,7 @@ export async function replayFlow(session, flow, waitForSignal, signalTimeoutMs,
358
388
  const cursorBefore = session.elapsed();
359
389
  let result;
360
390
  if (step.anchor.kind === AnchorKind.SIGNAL) {
361
- result = await runSignalStep(session, step, index, label, waitForSignal, signalTimeoutMs);
391
+ result = await runSignalStep(session, step, index, label, waitForSignal, signalTimeoutMs, replayFloor);
362
392
  }
363
393
  else if (step.anchor.kind === AnchorKind.COMPONENT) {
364
394
  result = await runComponentStep(session, step, index, step.anchor, confirmDangerous, sleep);
@@ -380,6 +410,11 @@ export async function replayFlow(session, flow, waitForSignal, signalTimeoutMs,
380
410
  const consequence = summarizeConsequence(session.eventsSince(cursorBefore).filter((e) => e.t >= cursorBefore));
381
411
  if (consequence !== undefined)
382
412
  result.consequence = consequence;
413
+ // Per-step wall time from the session's injected clock (dispatch → here, post-settle). Only set when
414
+ // the clock actually advanced, so a fixed-clock fake reads durationMs-free (additive, non-breaking).
415
+ const durationMs = session.elapsed() - cursorBefore;
416
+ if (durationMs > 0)
417
+ result.durationMs = durationMs;
383
418
  results.push(result);
384
419
  if (result.drift !== undefined || !result.ok)
385
420
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"flow-replay.js","sourceRoot":"","sources":["../../src/flows/flow-replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-replay.js","sourceRoot":"","sources":["../../src/flows/flow-replay.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,10 @@ import { type FlowFile, type FlowReplayResult } from '@reticlehq/core';
2
2
  /**
3
3
  * Render a HUMAN-facing confidence report for a replayed flow — the artifact a developer reads to
4
4
  * trust the test without re-running it. It answers the three confidence questions in one page:
5
- * WHY — the declared business intent (+ whether it is actually asserted).
6
- * WHAT — the journey: a mermaid flow diagram + a per-step page → action → consequence table.
7
- * PROOF — the verdict (pass/drift/fail), the observed evidence (signals/network), and the
8
- * measured cost (deterministic replay tokens vs an LLM re-drive).
5
+ * WHY — the declared business intent (+ whether it is actually asserted).
6
+ * WHAT — the journey: a mermaid flow diagram + a per-step page → action → consequence table.
7
+ * PROOF — the verdict (pass/drift/fail), the observed evidence (signals/network), and the
8
+ * measured cost (deterministic replay tokens vs an LLM re-drive).
9
9
  *
10
10
  * Pure: no IO, no clock. Markdown out (mermaid is the one place mermaid earns its tokens — a human
11
11
  * renders it). Token figures are passed in (measured by the caller), never faked.
@@ -0,0 +1,20 @@
1
+ import { type FlowStep } from '@reticlehq/core';
2
+ import { type AffectedResult, type FlowSources } from './affected.js';
3
+ /**
4
+ * A flow's sources manifest, DERIVED from its already-persisted step anchors — no separate storage. A
5
+ * COMPONENT anchor carries the source file its element was stamped from (via the babel/next plugin);
6
+ * collecting those files, recursively through act_sequence sub-steps, gives the set of files whose change
7
+ * should re-verify this flow. A flow with no stamped sources yields an empty manifest → unknown
8
+ * provenance → always affected (fail-safe), handled by affectedFlows.
9
+ */
10
+ export declare function flowSources(steps: readonly FlowStep[]): string[];
11
+ /** A saved flow, minimally: its name and steps. */
12
+ export interface NamedFlow {
13
+ name: string;
14
+ steps: readonly FlowStep[];
15
+ }
16
+ /** Map saved flows to the {name, sources} the affected index consumes, deriving each manifest. */
17
+ export declare function toFlowSources(flows: readonly NamedFlow[]): FlowSources[];
18
+ /** Which saved flows a set of changed files affects — the derivation + index in one call. */
19
+ export declare function affectedSavedFlows(flows: readonly NamedFlow[], changedFiles: readonly string[]): AffectedResult;
20
+ //# sourceMappingURL=flow-sources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow-sources.d.ts","sourceRoot":"","sources":["../../src/flows/flow-sources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAErF;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,GAAG,MAAM,EAAE,CAahE;AAED,mDAAmD;AACnD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;CAC5B;AAED,kGAAkG;AAClG,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,WAAW,EAAE,CAExE;AAED,6FAA6F;AAC7F,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,SAAS,EAAE,EAC3B,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,cAAc,CAEhB"}
@@ -0,0 +1,33 @@
1
+ import { AnchorKind } from '@reticlehq/core';
2
+ import { affectedFlows } from './affected.js';
3
+ /**
4
+ * A flow's sources manifest, DERIVED from its already-persisted step anchors — no separate storage. A
5
+ * COMPONENT anchor carries the source file its element was stamped from (via the babel/next plugin);
6
+ * collecting those files, recursively through act_sequence sub-steps, gives the set of files whose change
7
+ * should re-verify this flow. A flow with no stamped sources yields an empty manifest → unknown
8
+ * provenance → always affected (fail-safe), handled by affectedFlows.
9
+ */
10
+ export function flowSources(steps) {
11
+ const files = new Set();
12
+ const walk = (list) => {
13
+ for (const step of list) {
14
+ const anchor = step.anchor;
15
+ if (anchor.kind === AnchorKind.COMPONENT && anchor.source !== undefined) {
16
+ files.add(anchor.source.file);
17
+ }
18
+ if (step.steps !== undefined)
19
+ walk(step.steps);
20
+ }
21
+ };
22
+ walk(steps);
23
+ return [...files];
24
+ }
25
+ /** Map saved flows to the {name, sources} the affected index consumes, deriving each manifest. */
26
+ export function toFlowSources(flows) {
27
+ return flows.map((flow) => ({ name: flow.name, sources: flowSources(flow.steps) }));
28
+ }
29
+ /** Which saved flows a set of changed files affects — the derivation + index in one call. */
30
+ export function affectedSavedFlows(flows, changedFiles) {
31
+ return affectedFlows(toFlowSources(flows), changedFiles);
32
+ }
33
+ //# sourceMappingURL=flow-sources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow-sources.js","sourceRoot":"","sources":["../../src/flows/flow-sources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAyC,MAAM,eAAe,CAAC;AAErF;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,KAA0B;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,IAAyB,EAAQ,EAAE;QAC/C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACxE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC;IACF,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAQD,kGAAkG;AAClG,MAAM,UAAU,aAAa,CAAC,KAA2B;IACvD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,kBAAkB,CAChC,KAA2B,EAC3B,YAA+B;IAE/B,OAAO,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;AAC3D,CAAC"}
@@ -1,4 +1,16 @@
1
- import type { ToolDef } from '../tools/tools.js';
1
+ import { type FlowReplayResult } from '@reticlehq/core';
2
+ import type { ToolDef, ToolDeps } from '../tools/tools.js';
2
3
  export { replayNamedFlow } from './flow-replay-run.js';
4
+ /**
5
+ * The URL a leased context should open: the app's ORIGIN, not the live tab's current location.
6
+ *
7
+ * The live tab drifts — every replay navigates it — so using its full URL made each lease start wherever
8
+ * the previous run happened to finish (observed: leases opening /deployments and failing to find the
9
+ * login control that only exists at the root). A lease must be a FRESH visit to a deterministic entry
10
+ * point; flows that need another page carry their own startPath.
11
+ */
12
+ export declare function leasableAppUrl(deps: ToolDeps, sessionId: string | undefined): string | undefined;
13
+ /** A flow whose leased context never came up is a suite ERROR, never a silent pass. */
14
+ export declare function leaseFailureReplay(name: string, error: string | undefined): FlowReplayResult;
3
15
  export declare const FLOW_TOOLS: ToolDef[];
4
16
  //# sourceMappingURL=flow-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-tools.d.ts","sourceRoot":"","sources":["../../src/flows/flow-tools.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,mBAAmB,CAAC;AAS3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAgBvD,eAAO,MAAM,UAAU,EAAE,OAAO,EAmV/B,CAAC"}
1
+ {"version":3,"file":"flow-tools.d.ts","sourceRoot":"","sources":["../../src/flows/flow-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC;AAezB,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAW3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAuBvD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQhG;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,CAU5F;AAKD,eAAO,MAAM,UAAU,EAAE,OAAO,EA+Z/B,CAAC"}