@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,386 +0,0 @@
1
- /**
2
- * `browser` — the merged action-class browser tool. §4/§7 step 5 of
3
- * `documents/plans/mcp-surface-consolidation.md`.
4
- *
5
- * Absorbs the eight consent-gated browser verbs — `start_session` `click`
6
- * `type` `fill` `select` `submit` `save_scenario` `run_scenario` — behind one
7
- * `verb` argument. The four stateful-read tools (`snapshot`, `navigate`,
8
- * `wait_for`, `close_session`) are a different class and are not touched
9
- * here.
10
- *
11
- * ## This is the surface merge only
12
- *
13
- * §4 names the real design problem: an element ref is issued per snapshot and
14
- * a stale one refuses rather than resolving elsewhere, so a caller cannot
15
- * author a multi-step batch up front — step 2's ref does not exist until step
16
- * 1 has run. The eventual fix is a server-side step loop that takes its own
17
- * snapshot between steps and resolves targets by role + accessible name, so a
18
- * ref never leaves the server and an ambiguous target refuses rather than
19
- * guessing. That is a design change, not a merge, and it is **not** done
20
- * here. This tool still takes one ref, for one step, per call — exactly
21
- * today's semantics, including the refusal on a superseded ref — and only
22
- * changes how the eight verbs are named and dispatched.
23
- *
24
- * ## Reuse, not reimplementation
25
- *
26
- * Every verb's `run` and `describeAction` is the same function object the
27
- * standalone tool exported before this file existed — `VERB_TOOLS` below is
28
- * a dispatch table over those objects, never a rewrite of what they do. The
29
- * one thing genuinely new is `selectVerb`: with eight verbs' properties
30
- * unioned into one schema, `additionalProperties: false` can no longer catch
31
- * `browser({ verb: "click", text: "hi" })` silently ignoring `text` — that is
32
- * exactly the defect `browser_start_session({ profile })` silently reading
33
- * `environment` was (UAT phase 5 F12), one level further down. `selectVerb`
34
- * re-establishes per-verb argument discrimination at runtime; see
35
- * `verb.ts`'s own header for the full reasoning.
36
- *
37
- * ## Consent
38
- *
39
- * Only `start_session` mints anything — it is the one call that opens a
40
- * browser and grants consent for the rest of the session's life
41
- * (`browser-start-session.ts`, DEC-380). The other seven verbs already
42
- * declare `describeAction: () => undefined` (nothing left to confirm; a verb
43
- * cannot mint its own consent), and that is preserved by delegating to each
44
- * verb's own `describeAction` rather than writing a new one — the one
45
- * consent sentence this tool produces is `browser_start_session`'s own,
46
- * unchanged, so it cannot drift from what `start_session` alone still
47
- * enforces.
48
- */
49
- import { browserClickTool } from "./browser-click.js";
50
- import { browserTypeTool } from "./browser-type.js";
51
- import { browserFillTool } from "./browser-fill.js";
52
- import { browserSelectTool } from "./browser-select.js";
53
- import { browserSubmitTool } from "./browser-submit.js";
54
- import { browserStartSessionTool } from "./browser-start-session.js";
55
- import { browserSaveScenarioTool } from "./browser-save-scenario.js";
56
- import { browserRunScenarioTool } from "./browser-run-scenario.js";
57
- import { selectVerb } from "./verb.js";
58
- const VERB_TOOLS = {
59
- start_session: browserStartSessionTool,
60
- click: browserClickTool,
61
- type: browserTypeTool,
62
- fill: browserFillTool,
63
- select: browserSelectTool,
64
- submit: browserSubmitTool,
65
- save_scenario: browserSaveScenarioTool,
66
- run_scenario: browserRunScenarioTool,
67
- };
68
- /** Every verb's own exclusive properties, beyond `verb` and the shared ones below — the table
69
- * `selectVerb` needs to say "that belongs to a different verb" instead of just "unknown". Kept
70
- * as data, next to `VERB_TOOLS`, so the two cannot silently drift apart: a verb added to one
71
- * and not the other fails loudly (`browser-verb-dispatch.test.ts` asserts the two agree). */
72
- const SPECS = [
73
- {
74
- verb: "start_session",
75
- accepts: [
76
- "targetUrl",
77
- "headless",
78
- "stackParser",
79
- "documentRoot",
80
- "environment",
81
- "storageState",
82
- "storageStatePath",
83
- "storageStateCredential",
84
- "extraHttpHeaders",
85
- "saveStorageStateTo",
86
- ],
87
- },
88
- { verb: "click", accepts: ["sessionId", "ref"] },
89
- { verb: "type", accepts: ["sessionId", "ref", "text"] },
90
- { verb: "fill", accepts: ["sessionId", "ref", "text"] },
91
- { verb: "select", accepts: ["sessionId", "ref", "value"] },
92
- { verb: "submit", accepts: ["sessionId", "ref"] },
93
- { verb: "save_scenario", accepts: ["sessionId", "name", "description", "targetUrl", "steps", "assertions"] },
94
- { verb: "run_scenario", accepts: ["sessionId", "name"] },
95
- ];
96
- /** Accepted by every verb, `start_session` included — the handshake reads it for any
97
- * action-class tool whether or not that verb ever mints. */
98
- const SHARED = ["confirmToken"];
99
- function resolveVerb(args) {
100
- return selectVerb(args, "verb", SPECS, SHARED);
101
- }
102
- async function run(args, ctx) {
103
- const verb = resolveVerb(args);
104
- // `ToolDefinition` erases its answer's type parameter — it has to, the
105
- // registry is one array of many shapes — so the delegated call comes back as
106
- // an erased answer type. The verb table is what makes the union true: every
107
- // entry's own `run` is declared against one of BrowserData's members, and a verb
108
- // added without its shape stops compiling at the union. The assertion
109
- // re-applies what the table already guarantees rather than asserting
110
- // something unchecked.
111
- return (await VERB_TOOLS[verb].run(args, ctx));
112
- }
113
- /** Delegates to the resolved verb's own `describeAction` — never writes a new consent sentence.
114
- * Only `start_session`'s returns a string; every other verb's is `() => undefined` today, and
115
- * reading that through the same dispatch table means this tool cannot describe the wrong verb
116
- * without the underlying tool describing it wrong too, which is exactly the bar §7's "one
117
- * describeAction, tested against all eight verbs" sets. */
118
- async function describeAction(args, ctx) {
119
- const verb = resolveVerb(args);
120
- return VERB_TOOLS[verb].describeAction?.(args, ctx);
121
- }
122
- /** Only `start_session`'s arguments can carry a credential (`storageState`, `extraHttpHeaders`).
123
- * Dispatched on the raw `verb` value rather than through `selectVerb`/`resolveVerb`: this runs
124
- * over whatever was actually recorded, including a call that never validated — a malformed or
125
- * unconfirmed call is exactly the one a redactor must not throw on. */
126
- function redactArgs(args) {
127
- const verb = args["verb"];
128
- const tool = typeof verb === "string" ? VERB_TOOLS[verb] : undefined;
129
- return tool?.redactArgs?.(args) ?? args;
130
- }
131
- const REF_NOTE = "An element ref from a browser_snapshot reply. Refs are issued per snapshot and invalidated by " +
132
- "navigation — a stale ref is refused rather than resolved against whatever now matches it, so " +
133
- "take a fresh snapshot after the page changes.";
134
- const TARGET_SCHEMA = {
135
- type: "object",
136
- description: "The element, named by role, name and selector together — copy all three from a " +
137
- "browser_snapshot element. No ref field: a ref is scoped to the snapshot that issued it and a " +
138
- "replay is always a later session. No fallback between the three at replay either — a " +
139
- "selector match with a disagreeing role or name stops the replay rather than substituting.",
140
- properties: {
141
- role: { type: "string", description: "The element's ARIA role, as browser_snapshot reported it." },
142
- name: { type: "string", description: "The element's accessible name, as browser_snapshot reported it." },
143
- selector: {
144
- type: ["string", "null"],
145
- description: "The selector browser_snapshot reported, or null when the element has no id, test attribute " +
146
- "or name. A null selector cannot be saved — add a data-testid and re-explore.",
147
- },
148
- },
149
- required: ["role", "name", "selector"],
150
- additionalProperties: false,
151
- };
152
- const SCHEMA = {
153
- type: "object",
154
- properties: {
155
- verb: {
156
- type: "string",
157
- enum: ["start_session", "click", "type", "fill", "select", "submit", "save_scenario", "run_scenario"],
158
- description: "REQUIRED. Which action to perform. Each verb accepts only its own arguments, listed in the " +
159
- "property descriptions below by verb name — a property belonging to a different verb is " +
160
- "refused, naming which verb it belongs to.",
161
- },
162
- // --- start_session only ---
163
- targetUrl: {
164
- type: "string",
165
- description: "start_session (REQUIRED): the URL to open, including scheme and port, e.g. " +
166
- '"http://localhost:3000/invoices". Also what consent is granted for — the session may be ' +
167
- "driven anywhere on this URL's origin for its life, and leaving that origin refuses rather " +
168
- "than asking again. save_scenario: where a replay should start; defaults to the session's " +
169
- "current URL and must stay within its consented origin.",
170
- },
171
- headless: {
172
- type: "boolean",
173
- description: "start_session: run without a visible window. Defaults to true; pass false to watch it happen.",
174
- },
175
- stackParser: {
176
- type: "object",
177
- description: "start_session: the module that can parse this application's stack traces. Without one, " +
178
- "requests are still observed and named, but no frontend→backend caller edge is written. Name " +
179
- 'it "@descryy/runtime-adapter-<language>" (one such package per frontend language — never ' +
180
- 'guess) exporting a single "create<Name>StackTraceParser" factory. @descryy/runtime-browser ' +
181
- "is never the right answer here despite the name — it exports no stack-trace parser at all. " +
182
- '"export" is needed only when a module exports more than one factory.',
183
- properties: {
184
- module: { type: "string", description: "Module specifier to import — a runtime adapter package for the frontend's language." },
185
- export: { type: "string", description: "Named export to call. Defaults to the module's single create*StackTraceParser factory." },
186
- },
187
- required: ["module"],
188
- additionalProperties: false,
189
- },
190
- documentRoot: {
191
- type: "string",
192
- description: "start_session: the directory the target URL's origin serves files from, if not the " +
193
- 'repository root — e.g. "public/". Getting this wrong degrades the call-site stack to ' +
194
- "nothing while looking like a clean run with no edges. Defaults to the repository root.",
195
- },
196
- environment: {
197
- type: "object",
198
- description: 'start_session: the environment profile this session runs against. "readOnly" refuses click, ' +
199
- "type, fill, select and submit for the whole session while still permitting navigate and " +
200
- "snapshot. The same profile shape observe_runtime takes (DEC-270) — a browser run and a " +
201
- "runtime run must not disagree about one environment. Omit it and the session's own consent " +
202
- "is the only authorization.",
203
- properties: {
204
- name: { type: "string", description: "The profile's name, free-form. Named back in any refusal it causes." },
205
- safetyLevel: {
206
- type: "string",
207
- enum: ["readOnly", "write", "destructiveWithApproval"],
208
- description: '"readOnly" refuses every mutating verb whatever the profile is called.',
209
- },
210
- },
211
- required: ["name", "safetyLevel"],
212
- additionalProperties: true,
213
- },
214
- storageState: {
215
- type: "object",
216
- description: "start_session: an already-authenticated session to seed before the first navigation. " +
217
- "Without it, click/type/fill can drive a login form but cannot reach a screen requiring an " +
218
- "existing session. Scoped to targetUrl's own origin by construction.",
219
- properties: {
220
- cookies: {
221
- type: "array",
222
- description: "Cookies to set before navigating, scoped to targetUrl's own origin.",
223
- items: {
224
- type: "object",
225
- properties: {
226
- name: { type: "string" },
227
- value: { type: "string" },
228
- path: { type: "string", description: 'Defaults to "/".' },
229
- httpOnly: { type: "boolean" },
230
- secure: { type: "boolean" },
231
- sameSite: { type: "string", enum: ["Strict", "Lax", "None"] },
232
- },
233
- required: ["name", "value"],
234
- additionalProperties: false,
235
- },
236
- },
237
- localStorage: {
238
- type: "object",
239
- description: "localStorage entries to set for targetUrl's own origin before navigating, as string values.",
240
- additionalProperties: { type: "string" },
241
- },
242
- },
243
- additionalProperties: false,
244
- },
245
- storageStatePath: {
246
- type: "string",
247
- description: "start_session: a FILE holding a saved browser storage state, instead of naming cookies " +
248
- "inline. Absolute, or relative to the repository root. Anything in the file outside this " +
249
- "session's consented origin is refused by name.",
250
- },
251
- storageStateCredential: {
252
- type: "string",
253
- description: "start_session: the NAME of a stored credential holding a saved storage state (the JSON " +
254
- "storageStatePath reads), instead of a file on disk — set with `descry credential set <name>`, " +
255
- "reading the JSON from stdin. Refused by name when no credential store is configured, nothing is " +
256
- "stored under the name, or the value is not a storage state this origin can use — never a silent " +
257
- "logged-out session. Give at most one of storageState, storageStatePath and storageStateCredential.",
258
- },
259
- extraHttpHeaders: {
260
- type: "object",
261
- description: "start_session: headers added to every request to the consented origin only — typically an " +
262
- "Authorization bearer token. Deliberately never sent to any other host a page loads.",
263
- additionalProperties: { type: "string" },
264
- },
265
- saveStorageStateTo: {
266
- type: "string",
267
- description: "start_session: write this session's cookies and stored data here when it closes, so a login " +
268
- "done once can seed later sessions via storageStatePath. Must be an absolute path OUTSIDE the " +
269
- "repository — this is a live credential.",
270
- },
271
- // --- click / type / fill / select / submit / save_scenario / run_scenario ---
272
- sessionId: {
273
- type: "string",
274
- description: "REQUIRED for every verb except start_session. The id returned by a start_session call.",
275
- },
276
- ref: {
277
- type: "string",
278
- description: `REQUIRED for click, type, fill, select and submit. ${REF_NOTE}`,
279
- },
280
- text: {
281
- type: "string",
282
- description: "REQUIRED for type and fill. type: entered as real keystrokes and APPENDS to the field's " +
283
- "current contents — every keydown/keypress/keyup a person typing would produce, needed for " +
284
- "autocomplete, per-character validation or a debounced search. fill: sets the value directly, " +
285
- "REPLACING the contents, and fires no key events at all, so anything reacting to typing will " +
286
- "not run. Use type when the field reacts to typing; fill otherwise.",
287
- },
288
- value: {
289
- type: "string",
290
- description: "REQUIRED for select. The option to choose on a chooser — either the stored value or the " +
291
- "displayed label, matched exactly; no near match is substituted. An unmatched value is " +
292
- "refused with the full list of options actually offered.",
293
- },
294
- // --- save_scenario / run_scenario ---
295
- name: {
296
- type: "string",
297
- description: "REQUIRED for save_scenario and run_scenario. save_scenario: what to call it — becomes " +
298
- "descry/scenarios/<name>.scenario.json, a committed, reviewable file. run_scenario: which " +
299
- "saved scenario to replay, by that same name.",
300
- },
301
- // --- save_scenario only ---
302
- description: { type: "string", description: "save_scenario: free text for whoever reads the file later. Optional." },
303
- steps: {
304
- type: "array",
305
- description: "save_scenario (REQUIRED, at least one): the sequence to replay, in order. Every step is " +
306
- "re-resolved against a fresh page at replay time, except one this session's own history shows " +
307
- "it actually performed, which is accepted on that record alone.",
308
- items: {
309
- type: "object",
310
- properties: {
311
- action: {
312
- type: "string",
313
- enum: ["navigate", "click", "type", "fill"],
314
- description: "navigate acts on the page; click, type and fill act on an element and need a target.",
315
- },
316
- target: TARGET_SCHEMA,
317
- url: { type: "string", description: "Where to go. navigate steps only." },
318
- text: {
319
- type: "string",
320
- description: "What to enter. type and fill steps only — type fires real keystrokes and appends, fill " +
321
- "sets the value directly and fires none.",
322
- },
323
- },
324
- required: ["action"],
325
- additionalProperties: false,
326
- },
327
- },
328
- assertions: {
329
- type: "array",
330
- description: "save_scenario (REQUIRED, may be empty). What this scenario claims about the application. " +
331
- "Absent is refused — empty means an honest exploration, which replays as unverified, never as " +
332
- "passed.",
333
- items: {
334
- type: "object",
335
- properties: {
336
- kind: {
337
- type: "string",
338
- enum: ["elementVisible", "textEquals", "urlEquals", "noConsoleErrors", "noFailedRequests"],
339
- description: "elementVisible/textEquals need a target; textEquals/urlEquals compare against expected. " +
340
- "noConsoleErrors/noFailedRequests read gathered evidence — an observed error the author " +
341
- "never asserted against never blocks; one asserted against and seen does.",
342
- },
343
- afterStep: {
344
- type: "integer",
345
- description: "Which step this runs after, by index. Omit for end-of-scenario. An index past the last step is refused.",
346
- },
347
- target: TARGET_SCHEMA,
348
- expected: { type: "string", description: "The value to compare against, for the kinds that compare one." },
349
- },
350
- required: ["kind"],
351
- additionalProperties: false,
352
- },
353
- },
354
- confirmToken: {
355
- type: "string",
356
- description: "The token from a previous call to this verb. The arguments used are the ones frozen when the token was minted, never those on the confirming call. Only start_session normally needs a second, " +
357
- "confirming call — the other seven verbs run directly because consent was already granted at " +
358
- "start_session and confirmToken is declared only because the handshake reads it for every " +
359
- "action-class tool. On a confirming call, the arguments frozen at mint time run, never " +
360
- "whatever this call supplies instead; a changed value is discarded and the reply discloses it.",
361
- },
362
- },
363
- required: ["verb"],
364
- additionalProperties: false,
365
- };
366
- export const browserTool = {
367
- name: "browser",
368
- title: "Drive a real browser",
369
- description: "Open a real browser session and drive it — one verb per call, chosen with the required `verb` " +
370
- "argument: start_session opens it and grants consent for the rest of the session (the only verb " +
371
- "that needs confirming); click, type, fill, select and submit act on an element named by a ref " +
372
- "from a browser_snapshot reply, never a raw selector, and a ref superseded by a later snapshot is " +
373
- "refused rather than resolved elsewhere; save_scenario turns an explored session into a committed, " +
374
- "replayable file and run_scenario replays one in a single batched call. Every verb returns " +
375
- "whatever the page produced — console errors, failed requests — raw and untriaged. Each verb " +
376
- "accepts only its own arguments; sending another verb's argument is refused, naming which verb it " +
377
- "belongs to.",
378
- class: "action",
379
- tier: "evidence",
380
- version: "1.0.0",
381
- inputSchema: SCHEMA,
382
- run,
383
- describeAction,
384
- redactArgs,
385
- };
386
- //# sourceMappingURL=browser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/tools/browser.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * `chain` — RG-9's five-hop user chain (click → request → endpoint → route →
3
- * handler → line) as one MCP call. `impact`/`propagation` each answer one
4
- * hop's worth of question; nothing before this walked all five in one call
5
- * with a computed completeness verdict, so "chain complete" was a mockup
6
- * string rather than a field.
7
- *
8
- * Two disclosed degradations carried through from `traceUserChain`
9
- * (`@descryy/core`): the browser→endpoint hop only exists when the browser
10
- * session that produced it was started with a `stackParser`
11
- * (`browser_start_session`); and the route→handler hop ships for
12
- * express/koa-router/fastify/hono/the Next.js App Router today, TypeScript
13
- * only. Neither is a language check here — this tool walks whatever edges
14
- * the graph holds and reports what it finds.
15
- */
16
- import { type ChainStageName } from "@descryy/core";
17
- import { type BriefNode, type NodeCandidates, type ToolDefinition } from "./kit.ts";
18
- /** One named point in the chain, as reported to a caller. */
19
- export interface ChainStageReport {
20
- readonly name: ChainStageName;
21
- readonly present: boolean;
22
- /** Omitted, not null, wherever the stage carries no node of its own
23
- * ("request" — no node type for an HTTP request; "line" — a location on
24
- * the handler, not a separate node) or is missing. */
25
- readonly node?: BriefNode;
26
- /** Set iff `!present`. */
27
- readonly reason?: string;
28
- }
29
- export interface ChainReport {
30
- readonly origin: BriefNode;
31
- readonly stages: readonly ChainStageReport[];
32
- readonly verdict: "complete" | "partial";
33
- readonly missingStage: ChainStageName | null;
34
- readonly location: {
35
- readonly file: string;
36
- readonly startLine: number;
37
- } | null;
38
- }
39
- export type ChainData = ChainReport | NodeCandidates;
40
- export declare const chainTool: ToolDefinition;
41
- //# sourceMappingURL=chain.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/tools/chain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAmC,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAErF,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,cAAc,EAEnB,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAIlB,6DAA6D;AAC7D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;2DAEuD;IACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B,0BAA0B;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,YAAY,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACjF;AAED,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,cAAc,CAAC;AAmFrD,eAAO,MAAM,SAAS,EAAE,cAevB,CAAC"}
@@ -1,105 +0,0 @@
1
- /**
2
- * `chain` — RG-9's five-hop user chain (click → request → endpoint → route →
3
- * handler → line) as one MCP call. `impact`/`propagation` each answer one
4
- * hop's worth of question; nothing before this walked all five in one call
5
- * with a computed completeness verdict, so "chain complete" was a mockup
6
- * string rather than a field.
7
- *
8
- * Two disclosed degradations carried through from `traceUserChain`
9
- * (`@descryy/core`): the browser→endpoint hop only exists when the browser
10
- * session that produced it was started with a `stackParser`
11
- * (`browser_start_session`); and the route→handler hop ships for
12
- * express/koa-router/fastify/hono/the Next.js App Router today, TypeScript
13
- * only. Neither is a language check here — this tool walks whatever edges
14
- * the graph holds and reports what it finds.
15
- */
16
- import { traceUserChain } from "@descryy/core";
17
- import { briefNode, optionalString, ToolInputError, } from "./kit.js";
18
- import { resolveOneNode } from "./lookup.js";
19
- function reportStage(stage) {
20
- return {
21
- name: stage.name,
22
- present: stage.present,
23
- ...(stage.node === null ? {} : { node: briefNode(stage.node) }),
24
- ...(stage.reason === null ? {} : { reason: stage.reason }),
25
- };
26
- }
27
- const SCHEMA = {
28
- type: "object",
29
- properties: {
30
- nodeId: { type: "string", description: "Graph node id to start the chain from — the click's origin." },
31
- symbol: {
32
- type: "string",
33
- description: "Symbol name to start from (a COMPONENT, PAGE or FUNCTION), when you do not have a node id. " +
34
- "Ambiguity is reported rather than guessed at — narrow it with \"file\".",
35
- },
36
- file: {
37
- type: "string",
38
- description: "Repository-relative path, to disambiguate \"symbol\" or to start from a file.",
39
- },
40
- },
41
- additionalProperties: false,
42
- };
43
- async function run(args, ctx) {
44
- const nodeId = optionalString(args, "nodeId");
45
- const symbol = optionalString(args, "symbol");
46
- const file = optionalString(args, "file");
47
- if (nodeId === undefined && symbol === undefined && file === undefined) {
48
- throw new ToolInputError('give one of "nodeId", "symbol" or "file"');
49
- }
50
- const provider = ctx.session.provider();
51
- const found = resolveOneNode(ctx.session, { nodeId, symbol, file });
52
- if (found.node === null) {
53
- const base = provider.baseStamp();
54
- return {
55
- result: {
56
- data: { candidates: found.candidates.map(briefNode) },
57
- stamp: { ...base, resolutionFloor: 0 },
58
- truncated: false,
59
- notes: found.notes,
60
- },
61
- nameLevel: true,
62
- state: "refused",
63
- headline: found.headline,
64
- };
65
- }
66
- ctx.progress(`Walking the chain from ${found.node.name}`);
67
- const chain = traceUserChain(provider, found.node.id);
68
- const notes = [...found.notes, ...chain.notes];
69
- return {
70
- result: {
71
- data: {
72
- origin: briefNode(chain.data.origin),
73
- stages: chain.data.stages.map(reportStage),
74
- verdict: chain.data.verdict,
75
- missingStage: chain.data.missingStage,
76
- location: chain.data.location,
77
- },
78
- stamp: chain.stamp,
79
- truncated: chain.truncated,
80
- notes,
81
- },
82
- nameLevel: true,
83
- ...(chain.data.verdict === "partial" ? { state: "refused" } : {}),
84
- headline: chain.data.verdict === "complete"
85
- ? `Chain complete: ${found.node.name} reaches ${chain.data.location?.file ?? "its handler"}` +
86
- `${chain.data.location === null ? "" : `:${chain.data.location.startLine}`}.`
87
- : `Chain incomplete at "${chain.data.missingStage}" — see stages for what is missing and why.`,
88
- };
89
- }
90
- export const chainTool = {
91
- name: "chain",
92
- class: "read",
93
- tier: "evidence",
94
- version: "1.0.0",
95
- title: "The click-to-line chain: click, request, endpoint, route, handler, line",
96
- description: "Given a COMPONENT, PAGE or FUNCTION, walks click → request → endpoint → route → handler → " +
97
- "line as one traversal and reports a computed completeness verdict: \"complete\", or " +
98
- "\"partial\" naming which hop is missing and why. Never assumes complete. Two disclosed " +
99
- "degradations: the browser→endpoint hop needs a stackParser on browser_start_session to exist " +
100
- "at all, and route→handler is produced only by a narrow set of adapters and frameworks today " +
101
- "— outside that reach this tool still runs, it will just name \"handler\" as missing.",
102
- inputSchema: SCHEMA,
103
- run,
104
- };
105
- //# sourceMappingURL=chain.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/tools/chain.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- /**
2
- * `change_scope` — merges `scope` and `pre_push` behind one `verb`
3
- * (documents/plans/mcp-surface-consolidation.md §2, group 2). Both are
4
- * `read`/`evidence`, so the merge crosses neither boundary.
5
- *
6
- * Dispatch only. Each verb's own `run()` body is untouched and stays in its
7
- * own module (`scope.ts` / `pre-push.ts`) — `pre-push.ts` itself already
8
- * composes `scope`, `pr_analysis`, `contracts` and `validate` internally, and
9
- * that composition is unaffected by this merge: it still calls `scopeTool.run`
10
- * directly, not through this dispatcher.
11
- */
12
- import type { ToolDefinition } from "./kit.ts";
13
- import type { ScopeData } from "./scope.ts";
14
- import type { PrePushData } from "./pre-push.ts";
15
- /**
16
- * What this tool answers with: one verb's shape, never a merged one.
17
- *
18
- * The merge cost this its single concrete output type, and `unknown` would have
19
- * silently retired `output-shapes.test.ts`'s check that a declared shape is tied
20
- * to the code producing it. A union keeps that tie: a verb added without its
21
- * shape here stops compiling.
22
- */
23
- export type ChangeScopeData = ScopeData | PrePushData;
24
- export declare const changeScopeTool: ToolDefinition;
25
- //# sourceMappingURL=change-scope.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"change-scope.d.ts","sourceRoot":"","sources":["../../src/tools/change-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,UAAU,CAAC;AAK5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,WAAW,CAAC;AA6FhB,eAAO,MAAM,eAAe,EAAE,cAe7B,CAAC"}