@descryy/mcp 0.11.4 → 0.11.5

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 (441) hide show
  1. package/package.json +7 -7
  2. package/dist/action-handshake.d.ts +0 -38
  3. package/dist/action-handshake.d.ts.map +0 -1
  4. package/dist/action-handshake.js +0 -127
  5. package/dist/action-handshake.js.map +0 -1
  6. package/dist/bin/descry-mcp.d.ts +0 -7
  7. package/dist/bin/descry-mcp.d.ts.map +0 -1
  8. package/dist/bin/descry-mcp.js +0 -72
  9. package/dist/bin/descry-mcp.js.map +0 -1
  10. package/dist/browser/auth.d.ts +0 -84
  11. package/dist/browser/auth.d.ts.map +0 -1
  12. package/dist/browser/auth.js +0 -233
  13. package/dist/browser/auth.js.map +0 -1
  14. package/dist/browser/capability-probe.d.ts +0 -109
  15. package/dist/browser/capability-probe.d.ts.map +0 -1
  16. package/dist/browser/capability-probe.js +0 -201
  17. package/dist/browser/capability-probe.js.map +0 -1
  18. package/dist/browser/driver.d.ts +0 -591
  19. package/dist/browser/driver.d.ts.map +0 -1
  20. package/dist/browser/driver.js +0 -116
  21. package/dist/browser/driver.js.map +0 -1
  22. package/dist/browser/evidence.d.ts +0 -28
  23. package/dist/browser/evidence.d.ts.map +0 -1
  24. package/dist/browser/evidence.js +0 -82
  25. package/dist/browser/evidence.js.map +0 -1
  26. package/dist/browser/fake-driver.d.ts +0 -116
  27. package/dist/browser/fake-driver.d.ts.map +0 -1
  28. package/dist/browser/fake-driver.js +0 -416
  29. package/dist/browser/fake-driver.js.map +0 -1
  30. package/dist/browser/fault-attribution.d.ts +0 -178
  31. package/dist/browser/fault-attribution.d.ts.map +0 -1
  32. package/dist/browser/fault-attribution.js +0 -266
  33. package/dist/browser/fault-attribution.js.map +0 -1
  34. package/dist/browser/graph-write.d.ts +0 -45
  35. package/dist/browser/graph-write.d.ts.map +0 -1
  36. package/dist/browser/graph-write.js +0 -103
  37. package/dist/browser/graph-write.js.map +0 -1
  38. package/dist/browser/identity-graph-write.d.ts +0 -55
  39. package/dist/browser/identity-graph-write.d.ts.map +0 -1
  40. package/dist/browser/identity-graph-write.js +0 -45
  41. package/dist/browser/identity-graph-write.js.map +0 -1
  42. package/dist/browser/page-probe.d.ts +0 -81
  43. package/dist/browser/page-probe.d.ts.map +0 -1
  44. package/dist/browser/page-probe.js +0 -202
  45. package/dist/browser/page-probe.js.map +0 -1
  46. package/dist/browser/playwright-driver.d.ts +0 -114
  47. package/dist/browser/playwright-driver.d.ts.map +0 -1
  48. package/dist/browser/playwright-driver.js +0 -1518
  49. package/dist/browser/playwright-driver.js.map +0 -1
  50. package/dist/browser/provider.d.ts +0 -26
  51. package/dist/browser/provider.d.ts.map +0 -1
  52. package/dist/browser/provider.js +0 -14
  53. package/dist/browser/provider.js.map +0 -1
  54. package/dist/browser/reach-recording-session.d.ts +0 -44
  55. package/dist/browser/reach-recording-session.d.ts.map +0 -1
  56. package/dist/browser/reach-recording-session.js +0 -151
  57. package/dist/browser/reach-recording-session.js.map +0 -1
  58. package/dist/browser/reachability.d.ts +0 -168
  59. package/dist/browser/reachability.d.ts.map +0 -1
  60. package/dist/browser/reachability.js +0 -294
  61. package/dist/browser/reachability.js.map +0 -1
  62. package/dist/browser/registry.d.ts +0 -126
  63. package/dist/browser/registry.d.ts.map +0 -1
  64. package/dist/browser/registry.js +0 -177
  65. package/dist/browser/registry.js.map +0 -1
  66. package/dist/browser/scenario-provenance.d.ts +0 -23
  67. package/dist/browser/scenario-provenance.d.ts.map +0 -1
  68. package/dist/browser/scenario-provenance.js +0 -73
  69. package/dist/browser/scenario-provenance.js.map +0 -1
  70. package/dist/browser/scenario-resolve.d.ts +0 -28
  71. package/dist/browser/scenario-resolve.d.ts.map +0 -1
  72. package/dist/browser/scenario-resolve.js +0 -96
  73. package/dist/browser/scenario-resolve.js.map +0 -1
  74. package/dist/browser/scenario-runner.d.ts +0 -72
  75. package/dist/browser/scenario-runner.d.ts.map +0 -1
  76. package/dist/browser/scenario-runner.js +0 -353
  77. package/dist/browser/scenario-runner.js.map +0 -1
  78. package/dist/browser/stack-parser.d.ts +0 -19
  79. package/dist/browser/stack-parser.d.ts.map +0 -1
  80. package/dist/browser/stack-parser.js +0 -85
  81. package/dist/browser/stack-parser.js.map +0 -1
  82. package/dist/browser/tool-support.d.ts +0 -71
  83. package/dist/browser/tool-support.d.ts.map +0 -1
  84. package/dist/browser/tool-support.js +0 -216
  85. package/dist/browser/tool-support.js.map +0 -1
  86. package/dist/browser/url-scheme.d.ts +0 -14
  87. package/dist/browser/url-scheme.d.ts.map +0 -1
  88. package/dist/browser/url-scheme.js +0 -38
  89. package/dist/browser/url-scheme.js.map +0 -1
  90. package/dist/browser/wait-target.d.ts +0 -37
  91. package/dist/browser/wait-target.d.ts.map +0 -1
  92. package/dist/browser/wait-target.js +0 -54
  93. package/dist/browser/wait-target.js.map +0 -1
  94. package/dist/cancellation.d.ts +0 -20
  95. package/dist/cancellation.d.ts.map +0 -1
  96. package/dist/cancellation.js +0 -41
  97. package/dist/cancellation.js.map +0 -1
  98. package/dist/capped.d.ts +0 -39
  99. package/dist/capped.d.ts.map +0 -1
  100. package/dist/capped.js +0 -43
  101. package/dist/capped.js.map +0 -1
  102. package/dist/credential-store.d.ts +0 -22
  103. package/dist/credential-store.d.ts.map +0 -1
  104. package/dist/credential-store.js +0 -33
  105. package/dist/credential-store.js.map +0 -1
  106. package/dist/disclosure-ledger.d.ts +0 -14
  107. package/dist/disclosure-ledger.d.ts.map +0 -1
  108. package/dist/disclosure-ledger.js +0 -18
  109. package/dist/disclosure-ledger.js.map +0 -1
  110. package/dist/evidence/observed-route-evidence.d.ts +0 -25
  111. package/dist/evidence/observed-route-evidence.d.ts.map +0 -1
  112. package/dist/evidence/observed-route-evidence.js +0 -76
  113. package/dist/evidence/observed-route-evidence.js.map +0 -1
  114. package/dist/heap.d.ts +0 -61
  115. package/dist/heap.d.ts.map +0 -1
  116. package/dist/heap.js +0 -82
  117. package/dist/heap.js.map +0 -1
  118. package/dist/heartbeat.d.ts +0 -46
  119. package/dist/heartbeat.d.ts.map +0 -1
  120. package/dist/heartbeat.js +0 -66
  121. package/dist/heartbeat.js.map +0 -1
  122. package/dist/index.d.ts +0 -32
  123. package/dist/index.d.ts.map +0 -1
  124. package/dist/index.js +0 -19
  125. package/dist/index.js.map +0 -1
  126. package/dist/module-trust.d.ts +0 -37
  127. package/dist/module-trust.d.ts.map +0 -1
  128. package/dist/module-trust.js +0 -77
  129. package/dist/module-trust.js.map +0 -1
  130. package/dist/path-confinement.d.ts +0 -31
  131. package/dist/path-confinement.d.ts.map +0 -1
  132. package/dist/path-confinement.js +0 -44
  133. package/dist/path-confinement.js.map +0 -1
  134. package/dist/planner/predict-then-propose.d.ts +0 -134
  135. package/dist/planner/predict-then-propose.d.ts.map +0 -1
  136. package/dist/planner/predict-then-propose.js +0 -138
  137. package/dist/planner/predict-then-propose.js.map +0 -1
  138. package/dist/planner/propose-journey.d.ts +0 -75
  139. package/dist/planner/propose-journey.d.ts.map +0 -1
  140. package/dist/planner/propose-journey.js +0 -96
  141. package/dist/planner/propose-journey.js.map +0 -1
  142. package/dist/protocol.d.ts +0 -57
  143. package/dist/protocol.d.ts.map +0 -1
  144. package/dist/protocol.js +0 -90
  145. package/dist/protocol.js.map +0 -1
  146. package/dist/registry.d.ts +0 -103
  147. package/dist/registry.d.ts.map +0 -1
  148. package/dist/registry.js +0 -327
  149. package/dist/registry.js.map +0 -1
  150. package/dist/render.d.ts +0 -623
  151. package/dist/render.d.ts.map +0 -1
  152. package/dist/render.js +0 -968
  153. package/dist/render.js.map +0 -1
  154. package/dist/runtime-registry.d.ts +0 -22
  155. package/dist/runtime-registry.d.ts.map +0 -1
  156. package/dist/runtime-registry.js +0 -142
  157. package/dist/runtime-registry.js.map +0 -1
  158. package/dist/sandbox-defaults.d.ts +0 -41
  159. package/dist/sandbox-defaults.d.ts.map +0 -1
  160. package/dist/sandbox-defaults.js +0 -14
  161. package/dist/sandbox-defaults.js.map +0 -1
  162. package/dist/scenarios/browser-run-plan-projection.d.ts +0 -161
  163. package/dist/scenarios/browser-run-plan-projection.d.ts.map +0 -1
  164. package/dist/scenarios/browser-run-plan-projection.js +0 -264
  165. package/dist/scenarios/browser-run-plan-projection.js.map +0 -1
  166. package/dist/scenarios/credential-ref.d.ts +0 -102
  167. package/dist/scenarios/credential-ref.d.ts.map +0 -1
  168. package/dist/scenarios/credential-ref.js +0 -148
  169. package/dist/scenarios/credential-ref.js.map +0 -1
  170. package/dist/scenarios/index.d.ts +0 -7
  171. package/dist/scenarios/index.d.ts.map +0 -1
  172. package/dist/scenarios/index.js +0 -7
  173. package/dist/scenarios/index.js.map +0 -1
  174. package/dist/scenarios/parse.d.ts +0 -18
  175. package/dist/scenarios/parse.d.ts.map +0 -1
  176. package/dist/scenarios/parse.js +0 -212
  177. package/dist/scenarios/parse.js.map +0 -1
  178. package/dist/scenarios/scenario.d.ts +0 -93
  179. package/dist/scenarios/scenario.d.ts.map +0 -1
  180. package/dist/scenarios/scenario.js +0 -27
  181. package/dist/scenarios/scenario.js.map +0 -1
  182. package/dist/scenarios/secret-ref.d.ts +0 -86
  183. package/dist/scenarios/secret-ref.d.ts.map +0 -1
  184. package/dist/scenarios/secret-ref.js +0 -125
  185. package/dist/scenarios/secret-ref.js.map +0 -1
  186. package/dist/scenarios/storage.d.ts +0 -21
  187. package/dist/scenarios/storage.d.ts.map +0 -1
  188. package/dist/scenarios/storage.js +0 -103
  189. package/dist/scenarios/storage.js.map +0 -1
  190. package/dist/server.d.ts +0 -61
  191. package/dist/server.d.ts.map +0 -1
  192. package/dist/server.js +0 -651
  193. package/dist/server.js.map +0 -1
  194. package/dist/session.d.ts +0 -356
  195. package/dist/session.d.ts.map +0 -1
  196. package/dist/session.js +0 -779
  197. package/dist/session.js.map +0 -1
  198. package/dist/tools/alias-kit.d.ts +0 -29
  199. package/dist/tools/alias-kit.d.ts.map +0 -1
  200. package/dist/tools/alias-kit.js +0 -21
  201. package/dist/tools/alias-kit.js.map +0 -1
  202. package/dist/tools/aliases.d.ts +0 -42
  203. package/dist/tools/aliases.d.ts.map +0 -1
  204. package/dist/tools/aliases.js +0 -52
  205. package/dist/tools/aliases.js.map +0 -1
  206. package/dist/tools/analyze-workspace.d.ts +0 -52
  207. package/dist/tools/analyze-workspace.d.ts.map +0 -1
  208. package/dist/tools/analyze-workspace.js +0 -207
  209. package/dist/tools/analyze-workspace.js.map +0 -1
  210. package/dist/tools/analyze.d.ts +0 -163
  211. package/dist/tools/analyze.d.ts.map +0 -1
  212. package/dist/tools/analyze.js +0 -724
  213. package/dist/tools/analyze.js.map +0 -1
  214. package/dist/tools/browser-click.d.ts +0 -18
  215. package/dist/tools/browser-click.d.ts.map +0 -1
  216. package/dist/tools/browser-click.js +0 -110
  217. package/dist/tools/browser-click.js.map +0 -1
  218. package/dist/tools/browser-close-session.d.ts +0 -39
  219. package/dist/tools/browser-close-session.d.ts.map +0 -1
  220. package/dist/tools/browser-close-session.js +0 -120
  221. package/dist/tools/browser-close-session.js.map +0 -1
  222. package/dist/tools/browser-fill.d.ts +0 -18
  223. package/dist/tools/browser-fill.d.ts.map +0 -1
  224. package/dist/tools/browser-fill.js +0 -117
  225. package/dist/tools/browser-fill.js.map +0 -1
  226. package/dist/tools/browser-navigate.d.ts +0 -15
  227. package/dist/tools/browser-navigate.d.ts.map +0 -1
  228. package/dist/tools/browser-navigate.js +0 -104
  229. package/dist/tools/browser-navigate.js.map +0 -1
  230. package/dist/tools/browser-read.d.ts +0 -33
  231. package/dist/tools/browser-read.d.ts.map +0 -1
  232. package/dist/tools/browser-read.js +0 -113
  233. package/dist/tools/browser-read.js.map +0 -1
  234. package/dist/tools/browser-run-scenario.d.ts +0 -28
  235. package/dist/tools/browser-run-scenario.d.ts.map +0 -1
  236. package/dist/tools/browser-run-scenario.js +0 -225
  237. package/dist/tools/browser-run-scenario.js.map +0 -1
  238. package/dist/tools/browser-save-scenario.d.ts +0 -19
  239. package/dist/tools/browser-save-scenario.d.ts.map +0 -1
  240. package/dist/tools/browser-save-scenario.js +0 -447
  241. package/dist/tools/browser-save-scenario.js.map +0 -1
  242. package/dist/tools/browser-select.d.ts +0 -20
  243. package/dist/tools/browser-select.d.ts.map +0 -1
  244. package/dist/tools/browser-select.js +0 -120
  245. package/dist/tools/browser-select.js.map +0 -1
  246. package/dist/tools/browser-snapshot.d.ts +0 -46
  247. package/dist/tools/browser-snapshot.d.ts.map +0 -1
  248. package/dist/tools/browser-snapshot.js +0 -127
  249. package/dist/tools/browser-snapshot.js.map +0 -1
  250. package/dist/tools/browser-start-session.d.ts +0 -24
  251. package/dist/tools/browser-start-session.d.ts.map +0 -1
  252. package/dist/tools/browser-start-session.js +0 -640
  253. package/dist/tools/browser-start-session.js.map +0 -1
  254. package/dist/tools/browser-submit.d.ts +0 -18
  255. package/dist/tools/browser-submit.d.ts.map +0 -1
  256. package/dist/tools/browser-submit.js +0 -106
  257. package/dist/tools/browser-submit.js.map +0 -1
  258. package/dist/tools/browser-type.d.ts +0 -18
  259. package/dist/tools/browser-type.d.ts.map +0 -1
  260. package/dist/tools/browser-type.js +0 -115
  261. package/dist/tools/browser-type.js.map +0 -1
  262. package/dist/tools/browser-wait-for.d.ts +0 -45
  263. package/dist/tools/browser-wait-for.d.ts.map +0 -1
  264. package/dist/tools/browser-wait-for.js +0 -150
  265. package/dist/tools/browser-wait-for.js.map +0 -1
  266. package/dist/tools/browser.d.ts +0 -69
  267. package/dist/tools/browser.d.ts.map +0 -1
  268. package/dist/tools/browser.js +0 -386
  269. package/dist/tools/browser.js.map +0 -1
  270. package/dist/tools/chain.d.ts +0 -41
  271. package/dist/tools/chain.d.ts.map +0 -1
  272. package/dist/tools/chain.js +0 -105
  273. package/dist/tools/chain.js.map +0 -1
  274. package/dist/tools/change-scope.d.ts +0 -25
  275. package/dist/tools/change-scope.d.ts.map +0 -1
  276. package/dist/tools/change-scope.js +0 -110
  277. package/dist/tools/change-scope.js.map +0 -1
  278. package/dist/tools/code-context.d.ts +0 -83
  279. package/dist/tools/code-context.d.ts.map +0 -1
  280. package/dist/tools/code-context.js +0 -444
  281. package/dist/tools/code-context.js.map +0 -1
  282. package/dist/tools/contracts.d.ts +0 -74
  283. package/dist/tools/contracts.d.ts.map +0 -1
  284. package/dist/tools/contracts.js +0 -196
  285. package/dist/tools/contracts.js.map +0 -1
  286. package/dist/tools/cross-pr.d.ts +0 -178
  287. package/dist/tools/cross-pr.d.ts.map +0 -1
  288. package/dist/tools/cross-pr.js +0 -370
  289. package/dist/tools/cross-pr.js.map +0 -1
  290. package/dist/tools/disclosure.d.ts +0 -75
  291. package/dist/tools/disclosure.d.ts.map +0 -1
  292. package/dist/tools/disclosure.js +0 -307
  293. package/dist/tools/disclosure.js.map +0 -1
  294. package/dist/tools/draw-conclusion.d.ts +0 -55
  295. package/dist/tools/draw-conclusion.d.ts.map +0 -1
  296. package/dist/tools/draw-conclusion.js +0 -259
  297. package/dist/tools/draw-conclusion.js.map +0 -1
  298. package/dist/tools/git-context.d.ts +0 -39
  299. package/dist/tools/git-context.d.ts.map +0 -1
  300. package/dist/tools/git-context.js +0 -385
  301. package/dist/tools/git-context.js.map +0 -1
  302. package/dist/tools/git-diff.d.ts +0 -45
  303. package/dist/tools/git-diff.d.ts.map +0 -1
  304. package/dist/tools/git-diff.js +0 -338
  305. package/dist/tools/git-diff.js.map +0 -1
  306. package/dist/tools/git-history.d.ts +0 -16
  307. package/dist/tools/git-history.d.ts.map +0 -1
  308. package/dist/tools/git-history.js +0 -106
  309. package/dist/tools/git-history.js.map +0 -1
  310. package/dist/tools/history.d.ts +0 -34
  311. package/dist/tools/history.d.ts.map +0 -1
  312. package/dist/tools/history.js +0 -121
  313. package/dist/tools/history.js.map +0 -1
  314. package/dist/tools/impact.d.ts +0 -46
  315. package/dist/tools/impact.d.ts.map +0 -1
  316. package/dist/tools/impact.js +0 -225
  317. package/dist/tools/impact.js.map +0 -1
  318. package/dist/tools/index.d.ts +0 -59
  319. package/dist/tools/index.d.ts.map +0 -1
  320. package/dist/tools/index.js +0 -70
  321. package/dist/tools/index.js.map +0 -1
  322. package/dist/tools/kit.d.ts +0 -165
  323. package/dist/tools/kit.d.ts.map +0 -1
  324. package/dist/tools/kit.js +0 -153
  325. package/dist/tools/kit.js.map +0 -1
  326. package/dist/tools/link-workspace.d.ts +0 -24
  327. package/dist/tools/link-workspace.d.ts.map +0 -1
  328. package/dist/tools/link-workspace.js +0 -131
  329. package/dist/tools/link-workspace.js.map +0 -1
  330. package/dist/tools/lookup.d.ts +0 -19
  331. package/dist/tools/lookup.d.ts.map +0 -1
  332. package/dist/tools/lookup.js +0 -63
  333. package/dist/tools/lookup.js.map +0 -1
  334. package/dist/tools/mark-incident.d.ts +0 -28
  335. package/dist/tools/mark-incident.d.ts.map +0 -1
  336. package/dist/tools/mark-incident.js +0 -188
  337. package/dist/tools/mark-incident.js.map +0 -1
  338. package/dist/tools/merged-browser.d.ts +0 -11
  339. package/dist/tools/merged-browser.d.ts.map +0 -1
  340. package/dist/tools/merged-browser.js +0 -20
  341. package/dist/tools/merged-browser.js.map +0 -1
  342. package/dist/tools/merged-context.d.ts +0 -11
  343. package/dist/tools/merged-context.d.ts.map +0 -1
  344. package/dist/tools/merged-context.js +0 -21
  345. package/dist/tools/merged-context.js.map +0 -1
  346. package/dist/tools/merged-observe.d.ts +0 -13
  347. package/dist/tools/merged-observe.d.ts.map +0 -1
  348. package/dist/tools/merged-observe.js +0 -21
  349. package/dist/tools/merged-observe.js.map +0 -1
  350. package/dist/tools/merged-workspace.d.ts +0 -14
  351. package/dist/tools/merged-workspace.d.ts.map +0 -1
  352. package/dist/tools/merged-workspace.js +0 -21
  353. package/dist/tools/merged-workspace.js.map +0 -1
  354. package/dist/tools/observe-runtime.d.ts +0 -262
  355. package/dist/tools/observe-runtime.d.ts.map +0 -1
  356. package/dist/tools/observe-runtime.js +0 -1901
  357. package/dist/tools/observe-runtime.js.map +0 -1
  358. package/dist/tools/observe-tests.d.ts +0 -57
  359. package/dist/tools/observe-tests.d.ts.map +0 -1
  360. package/dist/tools/observe-tests.js +0 -368
  361. package/dist/tools/observe-tests.js.map +0 -1
  362. package/dist/tools/observe.d.ts +0 -28
  363. package/dist/tools/observe.d.ts.map +0 -1
  364. package/dist/tools/observe.js +0 -330
  365. package/dist/tools/observe.js.map +0 -1
  366. package/dist/tools/pr-analysis.d.ts +0 -189
  367. package/dist/tools/pr-analysis.d.ts.map +0 -1
  368. package/dist/tools/pr-analysis.js +0 -374
  369. package/dist/tools/pr-analysis.js.map +0 -1
  370. package/dist/tools/pre-push.d.ts +0 -168
  371. package/dist/tools/pre-push.d.ts.map +0 -1
  372. package/dist/tools/pre-push.js +0 -416
  373. package/dist/tools/pre-push.js.map +0 -1
  374. package/dist/tools/predict-reach.d.ts +0 -57
  375. package/dist/tools/predict-reach.d.ts.map +0 -1
  376. package/dist/tools/predict-reach.js +0 -159
  377. package/dist/tools/predict-reach.js.map +0 -1
  378. package/dist/tools/propagation.d.ts +0 -37
  379. package/dist/tools/propagation.d.ts.map +0 -1
  380. package/dist/tools/propagation.js +0 -162
  381. package/dist/tools/propagation.js.map +0 -1
  382. package/dist/tools/propose-journey.d.ts +0 -16
  383. package/dist/tools/propose-journey.d.ts.map +0 -1
  384. package/dist/tools/propose-journey.js +0 -121
  385. package/dist/tools/propose-journey.js.map +0 -1
  386. package/dist/tools/prove-reach.d.ts +0 -74
  387. package/dist/tools/prove-reach.d.ts.map +0 -1
  388. package/dist/tools/prove-reach.js +0 -286
  389. package/dist/tools/prove-reach.js.map +0 -1
  390. package/dist/tools/questions.d.ts +0 -30
  391. package/dist/tools/questions.d.ts.map +0 -1
  392. package/dist/tools/questions.js +0 -232
  393. package/dist/tools/questions.js.map +0 -1
  394. package/dist/tools/refusal-fetch.d.ts +0 -35
  395. package/dist/tools/refusal-fetch.d.ts.map +0 -1
  396. package/dist/tools/refusal-fetch.js +0 -123
  397. package/dist/tools/refusal-fetch.js.map +0 -1
  398. package/dist/tools/runtime-incident.d.ts +0 -33
  399. package/dist/tools/runtime-incident.d.ts.map +0 -1
  400. package/dist/tools/runtime-incident.js +0 -67
  401. package/dist/tools/runtime-incident.js.map +0 -1
  402. package/dist/tools/runtime-journey-drive.d.ts +0 -102
  403. package/dist/tools/runtime-journey-drive.d.ts.map +0 -1
  404. package/dist/tools/runtime-journey-drive.js +0 -247
  405. package/dist/tools/runtime-journey-drive.js.map +0 -1
  406. package/dist/tools/scope.d.ts +0 -45
  407. package/dist/tools/scope.d.ts.map +0 -1
  408. package/dist/tools/scope.js +0 -217
  409. package/dist/tools/scope.js.map +0 -1
  410. package/dist/tools/similar-incidents.d.ts +0 -43
  411. package/dist/tools/similar-incidents.d.ts.map +0 -1
  412. package/dist/tools/similar-incidents.js +0 -203
  413. package/dist/tools/similar-incidents.js.map +0 -1
  414. package/dist/tools/validate.d.ts +0 -133
  415. package/dist/tools/validate.d.ts.map +0 -1
  416. package/dist/tools/validate.js +0 -520
  417. package/dist/tools/validate.js.map +0 -1
  418. package/dist/tools/verb.d.ts +0 -46
  419. package/dist/tools/verb.d.ts.map +0 -1
  420. package/dist/tools/verb.js +0 -78
  421. package/dist/tools/verb.js.map +0 -1
  422. package/dist/tools/verification-status.d.ts +0 -38
  423. package/dist/tools/verification-status.d.ts.map +0 -1
  424. package/dist/tools/verification-status.js +0 -203
  425. package/dist/tools/verification-status.js.map +0 -1
  426. package/dist/tools/verify-claim.d.ts +0 -29
  427. package/dist/tools/verify-claim.d.ts.map +0 -1
  428. package/dist/tools/verify-claim.js +0 -220
  429. package/dist/tools/verify-claim.js.map +0 -1
  430. package/dist/tools/workspace.d.ts +0 -28
  431. package/dist/tools/workspace.d.ts.map +0 -1
  432. package/dist/tools/workspace.js +0 -101
  433. package/dist/tools/workspace.js.map +0 -1
  434. package/dist/transport.d.ts +0 -32
  435. package/dist/transport.d.ts.map +0 -1
  436. package/dist/transport.js +0 -85
  437. package/dist/transport.js.map +0 -1
  438. package/dist/workspace-index.d.ts +0 -164
  439. package/dist/workspace-index.d.ts.map +0 -1
  440. package/dist/workspace-index.js +0 -381
  441. package/dist/workspace-index.js.map +0 -1
