@reticlehq/server 2.1.0 → 2.2.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 (436) 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 +18 -2
  42. package/dist/cli-parse.d.ts.map +1 -1
  43. package/dist/cli-parse.js +57 -0
  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.map +1 -1
  50. package/dist/cli-verify.js +29 -10
  51. package/dist/cli-verify.js.map +1 -1
  52. package/dist/cli.d.ts.map +1 -1
  53. package/dist/cli.js +81 -2
  54. package/dist/cli.js.map +1 -1
  55. package/dist/crawl/crawl-tools.d.ts.map +1 -1
  56. package/dist/crawl/crawl-tools.js +12 -0
  57. package/dist/crawl/crawl-tools.js.map +1 -1
  58. package/dist/crawl/crawl.d.ts +23 -1
  59. package/dist/crawl/crawl.d.ts.map +1 -1
  60. package/dist/crawl/crawl.js +36 -9
  61. package/dist/crawl/crawl.js.map +1 -1
  62. package/dist/daemon-resilience.d.ts +5 -5
  63. package/dist/daemon-resilience.js +5 -5
  64. package/dist/daemon.d.ts +1 -1
  65. package/dist/daemon.js +1 -1
  66. package/dist/domain/domain-tools.d.ts.map +1 -1
  67. package/dist/domain/domain-tools.js +11 -1
  68. package/dist/domain/domain-tools.js.map +1 -1
  69. package/dist/domain/flow-risk.d.ts +4 -4
  70. package/dist/domain/flow-risk.js +4 -4
  71. package/dist/ee/audit-log.d.ts +2 -2
  72. package/dist/ee/audit-log.js +2 -2
  73. package/dist/events/event-filters.d.ts +29 -1
  74. package/dist/events/event-filters.d.ts.map +1 -1
  75. package/dist/events/event-filters.js +75 -1
  76. package/dist/events/event-filters.js.map +1 -1
  77. package/dist/events/predicate-eval.d.ts +15 -0
  78. package/dist/events/predicate-eval.d.ts.map +1 -1
  79. package/dist/events/predicate-eval.js +97 -18
  80. package/dist/events/predicate-eval.js.map +1 -1
  81. package/dist/events/predicate.d.ts +22 -1
  82. package/dist/events/predicate.d.ts.map +1 -1
  83. package/dist/events/predicate.js +154 -20
  84. package/dist/events/predicate.js.map +1 -1
  85. package/dist/events/ring-buffer.d.ts +3 -3
  86. package/dist/events/ring-buffer.d.ts.map +1 -1
  87. package/dist/events/ring-buffer.js +54 -8
  88. package/dist/events/ring-buffer.js.map +1 -1
  89. package/dist/flows/affected.d.ts +25 -0
  90. package/dist/flows/affected.d.ts.map +1 -0
  91. package/dist/flows/affected.js +36 -0
  92. package/dist/flows/affected.js.map +1 -0
  93. package/dist/flows/annotate.d.ts +4 -4
  94. package/dist/flows/annotate.js +4 -4
  95. package/dist/flows/assertion-integrity.d.ts +24 -0
  96. package/dist/flows/assertion-integrity.d.ts.map +1 -0
  97. package/dist/flows/assertion-integrity.js +27 -0
  98. package/dist/flows/assertion-integrity.js.map +1 -0
  99. package/dist/flows/assertion-tiers-store.d.ts +80 -0
  100. package/dist/flows/assertion-tiers-store.d.ts.map +1 -0
  101. package/dist/flows/assertion-tiers-store.js +99 -0
  102. package/dist/flows/assertion-tiers-store.js.map +1 -0
  103. package/dist/flows/buddy-status.d.ts +25 -0
  104. package/dist/flows/buddy-status.d.ts.map +1 -0
  105. package/dist/flows/buddy-status.js +33 -0
  106. package/dist/flows/buddy-status.js.map +1 -0
  107. package/dist/flows/coverage.d.ts +28 -0
  108. package/dist/flows/coverage.d.ts.map +1 -0
  109. package/dist/flows/coverage.js +22 -0
  110. package/dist/flows/coverage.js.map +1 -0
  111. package/dist/flows/decision.d.ts.map +1 -1
  112. package/dist/flows/decision.js +16 -8
  113. package/dist/flows/decision.js.map +1 -1
  114. package/dist/flows/flake-store.d.ts +20 -0
  115. package/dist/flows/flake-store.d.ts.map +1 -0
  116. package/dist/flows/flake-store.js +59 -0
  117. package/dist/flows/flake-store.js.map +1 -0
  118. package/dist/flows/flake.d.ts +58 -0
  119. package/dist/flows/flake.d.ts.map +1 -0
  120. package/dist/flows/flake.js +36 -0
  121. package/dist/flows/flake.js.map +1 -0
  122. package/dist/flows/flow-classify.d.ts +8 -8
  123. package/dist/flows/flow-classify.js +8 -8
  124. package/dist/flows/flow-replay-run.d.ts.map +1 -1
  125. package/dist/flows/flow-replay-run.js +36 -0
  126. package/dist/flows/flow-replay-run.js.map +1 -1
  127. package/dist/flows/flow-replay.d.ts +9 -0
  128. package/dist/flows/flow-replay.d.ts.map +1 -1
  129. package/dist/flows/flow-replay.js +48 -13
  130. package/dist/flows/flow-replay.js.map +1 -1
  131. package/dist/flows/flow-report.d.ts +4 -4
  132. package/dist/flows/flow-sources.d.ts +20 -0
  133. package/dist/flows/flow-sources.d.ts.map +1 -0
  134. package/dist/flows/flow-sources.js +33 -0
  135. package/dist/flows/flow-sources.js.map +1 -0
  136. package/dist/flows/flow-tools.d.ts +13 -1
  137. package/dist/flows/flow-tools.d.ts.map +1 -1
  138. package/dist/flows/flow-tools.js +92 -5
  139. package/dist/flows/flow-tools.js.map +1 -1
  140. package/dist/flows/flows.d.ts +9 -4
  141. package/dist/flows/flows.d.ts.map +1 -1
  142. package/dist/flows/flows.js +38 -21
  143. package/dist/flows/flows.js.map +1 -1
  144. package/dist/flows/gate.d.ts +39 -0
  145. package/dist/flows/gate.d.ts.map +1 -0
  146. package/dist/flows/gate.js +34 -0
  147. package/dist/flows/gate.js.map +1 -0
  148. package/dist/flows/git-changed.d.ts +9 -0
  149. package/dist/flows/git-changed.d.ts.map +1 -0
  150. package/dist/flows/git-changed.js +25 -0
  151. package/dist/flows/git-changed.js.map +1 -0
  152. package/dist/flows/heal-run.d.ts +1 -1
  153. package/dist/flows/heal-run.js +1 -1
  154. package/dist/flows/parallel-suite.d.ts +27 -0
  155. package/dist/flows/parallel-suite.d.ts.map +1 -0
  156. package/dist/flows/parallel-suite.js +51 -0
  157. package/dist/flows/parallel-suite.js.map +1 -0
  158. package/dist/flows/replay.d.ts.map +1 -1
  159. package/dist/flows/replay.js +33 -11
  160. package/dist/flows/replay.js.map +1 -1
  161. package/dist/flows/watch-batcher.d.ts +18 -0
  162. package/dist/flows/watch-batcher.d.ts.map +1 -0
  163. package/dist/flows/watch-batcher.js +20 -0
  164. package/dist/flows/watch-batcher.js.map +1 -0
  165. package/dist/honesty/blind-spots.d.ts +37 -0
  166. package/dist/honesty/blind-spots.d.ts.map +1 -0
  167. package/dist/honesty/blind-spots.js +57 -0
  168. package/dist/honesty/blind-spots.js.map +1 -0
  169. package/dist/honesty/honesty.d.ts +57 -0
  170. package/dist/honesty/honesty.d.ts.map +1 -0
  171. package/dist/honesty/honesty.js +63 -0
  172. package/dist/honesty/honesty.js.map +1 -0
  173. package/dist/http-server.d.ts +5 -5
  174. package/dist/http-server.js +4 -4
  175. package/dist/idle-shutdown.d.ts +2 -2
  176. package/dist/idle-shutdown.js +2 -2
  177. package/dist/index.d.ts +3 -2
  178. package/dist/index.d.ts.map +1 -1
  179. package/dist/index.js +98 -13
  180. package/dist/index.js.map +1 -1
  181. package/dist/init/agent-rules.d.ts +38 -0
  182. package/dist/init/agent-rules.d.ts.map +1 -0
  183. package/dist/init/agent-rules.js +65 -0
  184. package/dist/init/agent-rules.js.map +1 -0
  185. package/dist/init/plan.d.ts +6 -0
  186. package/dist/init/plan.d.ts.map +1 -1
  187. package/dist/init/plan.js +79 -3
  188. package/dist/init/plan.js.map +1 -1
  189. package/dist/init/run.d.ts.map +1 -1
  190. package/dist/init/run.js +4 -0
  191. package/dist/init/run.js.map +1 -1
  192. package/dist/init/snippets.js +1 -1
  193. package/dist/init/vite-config.d.ts +1 -1
  194. package/dist/init/vite-config.js +2 -2
  195. package/dist/init/vite-config.js.map +1 -1
  196. package/dist/input/network-detail.d.ts +74 -0
  197. package/dist/input/network-detail.d.ts.map +1 -0
  198. package/dist/input/network-detail.js +160 -0
  199. package/dist/input/network-detail.js.map +1 -0
  200. package/dist/input/network-mock.d.ts +4 -4
  201. package/dist/input/real-input.d.ts +44 -11
  202. package/dist/input/real-input.d.ts.map +1 -1
  203. package/dist/input/real-input.js +57 -9
  204. package/dist/input/real-input.js.map +1 -1
  205. package/dist/journal/ambient-store.d.ts +16 -0
  206. package/dist/journal/ambient-store.d.ts.map +1 -0
  207. package/dist/journal/ambient-store.js +46 -0
  208. package/dist/journal/ambient-store.js.map +1 -0
  209. package/dist/journal/ambient.d.ts +48 -0
  210. package/dist/journal/ambient.d.ts.map +1 -0
  211. package/dist/journal/ambient.js +48 -0
  212. package/dist/journal/ambient.js.map +1 -0
  213. package/dist/journal/attach-journal.d.ts +22 -0
  214. package/dist/journal/attach-journal.d.ts.map +1 -0
  215. package/dist/journal/attach-journal.js +20 -0
  216. package/dist/journal/attach-journal.js.map +1 -0
  217. package/dist/journal/deviation-report.d.ts +28 -0
  218. package/dist/journal/deviation-report.d.ts.map +1 -0
  219. package/dist/journal/deviation-report.js +54 -0
  220. package/dist/journal/deviation-report.js.map +1 -0
  221. package/dist/journal/deviation-service.d.ts +12 -0
  222. package/dist/journal/deviation-service.d.ts.map +1 -0
  223. package/dist/journal/deviation-service.js +32 -0
  224. package/dist/journal/deviation-service.js.map +1 -0
  225. package/dist/journal/envelope-store.d.ts +19 -0
  226. package/dist/journal/envelope-store.d.ts.map +1 -0
  227. package/dist/journal/envelope-store.js +62 -0
  228. package/dist/journal/envelope-store.js.map +1 -0
  229. package/dist/journal/envelope.d.ts +232 -0
  230. package/dist/journal/envelope.d.ts.map +1 -0
  231. package/dist/journal/envelope.js +94 -0
  232. package/dist/journal/envelope.js.map +1 -0
  233. package/dist/journal/journal-query.d.ts +20 -0
  234. package/dist/journal/journal-query.d.ts.map +1 -0
  235. package/dist/journal/journal-query.js +28 -0
  236. package/dist/journal/journal-query.js.map +1 -0
  237. package/dist/journal/journal-recorder.d.ts +38 -0
  238. package/dist/journal/journal-recorder.d.ts.map +1 -0
  239. package/dist/journal/journal-recorder.js +81 -0
  240. package/dist/journal/journal-recorder.js.map +1 -0
  241. package/dist/journal/retention.d.ts +21 -0
  242. package/dist/journal/retention.d.ts.map +1 -0
  243. package/dist/journal/retention.js +50 -0
  244. package/dist/journal/retention.js.map +1 -0
  245. package/dist/journal/rollups.d.ts +49 -0
  246. package/dist/journal/rollups.d.ts.map +1 -0
  247. package/dist/journal/rollups.js +83 -0
  248. package/dist/journal/rollups.js.map +1 -0
  249. package/dist/journal/session-end.d.ts +32 -0
  250. package/dist/journal/session-end.d.ts.map +1 -0
  251. package/dist/journal/session-end.js +52 -0
  252. package/dist/journal/session-end.js.map +1 -0
  253. package/dist/journal/session-journal.d.ts +25 -0
  254. package/dist/journal/session-journal.d.ts.map +1 -0
  255. package/dist/journal/session-journal.js +168 -0
  256. package/dist/journal/session-journal.js.map +1 -0
  257. package/dist/license/license.d.ts +8 -3
  258. package/dist/license/license.d.ts.map +1 -1
  259. package/dist/license/license.js +34 -11
  260. package/dist/license/license.js.map +1 -1
  261. package/dist/mcp-proxy.d.ts +20 -0
  262. package/dist/mcp-proxy.d.ts.map +1 -1
  263. package/dist/mcp-proxy.js +45 -27
  264. package/dist/mcp-proxy.js.map +1 -1
  265. package/dist/mcp.d.ts +14 -0
  266. package/dist/mcp.d.ts.map +1 -1
  267. package/dist/mcp.js +79 -9
  268. package/dist/mcp.js.map +1 -1
  269. package/dist/oracles/flow-instrument-gaps.d.ts +19 -0
  270. package/dist/oracles/flow-instrument-gaps.d.ts.map +1 -0
  271. package/dist/oracles/flow-instrument-gaps.js +45 -0
  272. package/dist/oracles/flow-instrument-gaps.js.map +1 -0
  273. package/dist/oracles/propose-consequences.d.ts +22 -0
  274. package/dist/oracles/propose-consequences.d.ts.map +1 -0
  275. package/dist/oracles/propose-consequences.js +93 -0
  276. package/dist/oracles/propose-consequences.js.map +1 -0
  277. package/dist/oracles/self-instrument.d.ts +32 -0
  278. package/dist/oracles/self-instrument.d.ts.map +1 -0
  279. package/dist/oracles/self-instrument.js +44 -0
  280. package/dist/oracles/self-instrument.js.map +1 -0
  281. package/dist/pairing-token.d.ts +1 -1
  282. package/dist/phenomena/phenomena.d.ts +27 -0
  283. package/dist/phenomena/phenomena.d.ts.map +1 -0
  284. package/dist/phenomena/phenomena.js +102 -0
  285. package/dist/phenomena/phenomena.js.map +1 -0
  286. package/dist/pool/browser-pool.d.ts +5 -3
  287. package/dist/pool/browser-pool.d.ts.map +1 -1
  288. package/dist/pool/browser-pool.js +21 -3
  289. package/dist/pool/browser-pool.js.map +1 -1
  290. package/dist/pool/playwright-launcher.d.ts.map +1 -1
  291. package/dist/pool/playwright-launcher.js +9 -2
  292. package/dist/pool/playwright-launcher.js.map +1 -1
  293. package/dist/project/file-lock.d.ts +2 -0
  294. package/dist/project/file-lock.d.ts.map +1 -0
  295. package/dist/project/file-lock.js +24 -0
  296. package/dist/project/file-lock.js.map +1 -0
  297. package/dist/project/fs-port.d.ts +18 -0
  298. package/dist/project/fs-port.d.ts.map +1 -1
  299. package/dist/project/fs-port.js +24 -2
  300. package/dist/project/fs-port.js.map +1 -1
  301. package/dist/project/project-store.d.ts.map +1 -1
  302. package/dist/project/project-store.js +13 -7
  303. package/dist/project/project-store.js.map +1 -1
  304. package/dist/project/project-tools.d.ts +0 -6
  305. package/dist/project/project-tools.d.ts.map +1 -1
  306. package/dist/project/project-tools.js +24 -1
  307. package/dist/project/project-tools.js.map +1 -1
  308. package/dist/project/reticle-dir.d.ts +39 -14
  309. package/dist/project/reticle-dir.d.ts.map +1 -1
  310. package/dist/project/reticle-dir.js +30 -4
  311. package/dist/project/reticle-dir.js.map +1 -1
  312. package/dist/runs/build-verification-run.d.ts +1 -1
  313. package/dist/runs/build-verification-run.js +1 -1
  314. package/dist/runs/repair-prompt.d.ts +2 -0
  315. package/dist/runs/repair-prompt.d.ts.map +1 -1
  316. package/dist/runs/repair-prompt.js +14 -1
  317. package/dist/runs/repair-prompt.js.map +1 -1
  318. package/dist/runs/reticle-runner.d.ts +1 -1
  319. package/dist/runs/reticle-runner.d.ts.map +1 -1
  320. package/dist/runs/run-diff.d.ts +34 -0
  321. package/dist/runs/run-diff.d.ts.map +1 -0
  322. package/dist/runs/run-diff.js +71 -0
  323. package/dist/runs/run-diff.js.map +1 -0
  324. package/dist/runs/run-store.d.ts +6 -1
  325. package/dist/runs/run-store.d.ts.map +1 -1
  326. package/dist/runs/run-store.js +22 -2
  327. package/dist/runs/run-store.js.map +1 -1
  328. package/dist/runs/run-tools.d.ts.map +1 -1
  329. package/dist/runs/run-tools.js +16 -3
  330. package/dist/runs/run-tools.js.map +1 -1
  331. package/dist/runs/verify-server.js +1 -1
  332. package/dist/runs/verify-server.js.map +1 -1
  333. package/dist/session/control-envelope.d.ts +9 -1
  334. package/dist/session/control-envelope.d.ts.map +1 -1
  335. package/dist/session/control-envelope.js +13 -1
  336. package/dist/session/control-envelope.js.map +1 -1
  337. package/dist/session/live-control-tools.d.ts +1 -1
  338. package/dist/session/live-control-tools.js +1 -1
  339. package/dist/session/live-control.d.ts +38 -0
  340. package/dist/session/live-control.d.ts.map +1 -0
  341. package/dist/session/live-control.js +64 -0
  342. package/dist/session/live-control.js.map +1 -0
  343. package/dist/session/observed-state.d.ts +46 -0
  344. package/dist/session/observed-state.d.ts.map +1 -0
  345. package/dist/session/observed-state.js +76 -0
  346. package/dist/session/observed-state.js.map +1 -0
  347. package/dist/session/output-budget.d.ts +9 -0
  348. package/dist/session/output-budget.d.ts.map +1 -1
  349. package/dist/session/output-budget.js +9 -0
  350. package/dist/session/output-budget.js.map +1 -1
  351. package/dist/session/review-store.d.ts +1 -1
  352. package/dist/session/review-store.d.ts.map +1 -1
  353. package/dist/session/review-store.js +2 -2
  354. package/dist/session/review-store.js.map +1 -1
  355. package/dist/session/session-manager.d.ts +9 -7
  356. package/dist/session/session-manager.d.ts.map +1 -1
  357. package/dist/session/session-manager.js +8 -8
  358. package/dist/session/session-manager.js.map +1 -1
  359. package/dist/session/session-readiness.js +1 -1
  360. package/dist/session/session-readiness.js.map +1 -1
  361. package/dist/session/session-reaper.d.ts +1 -1
  362. package/dist/session/session-reaper.js +1 -1
  363. package/dist/session/session-recommendation.d.ts +1 -1
  364. package/dist/session/session-recommendation.js +1 -1
  365. package/dist/session/session-tools.js +1 -1
  366. package/dist/session/session-tools.js.map +1 -1
  367. package/dist/session/session.d.ts +43 -11
  368. package/dist/session/session.d.ts.map +1 -1
  369. package/dist/session/session.js +115 -46
  370. package/dist/session/session.js.map +1 -1
  371. package/dist/tools/act-tools.d.ts.map +1 -1
  372. package/dist/tools/act-tools.js +252 -70
  373. package/dist/tools/act-tools.js.map +1 -1
  374. package/dist/tools/act-view.d.ts +4 -4
  375. package/dist/tools/act-view.js +4 -4
  376. package/dist/tools/browser-tools.d.ts.map +1 -1
  377. package/dist/tools/browser-tools.js +32 -8
  378. package/dist/tools/browser-tools.js.map +1 -1
  379. package/dist/tools/contract-tools.d.ts.map +1 -1
  380. package/dist/tools/contract-tools.js +5 -0
  381. package/dist/tools/contract-tools.js.map +1 -1
  382. package/dist/tools/dynamic-tools.d.ts.map +1 -1
  383. package/dist/tools/dynamic-tools.js +7 -6
  384. package/dist/tools/dynamic-tools.js.map +1 -1
  385. package/dist/tools/invoke-tool.d.ts.map +1 -1
  386. package/dist/tools/invoke-tool.js +32 -29
  387. package/dist/tools/invoke-tool.js.map +1 -1
  388. package/dist/tools/lease-tools.d.ts +16 -0
  389. package/dist/tools/lease-tools.d.ts.map +1 -1
  390. package/dist/tools/lease-tools.js +11 -0
  391. package/dist/tools/lease-tools.js.map +1 -1
  392. package/dist/tools/merge-tools.d.ts +43 -0
  393. package/dist/tools/merge-tools.d.ts.map +1 -0
  394. package/dist/tools/merge-tools.js +66 -0
  395. package/dist/tools/merge-tools.js.map +1 -0
  396. package/dist/tools/observe-tools.d.ts.map +1 -1
  397. package/dist/tools/observe-tools.js +172 -29
  398. package/dist/tools/observe-tools.js.map +1 -1
  399. package/dist/tools/profiles.d.ts +18 -13
  400. package/dist/tools/profiles.d.ts.map +1 -1
  401. package/dist/tools/profiles.js +39 -33
  402. package/dist/tools/profiles.js.map +1 -1
  403. package/dist/tools/query-paginate.d.ts +9 -2
  404. package/dist/tools/query-paginate.d.ts.map +1 -1
  405. package/dist/tools/query-paginate.js +21 -4
  406. package/dist/tools/query-paginate.js.map +1 -1
  407. package/dist/tools/read-tools.d.ts.map +1 -1
  408. package/dist/tools/read-tools.js +30 -1
  409. package/dist/tools/read-tools.js.map +1 -1
  410. package/dist/tools/snapshot-delta.d.ts +2 -0
  411. package/dist/tools/snapshot-delta.d.ts.map +1 -1
  412. package/dist/tools/snapshot-delta.js +0 -0
  413. package/dist/tools/snapshot-delta.js.map +1 -1
  414. package/dist/tools/tool-kit.d.ts +3 -2
  415. package/dist/tools/tool-kit.d.ts.map +1 -1
  416. package/dist/tools/tool-kit.js +11 -1
  417. package/dist/tools/tool-kit.js.map +1 -1
  418. package/dist/tools/tool-names.d.ts +18 -10
  419. package/dist/tools/tool-names.d.ts.map +1 -1
  420. package/dist/tools/tool-names.js +22 -13
  421. package/dist/tools/tool-names.js.map +1 -1
  422. package/dist/tools/tools-helpers.d.ts +12 -0
  423. package/dist/tools/tools-helpers.d.ts.map +1 -1
  424. package/dist/tools/tools-helpers.js +20 -0
  425. package/dist/tools/tools-helpers.js.map +1 -1
  426. package/dist/tools/tools.d.ts.map +1 -1
  427. package/dist/tools/tools.js +162 -12
  428. package/dist/tools/tools.js.map +1 -1
  429. package/dist/update/updater.d.ts +1 -1
  430. package/dist/update/updater.js +2 -2
  431. package/dist/update/updater.js.map +1 -1
  432. package/package.json +8 -3
  433. package/dist/update/update-tools.d.ts +0 -3
  434. package/dist/update/update-tools.d.ts.map +0 -1
  435. package/dist/update/update-tools.js +0 -94
  436. package/dist/update/update-tools.js.map +0 -1