@@ -1,104 +0,0 @@
1
- /** `browser_navigate` moves an open session to another page. Cross-origin navigate refuses —
2
- * never re-prompts — since navigation is the one place a session's consent could otherwise widen
3
- * into a general-purpose browser. `class: "stateful-read"`: it changes what later calls see, but
4
- * the developer's approval was already stated at `browser_start_session`. */
5
- import { browserAnswer, emptyEvidence, observeAndCorrelate, reachNotes, useSession, withinConsent } from "../browser/tool-support.js";
6
- import { NO_GRAPH_WRITE } from "../browser/graph-write.js";
7
- import { CANCELLED_STATE, cancellationHeadline, cancellationNotes } from "../cancellation.js";
8
- import { requiredString } from "./kit.js";
9
- import { NO_REACH } from "./browser-snapshot.js";
10
- const SCHEMA = {
11
- type: "object",
12
- properties: {
13
- sessionId: {
14
- type: "string",
15
- description: "REQUIRED. The id returned by browser_start_session. Sessions belong to this connection and do not survive a reconnect.",
16
- },
17
- url: {
18
- type: "string",
19
- description: "REQUIRED. Where to navigate. Must be on the same origin the session was started against — a URL " +
20
- "on any other origin is refused rather than confirmed again, because consent was granted for one " +
21
- "application, not for the browser generally.",
22
- },
23
- },
24
- required: ["sessionId", "url"],
25
- additionalProperties: false,
26
- };
27
- function blank(url, evidence) {
28
- return { sessionId: "", url, title: "", elements: [], totalElements: 0, reach: NO_REACH, evidence, graph: NO_GRAPH_WRITE };
29
- }
30
- /** Exported so `browser-read.ts` can dispatch the "navigate" verb to this exact body — the merge
31
- * reuses this function rather than reimplementing it (mcp-surface-consolidation.md). */
32
- export async function run(args, ctx) {
33
- const sessionId = requiredString(args, "sessionId");
34
- const url = requiredString(args, "url");
35
- // Checked before the session is touched: the caller said stop, so nothing happens. The session
36
- // itself stays open — it belongs to browser_start_session's consent, not to this call.
37
- if (ctx.signal.aborted) {
38
- return browserAnswer({
39
- ctx,
40
- state: CANCELLED_STATE,
41
- headline: cancellationHeadline("the browser did not move"),
42
- notes: cancellationNotes("The page is where it was.", "The browser session is still open and can still be used."),
43
- data: blank(url, emptyEvidence()),
44
- });
45
- }
46
- const found = await useSession(ctx.session.browserSessions(), sessionId);
47
- if (!found.ok) {
48
- return browserAnswer({
49
- ctx,
50
- state: found.dead.state,
51
- headline: found.dead.headline,
52
- notes: found.dead.notes,
53
- data: blank(url, found.dead.evidence),
54
- });
55
- }
56
- const { entry } = found;
57
- if (!withinConsent(entry, url)) {
58
- return browserAnswer({
59
- ctx,
60
- state: "refused",
61
- headline: `${url} is outside this session's consented origin.`,
62
- notes: [
63
- `This session was started against ${entry.consentedOrigin} and consent is bound to that origin. ` +
64
- `Navigating to ${url} would take the browser somewhere the developer did not approve, so it is ` +
65
- "refused rather than confirmed again — asking a second time here is how a gate becomes a habit. " +
66
- "Start a new session if you genuinely mean to drive that origin.",
67
- ],
68
- data: blank(url, emptyEvidence()),
69
- });
70
- }
71
- ctx.progress(`Navigating to ${url}`);
72
- await entry.page.navigate(url);
73
- const snapshot = await entry.page.snapshot();
74
- const observed = await observeAndCorrelate(ctx, entry);
75
- const evidence = observed.evidence;
76
- return browserAnswer({
77
- ctx,
78
- headline: `${snapshot.url} — ${snapshot.title || "untitled"} (${snapshot.totalElements} elements).`,
79
- notes: [...observed.notes, ...reachNotes(snapshot)],
80
- data: {
81
- sessionId: entry.sessionId,
82
- url: snapshot.url,
83
- title: snapshot.title,
84
- elements: snapshot.elements,
85
- totalElements: snapshot.totalElements,
86
- reach: { frames: snapshot.frames, shadow: snapshot.shadow, hidden: snapshot.hidden, reveal: snapshot.reveal },
87
- evidence,
88
- graph: observed.graph,
89
- },
90
- });
91
- }
92
- export const browserNavigateTool = {
93
- name: "browser_navigate",
94
- title: "Navigate an open browser session",
95
- description: "Move an open browser session to another page on the same application, and return what is there plus " +
96
- "anything the page produced on the way — console errors and failed requests, raw and untriaged. " +
97
- "Refuses to leave the origin the session was started against.",
98
- class: "stateful-read",
99
- tier: "evidence",
100
- version: "1.0.0",
101
- inputSchema: SCHEMA,
102
- run,
103
- };
104
- //# sourceMappingURL=browser-navigate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-navigate.js","sourceRoot":"","sources":["../../src/tools/browser-navigate.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- /**
2
- * `browser_read` — merges the four browser tools that read a page without needing consent of
3
- * their own: `browser_snapshot`, `browser_navigate`, `browser_wait_for`, `browser_close_session`
4
- * (documents/plans/mcp-surface-consolidation.md, group 2).
5
- *
6
- * `class: "stateful-read"` — deliberately not `action`. None of the four mutates the application;
7
- * the developer's consent for driving it was already given at `browser_start_session`. What they
8
- * DO change is what a *later* call in the same session sees (each takes a fresh snapshot, which
9
- * invalidates every ref issued before it) — that is what "stateful" means here, and it is why
10
- * `browser_snapshot` was never `read`-class to begin with. Declaring `browser_read` as `action`
11
- * would put a plain read behind a confirmation handshake it has never needed; the other eight
12
- * `browser_*` verbs (the ones that DO mutate) are a separate merge, owned elsewhere, and are not
13
- * touched by this file.
14
- *
15
- * Dispatches on "verb" to each absorbed tool's exact `run` body — extracted, not reimplemented,
16
- * so behaviour is unchanged per verb.
17
- */
18
- import type { ToolDefinition } from "./kit.ts";
19
- import type { BrowserPageData } from "./browser-snapshot.ts";
20
- import type { BrowserNavigateData } from "./browser-navigate.ts";
21
- import type { BrowserWaitForData } from "./browser-wait-for.ts";
22
- import type { BrowserCloseSessionData } from "./browser-close-session.ts";
23
- /**
24
- * What this tool answers with: one verb's shape, never a merged one.
25
- *
26
- * The merge cost this its single concrete output type, and `unknown` would have
27
- * silently retired `output-shapes.test.ts`'s check that a declared shape is tied
28
- * to the code producing it. A union keeps that tie: a verb added without its
29
- * shape here stops compiling.
30
- */
31
- export type BrowserReadData = BrowserPageData | BrowserNavigateData | BrowserWaitForData | BrowserCloseSessionData;
32
- export declare const browserReadTool: ToolDefinition;
33
- //# sourceMappingURL=browser-read.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-read.d.ts","sourceRoot":"","sources":["../../src/tools/browser-read.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,UAAU,CAAC;AAO5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GACvB,eAAe,GACf,mBAAmB,GACnB,kBAAkB,GAClB,uBAAuB,CAAC;AAqF5B,eAAO,MAAM,eAAe,EAAE,cAc7B,CAAC"}
@@ -1,113 +0,0 @@
1
- /**
2
- * `browser_read` — merges the four browser tools that read a page without needing consent of
3
- * their own: `browser_snapshot`, `browser_navigate`, `browser_wait_for`, `browser_close_session`
4
- * (documents/plans/mcp-surface-consolidation.md, group 2).
5
- *
6
- * `class: "stateful-read"` — deliberately not `action`. None of the four mutates the application;
7
- * the developer's consent for driving it was already given at `browser_start_session`. What they
8
- * DO change is what a *later* call in the same session sees (each takes a fresh snapshot, which
9
- * invalidates every ref issued before it) — that is what "stateful" means here, and it is why
10
- * `browser_snapshot` was never `read`-class to begin with. Declaring `browser_read` as `action`
11
- * would put a plain read behind a confirmation handshake it has never needed; the other eight
12
- * `browser_*` verbs (the ones that DO mutate) are a separate merge, owned elsewhere, and are not
13
- * touched by this file.
14
- *
15
- * Dispatches on "verb" to each absorbed tool's exact `run` body — extracted, not reimplemented,
16
- * so behaviour is unchanged per verb.
17
- */
18
- import { selectVerb } from "./verb.js";
19
- import { WAIT_TIMEOUT_MAX_MS } from "../browser/wait-target.js";
20
- import { run as runSnapshot } from "./browser-snapshot.js";
21
- import { run as runNavigate } from "./browser-navigate.js";
22
- import { run as runWaitFor } from "./browser-wait-for.js";
23
- import { run as runClose } from "./browser-close-session.js";
24
- const VERB_SPECS = [
25
- { verb: "snapshot", accepts: ["startAt", "limit", "reveal"] },
26
- { verb: "navigate", accepts: ["url"] },
27
- { verb: "wait_for", accepts: ["role", "name", "timeoutMs"] },
28
- { verb: "close", accepts: [] },
29
- ];
30
- /** Every verb needs the session it reads — genuinely shared, not one verb's property leaking
31
- * into another's. */
32
- const SHARED_PROPS = ["sessionId"];
33
- const SCHEMA = {
34
- type: "object",
35
- properties: {
36
- verb: {
37
- type: "string",
38
- enum: ["snapshot", "navigate", "wait_for", "close"],
39
- description: 'Which read to perform. "snapshot": the current page. "navigate": move to another page on ' +
40
- 'the same origin, then read it. "wait_for": wait for an element, then read the page. ' +
41
- '"close": tear the session down and return what it observed.',
42
- },
43
- sessionId: {
44
- type: "string",
45
- description: "REQUIRED, all verbs. The id returned by browser_start_session.",
46
- },
47
- // --- snapshot only ---
48
- startAt: {
49
- type: "integer",
50
- minimum: 0,
51
- description: "snapshot only. Skip this many elements before listing. Compare what you received against " +
52
- "totalElements (always the real count) and ask again with startAt past what you have seen.",
53
- },
54
- limit: {
55
- type: "integer",
56
- minimum: 1,
57
- description: "snapshot only. At most this many elements. A reply too large for the host is shortened further regardless.",
58
- },
59
- reveal: {
60
- type: "boolean",
61
- description: "snapshot only. Scroll and re-read the page so rows not yet in the DOM are seen. Off by " +
62
- "default — it moves the page, and a recycling list will destroy rows it scrolls past.",
63
- },
64
- // --- navigate only ---
65
- url: {
66
- type: "string",
67
- description: "navigate only, REQUIRED. Where to go. Must be on the session's consented origin — refused, " +
68
- "not re-confirmed, if it is not.",
69
- },
70
- // --- wait_for only ---
71
- role: {
72
- type: "string",
73
- description: "wait_for only. Role to wait for, as snapshot reports it. role, name, or both — at least one required.",
74
- },
75
- name: {
76
- type: "string",
77
- description: "wait_for only. Name to wait for, as snapshot reports it. Matched exactly, ignoring case and " +
78
- "surrounding space, never as a substring.",
79
- },
80
- timeoutMs: {
81
- type: "integer",
82
- minimum: 0,
83
- description: `wait_for only. Ceiling in ms. Defaults to 5000, capped at ${WAIT_TIMEOUT_MAX_MS}. Timing out is a normal outcome, not an error.`,
84
- },
85
- },
86
- required: ["verb", "sessionId"],
87
- additionalProperties: false,
88
- };
89
- async function run(args, ctx) {
90
- const verb = selectVerb(args, "verb", VERB_SPECS, SHARED_PROPS);
91
- if (verb === "snapshot")
92
- return runSnapshot(args, ctx);
93
- if (verb === "navigate")
94
- return runNavigate(args, ctx);
95
- if (verb === "wait_for")
96
- return runWaitFor(args, ctx);
97
- return runClose(args, ctx);
98
- }
99
- export const browserReadTool = {
100
- name: "browser_read",
101
- class: "stateful-read",
102
- tier: "evidence",
103
- version: "1.0.0",
104
- title: "Read, navigate, wait on, or close a browser session",
105
- description: 'Four read-only operations on an open browser session, chosen by "verb": "snapshot" reads the ' +
106
- 'current page; "navigate" moves to another page on the same origin and reads it; "wait_for" ' +
107
- 'waits for an element to appear and reads the page after; "close" tears the session down and ' +
108
- "returns what it observed. None of these mutates the application, so none takes a " +
109
- "confirmation — but each takes a fresh snapshot, which invalidates every ref issued before it.",
110
- inputSchema: SCHEMA,
111
- run,
112
- };
113
- //# sourceMappingURL=browser-read.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-read.js","sourceRoot":"","sources":["../../src/tools/browser-read.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- /** `browser_run_scenario` replays a saved scenario in one batch call — one aggregated reply
2
- * instead of N, since a check has one outcome, not fragments to reassemble. `class: "action"`
3
- * like the verbs: mints nothing, consent stays bound to `browser_start_session`'s origin, and a
4
- * stored `navigate` leaving it stops the replay. Per DEC-381, only an asserted expectation that
5
- * fails is blocking — an observed console error the author never asserted against is not. */
6
- import { type BrowserGraphWrite } from "../browser/graph-write.ts";
7
- import { type ScenarioAssertionResult, type ScenarioCounts, type ScenarioStepResult } from "../browser/scenario-runner.ts";
8
- import type { BrowserEvidenceReport } from "../browser/evidence.ts";
9
- import { type ToolDefinition } from "./kit.ts";
10
- export interface BrowserRunScenarioData {
11
- readonly sessionId: string;
12
- readonly scenario: string;
13
- /** `passed` · `failed` · `unresolved` · `unverified` — never `passed` for a scenario that asserted nothing. */
14
- readonly outcome: "passed" | "failed" | "unresolved" | "unverified" | "notRun";
15
- /** Three counts that are never summed, plus how many assertions held. */
16
- readonly counts: ScenarioCounts;
17
- /** Failed assertions alone. An unresolvable step is not a defect claim, so it does not join this. */
18
- readonly blockingTotal: number;
19
- /** 0 clean · 1 blocking findings · 2 the check could not run. `descry check`'s existing vocabulary. */
20
- readonly exitCode: 0 | 1 | 2;
21
- readonly steps: readonly ScenarioStepResult[];
22
- readonly assertions: readonly ScenarioAssertionResult[];
23
- /** One summary for the whole batch, drained a step at a time. */
24
- readonly evidence: BrowserEvidenceReport;
25
- readonly graph: BrowserGraphWrite;
26
- }
27
- export declare const browserRunScenarioTool: ToolDefinition;
28
- //# sourceMappingURL=browser-run-scenario.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-run-scenario.d.ts","sourceRoot":"","sources":["../../src/tools/browser-run-scenario.ts"],"names":[],"mappings":"AAAA;;;;8FAI8F;AAI9F,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAA2B,KAAK,uBAAuB,EAAE,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEpJ,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAGjF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,+GAA+G;IAC/G,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,CAAC;IAC/E,yEAAyE;IACzE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,qGAAqG;IACrG,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,SAAS,uBAAuB,EAAE,CAAC;IACxD,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;CACnC;AAsND,eAAO,MAAM,sBAAsB,EAAE,cAiBpC,CAAC"}
@@ -1,225 +0,0 @@
1
- /** `browser_run_scenario` replays a saved scenario in one batch call — one aggregated reply
2
- * instead of N, since a check has one outcome, not fragments to reassemble. `class: "action"`
3
- * like the verbs: mints nothing, consent stays bound to `browser_start_session`'s origin, and a
4
- * stored `navigate` leaving it stops the replay. Per DEC-381, only an asserted expectation that
5
- * fails is blocking — an observed console error the author never asserted against is not. */
6
- import { readScenario } from "../scenarios/index.js";
7
- import { browserAnswer, emptyEvidence, mutationRefusal, useSession, withinConsent } from "../browser/tool-support.js";
8
- import { NO_GRAPH_WRITE } from "../browser/graph-write.js";
9
- import { mutates, replayScenario } from "../browser/scenario-runner.js";
10
- import { scenarioPath } from "../scenarios/index.js";
11
- import { CANCELLED_STATE } from "../cancellation.js";
12
- import { requiredString } from "./kit.js";
13
- const SCHEMA = {
14
- type: "object",
15
- properties: {
16
- sessionId: {
17
- type: "string",
18
- description: "REQUIRED. The id returned by browser_start_session. The replay runs in that session, under the consent it was granted.",
19
- },
20
- name: {
21
- type: "string",
22
- description: "REQUIRED. The scenario's name, without the file extension — a scenario saved as " +
23
- "descry/scenarios/checkout.scenario.json is named \"checkout\". Saved scenarios are committed files; " +
24
- "browser_save_scenario writes them.",
25
- },
26
- confirmToken: {
27
- type: "string",
28
- description: "Not normally needed. Consent is granted once, for the whole session, by browser_start_session, so " +
29
- "this call replays directly. The field is declared because the handshake reads it for every " +
30
- "action-class tool.",
31
- },
32
- },
33
- required: ["sessionId", "name"],
34
- additionalProperties: false,
35
- };
36
- function empty(sessionId, name) {
37
- return {
38
- sessionId,
39
- scenario: name,
40
- outcome: "notRun",
41
- counts: { passed: 0, failed: 0, unresolved: 0, unverified: 0 },
42
- blockingTotal: 0,
43
- // 2 rather than 0: this is "the check could not run", and a refusal that
44
- // reported clean would let a scenario nobody could replay keep claiming
45
- // coverage.
46
- exitCode: 2,
47
- steps: [],
48
- assertions: [],
49
- evidence: emptyEvidence(),
50
- graph: NO_GRAPH_WRITE,
51
- };
52
- }
53
- async function run(args, ctx) {
54
- const sessionId = requiredString(args, "sessionId");
55
- const name = requiredString(args, "name");
56
- const stored = await readScenario(ctx.session.repoPath, name);
57
- if (!stored.valid) {
58
- return browserAnswer({
59
- ctx,
60
- state: "refused",
61
- headline: `Scenario "${name}" cannot be replayed.`,
62
- notes: [
63
- ...stored.problems,
64
- `Scenarios live in ${scenarioPath(ctx.session.repoPath, name)} and are committed like source. ` +
65
- "browser_save_scenario writes one from a session you have explored.",
66
- ],
67
- data: empty(sessionId, name),
68
- });
69
- }
70
- const scenario = stored.scenario;
71
- const found = await useSession(ctx.session.browserSessions(), sessionId);
72
- if (!found.ok) {
73
- return browserAnswer({
74
- ctx,
75
- state: found.dead.state,
76
- headline: found.dead.headline,
77
- notes: found.dead.notes,
78
- data: { ...empty(sessionId, name), evidence: found.dead.evidence },
79
- });
80
- }
81
- const { entry } = found;
82
- // Consent is bound to one origin and a stored file cannot widen it. Checked
83
- // before anything runs, because a replay that got three steps in and then
84
- // refused would have already changed the application.
85
- if (!withinConsent(entry, scenario.targetUrl)) {
86
- return browserAnswer({
87
- ctx,
88
- state: "refused",
89
- headline: `Scenario "${name}" targets another origin.`,
90
- notes: [
91
- `It opens ${scenario.targetUrl}, and this session's consent covers ${entry.consentedOrigin} only. ` +
92
- "Consent is granted per session and bound to the origin it was granted for, so a saved file cannot " +
93
- "extend it. Start a session against that origin to replay this scenario.",
94
- ],
95
- data: empty(sessionId, name),
96
- });
97
- }
98
- const refusedForSafety = mutationRefusal(entry);
99
- if (refusedForSafety !== null && mutates(scenario)) {
100
- return browserAnswer({
101
- ctx,
102
- state: "refused",
103
- headline: `${entry.profile?.name ?? "This environment"} is read-only.`,
104
- notes: [
105
- refusedForSafety,
106
- `Scenario "${name}" clicks, types or fills, so replaying it would change the application. A ` +
107
- "navigate-only scenario would still run here.",
108
- ],
109
- data: empty(sessionId, name),
110
- });
111
- }
112
- // RT-263: the session may have opened fine and then the application died before
113
- // this replay started -- checked fresh here rather than trusted from
114
- // browser_start_session's own preflight, which only proved the target answered at
115
- // open time. Read-only, single TCP connect; reports within seconds instead of
116
- // letting the replay's own step timeouts discover the same thing one step at a time.
117
- // Optional on the port (`entry.page.probeTargetReachable`) for the same reason
118
- // `browser-start-session.ts` guards it: the fake driver's page session has no real
119
- // network to probe, so `packages/mcp/test`'s scenario suites (made-up target ports)
120
- // are unaffected; only the real Chromium driver implements it.
121
- const reachability = await entry.page.probeTargetReachable?.(scenario.targetUrl);
122
- if (reachability !== undefined && reachability !== null && !reachability.reachable) {
123
- return browserAnswer({
124
- ctx,
125
- state: "refused",
126
- headline: `Scenario "${name}" cannot be replayed — its target does not answer.`,
127
- notes: [reachability.message],
128
- data: empty(sessionId, name),
129
- });
130
- }
131
- // Start where the scenario says it starts, rather than wherever the session
132
- // happened to be left. A replay that began from an arbitrary page is not a
133
- // repeat of the run that was saved.
134
- if (entry.page.currentUrl() !== scenario.targetUrl) {
135
- await entry.page.navigate(scenario.targetUrl);
136
- }
137
- // `ctx.session.credentialStore` — RG-1(4) / lane "delivery": undefined for
138
- // every session that never set one, so a `${credential:NAME}` step refuses
139
- // by name exactly as before. `process.env` is passed through explicitly
140
- // rather than omitted, because `credentialStore` is `replayScenario`'s
141
- // sixth positional parameter and `env` is its fifth.
142
- const replay = await replayScenario(ctx, ctx.session.browserSessions(), sessionId, scenario, process.env, ctx.session.credentialStore);
143
- const notes = [
144
- ...(replay.sessionEnded === null ? [] : replay.sessionEnded.notes),
145
- ...replay.notes,
146
- // A cancelled replay is `unresolved` with zero unresolved steps — skip the outcome note, the
147
- // replay's own note already says what stopped it.
148
- ...(replay.cancelled ? [] : outcomeNotes(replay.outcome, replay.counts, name)),
149
- ...replay.steps.filter((s) => s.resolution !== null).map((s) => s.resolution.message),
150
- ...replay.assertions.filter((a) => a.status === "failed" || a.status === "unevaluable").map((a) => a.detail),
151
- ];
152
- // Cancellation outranks a dead session in the state: both are true, and
153
- // "the caller stopped this" is the one that explains the other.
154
- const state = replay.cancelled ? CANCELLED_STATE : replay.sessionEnded?.state;
155
- return browserAnswer({
156
- ctx,
157
- ...(state === undefined ? {} : { state }),
158
- headline: (replay.cancelled ? `Scenario "${name}" was cancelled: ` : `Scenario "${name}": `) +
159
- `${replay.outcome} — ${replay.counts.passed} assertion(s) held, ` +
160
- `${replay.counts.failed} failed, ${replay.counts.unresolved} could not run.`,
161
- notes,
162
- data: {
163
- sessionId,
164
- scenario: name,
165
- outcome: replay.outcome,
166
- counts: replay.counts,
167
- blockingTotal: replay.blockingTotal,
168
- exitCode: replay.exitCode,
169
- steps: replay.steps,
170
- assertions: replay.assertions,
171
- evidence: replay.evidence,
172
- graph: replay.graph,
173
- },
174
- });
175
- }
176
- /** The disclosure the three counts exist for. Emitted per outcome, not always — a note on every
177
- * reply is one nobody reads by the third (same reasoning as `evidenceNotes`'s triage disclaimer). */
178
- function outcomeNotes(outcome, counts, name) {
179
- switch (outcome) {
180
- case "unverified":
181
- return [
182
- `Scenario "${name}" stores no assertions, so this replay verified nothing. Its steps still resolved ` +
183
- "and still ran — real information — but that is not the same statement as the application behaving, " +
184
- "and it is deliberately never reported as passed.",
185
- ];
186
- case "unresolved":
187
- return [
188
- `${counts.unresolved} step or assertion could not run, so this replay neither passed nor failed. ` +
189
- "Descry cannot tell a deliberate rename from a vanished element — both look identical from here — " +
190
- "so it claims neither. The remedy is in the message below: re-save the step if the change was " +
191
- "intended, or fix the application if it was not.",
192
- ];
193
- case "failed":
194
- return [
195
- `${counts.failed} assertion(s) the scenario's author wrote down did not hold. Only those count as ` +
196
- "blocking; console errors and failed requests observed during the replay are reported below and are " +
197
- "not, because they are frequently true of a working page." +
198
- (counts.unresolved > 0
199
- ? ` ${counts.unresolved} check(s) also could not run, counted separately and never added to the ` +
200
- "blocking total."
201
- : ""),
202
- ];
203
- case "passed":
204
- case "notRun":
205
- return [];
206
- }
207
- }
208
- export const browserRunScenarioTool = {
209
- name: "browser_run_scenario",
210
- title: "Replay a saved scenario",
211
- description: "Replay a saved scenario — a named step sequence with the assertions its author wrote down — in one " +
212
- "call, and return a single evidence summary rather than one reply per step. Each step re-resolves its " +
213
- "element against a fresh page: exactly one match or the replay stops and says which of role, name and " +
214
- "selector disagreed and what the page holds now. Reports three counts that are never added together — " +
215
- "failed assertions, checks that could not run, and whether the scenario asserted anything at all. A " +
216
- "scenario with no assertions replays as unverified, never as passed.",
217
- class: "action",
218
- tier: "evidence",
219
- version: "1.0.0",
220
- inputSchema: SCHEMA,
221
- run,
222
- // Undefined, always, same as the verbs: consent lives at browser_start_session, not here.
223
- describeAction: () => undefined,
224
- };
225
- //# sourceMappingURL=browser-run-scenario.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-run-scenario.js","sourceRoot":"","sources":["../../src/tools/browser-run-scenario.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- /**
2
- * `browser_save_scenario`: an explored session becomes a durable scenario,
3
- * written only through `writeScenario` (validates in and out — no private
4
- * disk path here). A step can't carry a `ref`: the schema omits the field entirely and the format module also rejects one by name.
5
- */
6
- import { type ToolDefinition } from "./kit.ts";
7
- export interface BrowserSaveScenarioData {
8
- readonly sessionId: string;
9
- readonly name: string;
10
- /** Where it was written, or "" when nothing was written. */
11
- readonly path: string;
12
- readonly targetUrl: string;
13
- readonly stepCount: number;
14
- readonly assertionCount: number;
15
- readonly savedAt: string;
16
- readonly savedAtCommit: string;
17
- }
18
- export declare const browserSaveScenarioTool: ToolDefinition;
19
- //# sourceMappingURL=browser-save-scenario.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-save-scenario.d.ts","sourceRoot":"","sources":["../../src/tools/browser-save-scenario.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EAAoE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAGjH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAubD,eAAO,MAAM,uBAAuB,EAAE,cA0BrC,CAAC"}