@@ -0,0 +1,57 @@
1
+ /**
2
+ * The honesty block — one machine-readable field composing everything that qualifies a verdict's
3
+ * trustworthiness: the assertion grade, the attribution tier, the envelope maturity, the verified-surface
4
+ * coverage, and the capture integrity. The invariant: a green may never LOOK stronger than its honesty
5
+ * block. Harnesses gate on it (e.g. "grade ≥ net AND integrity clean"). This is pure composition +
6
+ * assessment — all five components already exist individually; wiring it onto results is a later step.
7
+ */
8
+ /** Assertion grade, strongest first — the tier the verdict actually proved. */
9
+ export declare const HonestyGrade: {
10
+ readonly SIGNAL: "signal";
11
+ readonly NET: "net";
12
+ readonly STATE: "state";
13
+ readonly PRESENCE: "presence";
14
+ readonly NONE: "none";
15
+ };
16
+ export type HonestyGrade = (typeof HonestyGrade)[keyof typeof HonestyGrade];
17
+ export interface HonestyInputs {
18
+ grade: HonestyGrade;
19
+ /** Present when a causal chain is presented; `window` = time-heuristic, never dataflow truth. */
20
+ attribution?: string;
21
+ envelopeSamples?: number;
22
+ coveragePct?: number;
23
+ coveragePartial?: boolean;
24
+ truncated?: boolean;
25
+ blindSpots?: readonly string[];
26
+ }
27
+ export interface HonestyBlock {
28
+ grade: HonestyGrade;
29
+ attribution?: string;
30
+ /** Present only when an envelope was actually sampled — never a fabricated zero. */
31
+ envelope?: {
32
+ samples: number;
33
+ sufficient: boolean;
34
+ };
35
+ /** `pct` is present only when it was measured (or provably full); `partial` is always known. */
36
+ coverage: {
37
+ pct?: number;
38
+ partial: boolean;
39
+ };
40
+ integrity: {
41
+ clean: boolean;
42
+ issues: string[];
43
+ };
44
+ }
45
+ export declare function buildHonestyBlock(inputs: HonestyInputs): HonestyBlock;
46
+ export interface HonestyBar {
47
+ /** The minimum grade a green must carry to be trusted (default: any). */
48
+ minGrade?: HonestyGrade;
49
+ /** Require capture integrity to be clean (no truncation / blind spots). */
50
+ requireIntegrityClean?: boolean;
51
+ }
52
+ /** Whether a verdict's honesty block clears the harness's bar. Reasons list every failed criterion. */
53
+ export declare function meetsHonestyBar(block: HonestyBlock, bar?: HonestyBar): {
54
+ ok: boolean;
55
+ reasons: string[];
56
+ };
57
+ //# sourceMappingURL=honesty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"honesty.d.ts","sourceRoot":"","sources":["../../src/honesty/honesty.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,+EAA+E;AAC/E,eAAO,MAAM,YAAY;;;;;;CAMf,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAgB5E,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,iGAAiG;IACjG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oFAAoF;IACpF,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC;IACpD,gGAAgG;IAChG,QAAQ,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7C,SAAS,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACjD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAwBrE;AAED,MAAM,WAAW,UAAU;IACzB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,2EAA2E;IAC3E,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,uGAAuG;AACvG,wBAAgB,eAAe,CAC7B,KAAK,EAAE,YAAY,EACnB,GAAG,GAAE,UAAe,GACnB;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CASpC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * The honesty block — one machine-readable field composing everything that qualifies a verdict's
3
+ * trustworthiness: the assertion grade, the attribution tier, the envelope maturity, the verified-surface
4
+ * coverage, and the capture integrity. The invariant: a green may never LOOK stronger than its honesty
5
+ * block. Harnesses gate on it (e.g. "grade ≥ net AND integrity clean"). This is pure composition +
6
+ * assessment — all five components already exist individually; wiring it onto results is a later step.
7
+ */
8
+ /** Assertion grade, strongest first — the tier the verdict actually proved. */
9
+ export const HonestyGrade = {
10
+ SIGNAL: 'signal',
11
+ NET: 'net',
12
+ STATE: 'state',
13
+ PRESENCE: 'presence',
14
+ NONE: 'none',
15
+ };
16
+ const GRADE_RANK = {
17
+ [HonestyGrade.SIGNAL]: 4,
18
+ [HonestyGrade.NET]: 3,
19
+ [HonestyGrade.STATE]: 2,
20
+ [HonestyGrade.PRESENCE]: 1,
21
+ [HonestyGrade.NONE]: 0,
22
+ };
23
+ /** Below this envelope sample count a deviation verdict is noise, not judgment. */
24
+ const MIN_ENVELOPE_SAMPLES = 3;
25
+ /** Coverage when the SDK reported no blind spots during the window — it saw everything it can see. */
26
+ const FULL_COVERAGE_PCT = 100;
27
+ export function buildHonestyBlock(inputs) {
28
+ const issues = [];
29
+ if (inputs.truncated === true)
30
+ issues.push('capture truncated');
31
+ for (const spot of inputs.blindSpots ?? [])
32
+ issues.push(`blind spot: ${spot}`);
33
+ // Report only what was measured. `envelope` used to be emitted unconditionally with samples=0, so
34
+ // every act carried `sufficient: false` — and the tool description tells the agent to gate on this
35
+ // block, meaning an agent that obeyed rejected 100% of green verdicts on a value that never changed.
36
+ // A field that always reads "insufficient" is worse than an absent one: it looks like a finding.
37
+ const samples = inputs.envelopeSamples;
38
+ const partial = inputs.coveragePartial ?? false;
39
+ // Nothing blind reported ⇒ the SDK saw everything it is able to see. When coverage IS partial we know
40
+ // that much but not the fraction, so the percentage is omitted rather than invented.
41
+ const pct = inputs.coveragePct ?? (partial ? undefined : FULL_COVERAGE_PCT);
42
+ return {
43
+ grade: inputs.grade,
44
+ ...(inputs.attribution === undefined ? {} : { attribution: inputs.attribution }),
45
+ ...(samples === undefined
46
+ ? {}
47
+ : { envelope: { samples, sufficient: samples >= MIN_ENVELOPE_SAMPLES } }),
48
+ coverage: { ...(pct === undefined ? {} : { pct }), partial },
49
+ integrity: { clean: issues.length === 0, issues },
50
+ };
51
+ }
52
+ /** Whether a verdict's honesty block clears the harness's bar. Reasons list every failed criterion. */
53
+ export function meetsHonestyBar(block, bar = {}) {
54
+ const reasons = [];
55
+ if (bar.minGrade !== undefined && GRADE_RANK[block.grade] < GRADE_RANK[bar.minGrade]) {
56
+ reasons.push(`grade ${block.grade} below required ${bar.minGrade}`);
57
+ }
58
+ if (bar.requireIntegrityClean === true && !block.integrity.clean) {
59
+ reasons.push(`integrity not clean: ${block.integrity.issues.join('; ')}`);
60
+ }
61
+ return { ok: reasons.length === 0, reasons };
62
+ }
63
+ //# sourceMappingURL=honesty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"honesty.js","sourceRoot":"","sources":["../../src/honesty/honesty.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;CACJ,CAAC;AAGX,MAAM,UAAU,GAAiC;IAC/C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;IACxB,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACrB,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IACvB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;CACvB,CAAC;AAEF,mFAAmF;AACnF,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,sGAAsG;AACtG,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAuB9B,MAAM,UAAU,iBAAiB,CAAC,MAAqB;IACrD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,IAAI,EAAE;QAAE,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAE/E,kGAAkG;IAClG,mGAAmG;IACnG,qGAAqG;IACrG,iGAAiG;IACjG,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC;IAChD,sGAAsG;IACtG,qFAAqF;IACrF,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAE5E,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;QAChF,GAAG,CAAC,OAAO,KAAK,SAAS;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,IAAI,oBAAoB,EAAE,EAAE,CAAC;QAC3E,QAAQ,EAAE,EAAE,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE;QAC5D,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE;KAClD,CAAC;AACJ,CAAC;AASD,uGAAuG;AACvG,MAAM,UAAU,eAAe,CAC7B,KAAmB,EACnB,MAAkB,EAAE;IAEpB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,KAAK,mBAAmB,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,GAAG,CAAC,qBAAqB,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;AAC/C,CAAC"}
@@ -6,7 +6,7 @@ export interface SharedServer {
6
6
  * Register a factory that creates a fresh McpServer per SSE connection.
7
7
  * The MCP SDK's Protocol layer only supports one transport per Server instance,
8
8
  * so each concurrent Claude Code client needs its own McpServer.
9
- * Must be called before listen().
9
+ * Must be called before listen.
10
10
  */
11
11
  attachMcp(factory: () => McpServer): void;
12
12
  /** Register the JSON the daemon returns from GET /status (live sessions + health for `reticle status`). */
@@ -22,12 +22,12 @@ export interface SharedServer {
22
22
  }
23
23
  /**
24
24
  * Creates a shared HTTP server that handles both the WebSocket bridge (browser SDK) and the
25
- * SSE MCP transport (Claude/agent). Does NOT call listen() — caller controls that.
25
+ * SSE MCP transport (Claude/agent). Does NOT call listen — caller controls that.
26
26
  *
27
27
  * Routes:
28
- * GET /mcp/sse → establishes SSE MCP session
29
- * POST /mcp/message → routes MCP messages to an active SSE session
30
- * WS /reticle → browser SDK connections (via WebSocketServer)
28
+ * GET /mcp/sse → establishes SSE MCP session
29
+ * POST /mcp/message → routes MCP messages to an active SSE session
30
+ * WS /reticle → browser SDK connections (via WebSocketServer)
31
31
  */
32
32
  export declare function createSharedServer(options?: {
33
33
  token?: string;
@@ -5,12 +5,12 @@ import { log } from './log.js';
5
5
  import { isLoopbackHost, isLocalWebOrigin, isLoopbackPeer, requestToken, tokensMatch, } from './token-auth.js';
6
6
  /**
7
7
  * Creates a shared HTTP server that handles both the WebSocket bridge (browser SDK) and the
8
- * SSE MCP transport (Claude/agent). Does NOT call listen() — caller controls that.
8
+ * SSE MCP transport (Claude/agent). Does NOT call listen — caller controls that.
9
9
  *
10
10
  * Routes:
11
- * GET /mcp/sse → establishes SSE MCP session
12
- * POST /mcp/message → routes MCP messages to an active SSE session
13
- * WS /reticle → browser SDK connections (via WebSocketServer)
11
+ * GET /mcp/sse → establishes SSE MCP session
12
+ * POST /mcp/message → routes MCP messages to an active SSE session
13
+ * WS /reticle → browser SDK connections (via WebSocketServer)
14
14
  */
15
15
  export function createSharedServer(options = {}) {
16
16
  let mcpFactory;
@@ -14,9 +14,9 @@ export interface IdleShutdownOptions {
14
14
  * Self-terminates an idle daemon so Reticle never lingers eating a user's resources (the daemon process,
15
15
  * any headless Chromium the pool launched, and the bound port) after the editor closes. The `reticle mcp`
16
16
  * proxy spawns the daemon DETACHED so it survives between turns — which means nothing else will ever
17
- * stop it; this watcher is that missing stop. Idle = `isIdle()` true continuously for `graceMs` (long
17
+ * stop it; this watcher is that missing stop. Idle = `isIdle` true continuously for `graceMs` (long
18
18
  * enough to ride out brief agent reconnects between turns). On fire it calls `onShutdown` exactly once.
19
- * The interval is `unref`'d, so it never keeps the process alive on its own; `start()` is idempotent.
19
+ * The interval is `unref`'d, so it never keeps the process alive on its own; `start` is idempotent.
20
20
  */
21
21
  export declare class IdleShutdown {
22
22
  #private;
@@ -4,9 +4,9 @@ import { log } from './log.js';
4
4
  * Self-terminates an idle daemon so Reticle never lingers eating a user's resources (the daemon process,
5
5
  * any headless Chromium the pool launched, and the bound port) after the editor closes. The `reticle mcp`
6
6
  * proxy spawns the daemon DETACHED so it survives between turns — which means nothing else will ever
7
- * stop it; this watcher is that missing stop. Idle = `isIdle()` true continuously for `graceMs` (long
7
+ * stop it; this watcher is that missing stop. Idle = `isIdle` true continuously for `graceMs` (long
8
8
  * enough to ride out brief agent reconnects between turns). On fire it calls `onShutdown` exactly once.
9
- * The interval is `unref`'d, so it never keeps the process alive on its own; `start()` is idempotent.
9
+ * The interval is `unref`'d, so it never keeps the process alive on its own; `start` is idempotent.
10
10
  */
11
11
  export class IdleShutdown {
12
12
  #timer;
package/dist/index.d.ts CHANGED
@@ -107,7 +107,7 @@ export interface StartOptions {
107
107
  /** Shared token for the verify endpoint. Defaults to env RETICLE_VERIFY_TOKEN, else open (localhost). */
108
108
  httpVerifyToken?: string;
109
109
  }
110
- /** Default localhost port for the verify HTTP endpoint (see docs/integration.md). */
110
+ /** Default localhost port for the verify HTTP endpoint (see docs/platform-integration.md). */
111
111
  export declare const RETICLE_VERIFY_DEFAULT_PORT = 7331;
112
112
  export interface RunningServer {
113
113
  bridge: Bridge;
@@ -123,10 +123,11 @@ export interface RunningServer {
123
123
  close: () => Promise<void>;
124
124
  }
125
125
  export { resolveBridgeSecurity } from './bridge-security.js';
126
+ /** Start the Reticle bridge (browser WS endpoint) and, by default, the MCP stdio server. */
126
127
  export declare function start(options?: StartOptions): Promise<RunningServer>;
127
128
  /**
128
129
  * Start the Reticle bridge in daemon mode: a single HTTP server handles both the WebSocket
129
- * bridge (browser SDK) and the SSE MCP transport (Claude/agent). Unlike start(), the MCP
130
+ * bridge (browser SDK) and the SSE MCP transport (Claude/agent). Unlike start, the MCP
130
131
  * connection is not tied to the process lifetime — Claude reconnects across sessions while
131
132
  * browser sessions persist in the daemon.
132
133
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAqBrC,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAW/B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC/D,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACtF,YAAY,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC3E,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACxF,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACnG,OAAO,EACL,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACnE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACxF,YAAY,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACzF,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAClF,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,YAAY,GACb,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7F,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,cAAc,EACd,SAAS,EACT,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,UAAU,EACV,aAAa,GACd,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+FAA+F;IAC/F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,gEAAgE;IAChE,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gGAAgG;IAChG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,sBAAsB,CAAC;IAC7F,iHAAiH;IACjH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,6GAA6G;IAC7G,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0GAA0G;IAC1G,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,+FAA+F;IAC/F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yGAAyG;IACzG,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qFAAqF;AACrF,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;oGACgG;IAChG,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB,yGAAyG;IACzG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AA4D7D,wBAAsB,KAAK,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,aAAa,CAAC,CAuE9E;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,aAAa,CAAC,CAmJpF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { join } from 'node:path';
2
2
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
- import { AGENT_STOPPED_NOTICE, RETICLE_DEFAULT_PORT, ReticleCommand, ReticleDir, ReticleEnv, LOOPBACK_HOST, ReplayStatus, } from '@reticlehq/core';
3
+ import { AGENT_STOPPED_NOTICE, RETICLE_DEFAULT_PORT, ReticleCommand, ReticleDir, ReticleEnv, LOOPBACK_HOST, ReplayStatus, EventType, } from '@reticlehq/core';
4
+ import { originOf } from './session/session-manager.js';
4
5
  import { replayNamedFlow } from './flows/flow-tools.js';
5
6
  import { createSharedServer } from './http-server.js';
6
7
  import { resolveBridgeSecurityWithAutoToken } from './bridge-security.js';
@@ -24,7 +25,11 @@ import { cpus } from 'node:os';
24
25
  import { BrowserPool } from './pool/browser-pool.js';
25
26
  import { playwrightLauncher, resolveMaxContexts } from './pool/playwright-launcher.js';
26
27
  import { LeaseReaper } from './pool/lease-reaper.js';
27
- import { readProjectId } from './cli-port.js';
28
+ import { readJournalEnabled, readProjectId } from './cli-port.js';
29
+ import { makeJournalAttach } from './journal/attach-journal.js';
30
+ import { makeSessionEnd } from './journal/session-end.js';
31
+ import { AmbientStore } from './journal/ambient-store.js';
32
+ import { pruneSessions } from './journal/retention.js';
28
33
  import { log } from './log.js';
29
34
  /** A human-facing one-liner for a panel replay verdict — ✓ passed / ⚠ drifted / ✗ errored. */
30
35
  function replayVerdictLine(result) {
@@ -63,7 +68,7 @@ export { AnnotationStore } from './flows/annotation-store.js';
63
68
  export { replayFlow, nearestTestid } from './flows/flow-replay.js';
64
69
  export { ensureReticleDir, writeContract, readContract, reticleDirPaths, flowPath, baselinePath, } from './project/reticle-dir.js';
65
70
  export { createNodeFileSystem } from './project/fs-port.js';
66
- // Replay/Verify API — the programmatic surface an OEM/CI pipeline drives (see docs/integration.md).
71
+ // Replay/Verify API — the programmatic surface an OEM/CI pipeline drives (see docs/platform-integration.md).
67
72
  export { ReticleRunner } from './runs/reticle-runner.js';
68
73
  export { createRunnerPort, defaultRunId } from './runs/runner-port.js';
69
74
  export { buildVerificationRun, computeVerdict } from './runs/build-verification-run.js';
@@ -77,7 +82,7 @@ export { createVerifyRequestListener, startVerifyServer, TOKEN_HEADER, } from '.
77
82
  export { evaluatePredicate, waitForPredicate, PredicateSchema } from './events/predicate.js';
78
83
  export { buildReactionReport } from './events/reaction.js';
79
84
  export { CdpRealInputProvider, LaunchedRealInputProvider, DriveError, performGesture, boxCenter, isPointerAction, } from './input/real-input.js';
80
- /** Default localhost port for the verify HTTP endpoint (see docs/integration.md). */
85
+ /** Default localhost port for the verify HTTP endpoint (see docs/platform-integration.md). */
81
86
  export const RETICLE_VERIFY_DEFAULT_PORT = 7331;
82
87
  export { resolveBridgeSecurity } from './bridge-security.js';
83
88
  /**
@@ -91,15 +96,81 @@ function createBrowserPool(headless) {
91
96
  : String(Date.now())}`;
92
97
  return new BrowserPool(playwrightLauncher({ headless }), { maxContexts, genSessionId });
93
98
  }
94
- /** Start the Reticle bridge (browser WS endpoint) and, by default, the MCP stdio server. */
95
99
  /**
96
- * Resolve the drive/real-input provider from options — shared by start() and startDaemon() so the
100
+ * Route CDP-authoritative network detail onto the driven session's journal.
101
+ *
102
+ * The page and the SDK session share an origin, so a NET_DETAIL is pushed to the matching connected
103
+ * session. Shared by both entry points: `startDaemon` previously omitted it entirely, so on the path
104
+ * users actually take, CDP network detail was collected and then dropped on the floor.
105
+ */
106
+ function makeNetworkDetailRouter(bridge, driveUrl) {
107
+ const driveOrigin = originOf(driveUrl ?? '');
108
+ return (detail) => {
109
+ // Route by the DOCUMENT that issued the request, not by the request's own origin.
110
+ //
111
+ // Matching the request's origin only works for same-origin calls. An app on one origin calling an
112
+ // API on another — most API calls — produced a detail matching no session, and it was dropped
113
+ // without a trace. The drive-URL fallback papered over it on the launched path and did nothing on
114
+ // the CDP-attach path, where driveUrl is undefined and the fallback compares against ''.
115
+ const pageOrigin = originOf(detail.pageUrl ?? '');
116
+ const requestOrigin = originOf(detail.url);
117
+ for (const session of bridge.sessions.all()) {
118
+ const origin = originOf(session.url);
119
+ // originOf returns `string | undefined`, NEVER '' — so the old `!== ''` guards were dead, and a
120
+ // bare `origin === requestOrigin` matched `undefined === undefined` when BOTH the session URL and
121
+ // the detail URL were unparseable. That routed a NET_DETAIL (with its response headers, incl.
122
+ // set-cookie) onto an unrelated session. Require a DEFINED origin; undefined operands then simply
123
+ // fail to match any of the three candidates.
124
+ const matches = origin !== undefined &&
125
+ (origin === pageOrigin || origin === requestOrigin || origin === driveOrigin);
126
+ if (matches) {
127
+ session.pushEvent({
128
+ t: 0,
129
+ type: EventType.NET_DETAIL,
130
+ sessionId: session.id,
131
+ data: { ...detail },
132
+ });
133
+ }
134
+ }
135
+ };
136
+ }
137
+ /**
138
+ * Wire journal capture, ambient seeding and the journal-tail flush onto a bridge.
139
+ *
140
+ * Both entry points need all three, and both used to hand-roll them. `startDaemon` only ever wired the
141
+ * first, so on the path every user actually takes (`reticle serve` / `reticle mcp`) the journal tail was
142
+ * dropped at session end and the learned ambient map was never persisted OR seeded — meaning ambient
143
+ * learning could not converge across sessions and the last events of every session were lost. The two
144
+ * call sites had already drifted once before, which is why this is one function rather than a
145
+ * copy-paste both are asked to keep in step.
146
+ */
147
+ function attachJournal(bridge, deps) {
148
+ const journalAttach = makeJournalAttach(deps);
149
+ const ambientStore = new AmbientStore(deps.fs, deps.reticleRoot);
150
+ bridge.attachSessionCreate((session) => {
151
+ journalAttach(session);
152
+ // Seed the learned ambient map so a fresh session starts knowing which regions churn, instead of
153
+ // re-learning from zero. Best-effort + async: a late seed still helps, a failure is silent.
154
+ if (deps.enabled) {
155
+ void ambientStore
156
+ .load()
157
+ .then((counts) => session.seedAmbient(counts))
158
+ .catch(() => undefined);
159
+ }
160
+ });
161
+ // Teardown: flush the journal tail to disk + persist what this session learned.
162
+ bridge.attachSessionEnd(makeSessionEnd(deps));
163
+ if (deps.enabled)
164
+ void pruneSessions(deps.fs, deps.reticleRoot);
165
+ }
166
+ /**
167
+ * Resolve the drive/real-input provider from options — shared by start and startDaemon so the
97
168
  * precedence (driveUrl launch+own → CDP attach → none) and the storageState/injectConnect plumbing
98
169
  * live in ONE place. `onNavigateError` is the entrypoint's own cleanup (close the bridge/shared server)
99
170
  * so a failed launch never leaks a WS port. A past divergence between the two paths let daemon mode
100
171
  * run with a different setup — this removes that risk.
101
172
  */
102
- async function resolveRealInput(options, onNavigateError) {
173
+ async function resolveRealInput(options, onNavigateError, onNetworkDetail) {
103
174
  const driveUrl = options.driveUrl;
104
175
  if (driveUrl !== undefined && driveUrl.length > 0) {
105
176
  const headless = options.headless ?? true;
@@ -111,6 +182,7 @@ async function resolveRealInput(options, onNavigateError) {
111
182
  headless: opts.headless,
112
183
  ...(injectConnect !== undefined ? { injectConnect } : {}),
113
184
  ...(storageState !== undefined ? { storageState } : {}),
185
+ ...(onNetworkDetail !== undefined ? { onNetworkDetail } : {}),
114
186
  }));
115
187
  const launched = factory({ driveUrl, headless });
116
188
  try {
@@ -124,11 +196,17 @@ async function resolveRealInput(options, onNavigateError) {
124
196
  }
125
197
  const cdpUrl = options.cdpUrl ?? process.env[ReticleEnv.CDP_URL];
126
198
  if (cdpUrl !== undefined && cdpUrl.length > 0) {
127
- const cdp = new CdpRealInputProvider({ cdpUrl });
199
+ // Same network sink as the launched path. Whether Reticle opened the browser or attached to one
200
+ // someone else opened has no bearing on whether it can read that browser's network.
201
+ const cdp = new CdpRealInputProvider({
202
+ cdpUrl,
203
+ ...(onNetworkDetail !== undefined ? { onNetworkDetail } : {}),
204
+ });
128
205
  return { realInput: cdp, owned: cdp };
129
206
  }
130
207
  return {};
131
208
  }
209
+ /** Start the Reticle bridge (browser WS endpoint) and, by default, the MCP stdio server. */
132
210
  export async function start(options = {}) {
133
211
  const port = options.port ?? RETICLE_DEFAULT_PORT;
134
212
  const security = await resolveBridgeSecurityWithAutoToken(options);
@@ -148,12 +226,17 @@ export async function start(options = {}) {
148
226
  // drive precedence: driveUrl (launch+own a browser) → CDP (attach) → none.
149
227
  let pool;
150
228
  let leaseReaper;
151
- const { realInput, owned } = await resolveRealInput(options, () => bridge.close());
229
+ // Route CDP-authoritative network detail (drive path only) onto the driven session's journal: the
230
+ // page and the SDK session share an origin, so a NET_DETAIL is pushed to the matching connected session.
231
+ const routeNetworkDetail = makeNetworkDetailRouter(bridge, options.driveUrl);
232
+ const { realInput, owned } = await resolveRealInput(options, () => bridge.close(), routeNetworkDetail);
152
233
  if (options.mcp !== false) {
153
- // cwd()/Date.now() are confined to start() — never inside reticle-dir.ts's pure logic (rule 7).
234
+ // cwd/Date.now are confined to start — never inside reticle-dir.ts's pure logic (rule 7).
154
235
  const fs = createNodeFileSystem();
155
236
  const reticleRoot = options.reticleRoot ?? join(process.cwd(), ReticleDir.ROOT);
156
237
  const now = options.now ?? (() => Date.now());
238
+ const journalEnabled = readJournalEnabled(process.cwd(), process.env[ReticleEnv.JOURNAL]);
239
+ attachJournal(bridge, { fs, reticleRoot, enabled: journalEnabled });
157
240
  const flows = new FlowStore(fs, reticleRoot, { now });
158
241
  const project = new ProjectStore(fs, reticleRoot, { now });
159
242
  const annotations = new AnnotationStore();
@@ -198,7 +281,7 @@ export async function start(options = {}) {
198
281
  }
199
282
  /**
200
283
  * Start the Reticle bridge in daemon mode: a single HTTP server handles both the WebSocket
201
- * bridge (browser SDK) and the SSE MCP transport (Claude/agent). Unlike start(), the MCP
284
+ * bridge (browser SDK) and the SSE MCP transport (Claude/agent). Unlike start, the MCP
202
285
  * connection is not tied to the process lifetime — Claude reconnects across sessions while
203
286
  * browser sessions persist in the daemon.
204
287
  */
@@ -207,7 +290,7 @@ export async function startDaemon(options = {}) {
207
290
  const security = await resolveBridgeSecurityWithAutoToken(options);
208
291
  const shared = createSharedServer(security.token === undefined ? {} : { token: security.token });
209
292
  const bridge = new Bridge({ port, server: shared.httpServer, ...security });
210
- // The daemon owns listen() (below), so the real bind error is reported there; absorb bridge.ready's
293
+ // The daemon owns listen (below), so the real bind error is reported there; absorb bridge.ready's
211
294
  // mirror rejection so a port collision can't surface as an unhandled promise rejection.
212
295
  void bridge.ready.catch(() => undefined);
213
296
  // `reticle status` GETs this for a live, at-a-glance view of connected tabs + their health.
@@ -236,10 +319,12 @@ export async function startDaemon(options = {}) {
236
319
  if (activeProjectId !== undefined) {
237
320
  bridge.sessions.setDefaultScope({ projectId: activeProjectId });
238
321
  }
239
- const { realInput, owned } = await resolveRealInput(options, () => shared.close());
322
+ const { realInput, owned } = await resolveRealInput(options, () => shared.close(), makeNetworkDetailRouter(bridge, options.driveUrl));
240
323
  const fs = createNodeFileSystem();
241
324
  const reticleRoot = options.reticleRoot ?? join(process.cwd(), ReticleDir.ROOT);
242
325
  const now = options.now ?? (() => Date.now());
326
+ const journalEnabled = readJournalEnabled(process.cwd(), process.env[ReticleEnv.JOURNAL]);
327
+ attachJournal(bridge, { fs, reticleRoot, enabled: journalEnabled });
243
328
  const flows = new FlowStore(fs, reticleRoot, { now });
244
329
  const project = new ProjectStore(fs, reticleRoot, { now });
245
330
  const annotations = new AnnotationStore();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * `reticle init` writes a behavioral rule into the coding agent's instruction file so the agent
3
+ * VERIFIES a feature with Reticle after building it — not only when the user remembers to say "test
4
+ * it with reticle". Registering the MCP server (mcp.ts / cursor.ts) only makes the tools AVAILABLE;
5
+ * this is the piece that makes the agent reach for them, every session, unprompted.
6
+ *
7
+ * The rule is framed as a definition-of-done (WHEN to verify, HOW, and the anti-reward-hacking guard),
8
+ * written into whichever instruction file the detected agent reads: `CLAUDE.md` (Claude Code),
9
+ * `.cursor/rules/reticle.mdc` (Cursor, `alwaysApply` so it stays in context), or `AGENTS.md` as the
10
+ * cross-agent fallback. Idempotent via a marker block — safe to append to an existing file and a
11
+ * re-run is a no-op. Mirrors the apply/already result shape used across init (see cursor.ts).
12
+ */
13
+ /** Project-root instruction files the agent re-reads every session. */
14
+ export declare const CLAUDE_MD_PATH = "CLAUDE.md";
15
+ export declare const AGENTS_MD_PATH = "AGENTS.md";
16
+ /** Cursor project rule; the frontmatter `alwaysApply` keeps it in context on every turn. */
17
+ export declare const CURSOR_RULE_PATH = ".cursor/rules/reticle.mdc";
18
+ export declare const AgentRuleStatus: {
19
+ readonly APPLY: "apply";
20
+ readonly ALREADY: "already";
21
+ };
22
+ export type AgentRuleStatus = (typeof AgentRuleStatus)[keyof typeof AgentRuleStatus];
23
+ export interface AgentRuleResult {
24
+ status: AgentRuleStatus;
25
+ /** Full file content to write when status is APPLY; the unchanged input otherwise. */
26
+ content: string;
27
+ }
28
+ /** The marker-wrapped block appended to a CLAUDE.md / AGENTS.md instruction file. */
29
+ export declare function markedBlock(): string;
30
+ /**
31
+ * Merge the managed block into a marker-delimited instruction file. Already present ⇒ no change
32
+ * (idempotent re-run). Absent/empty ⇒ the block alone. Otherwise append the block, preserving the
33
+ * existing content and a clean separating blank line.
34
+ */
35
+ export declare function mergeMarkedInstruction(existing: string | null | undefined): AgentRuleResult;
36
+ /** The Cursor rule file (.mdc): `alwaysApply` keeps the rule in every turn's context. */
37
+ export declare function cursorRuleFile(): string;
38
+ //# sourceMappingURL=agent-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-rules.d.ts","sourceRoot":"","sources":["../../src/init/agent-rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,uEAAuE;AACvE,eAAO,MAAM,cAAc,cAAc,CAAC;AAC1C,eAAO,MAAM,cAAc,cAAc,CAAC;AAC1C,4FAA4F;AAC5F,eAAO,MAAM,gBAAgB,8BAA8B,CAAC;AAkB5D,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAErF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,sFAAsF;IACtF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qFAAqF;AACrF,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,eAAe,CAU3F;AAED,yFAAyF;AACzF,wBAAgB,cAAc,IAAI,MAAM,CAQvC"}