devharness 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (627) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +185 -0
  3. package/build/atomic-write.d.ts +28 -0
  4. package/build/atomic-write.d.ts.map +1 -0
  5. package/build/atomic-write.js +126 -0
  6. package/build/atomic-write.js.map +1 -0
  7. package/build/cdp-manager.d.ts +524 -0
  8. package/build/cdp-manager.d.ts.map +1 -0
  9. package/build/cdp-manager.js +1828 -0
  10. package/build/cdp-manager.js.map +1 -0
  11. package/build/cdp-manager.test.d.ts +6 -0
  12. package/build/cdp-manager.test.d.ts.map +1 -0
  13. package/build/cdp-manager.test.js +546 -0
  14. package/build/cdp-manager.test.js.map +1 -0
  15. package/build/chrome-launcher.d.ts +400 -0
  16. package/build/chrome-launcher.d.ts.map +1 -0
  17. package/build/chrome-launcher.js +1071 -0
  18. package/build/chrome-launcher.js.map +1 -0
  19. package/build/chrome-launcher.test.d.ts +11 -0
  20. package/build/chrome-launcher.test.d.ts.map +1 -0
  21. package/build/chrome-launcher.test.js +204 -0
  22. package/build/chrome-launcher.test.js.map +1 -0
  23. package/build/clickable-cache.d.ts +73 -0
  24. package/build/clickable-cache.d.ts.map +1 -0
  25. package/build/clickable-cache.js +90 -0
  26. package/build/clickable-cache.js.map +1 -0
  27. package/build/command-recorder.d.ts +401 -0
  28. package/build/command-recorder.d.ts.map +1 -0
  29. package/build/command-recorder.js +701 -0
  30. package/build/command-recorder.js.map +1 -0
  31. package/build/config.d.ts +390 -0
  32. package/build/config.d.ts.map +1 -0
  33. package/build/config.js +826 -0
  34. package/build/config.js.map +1 -0
  35. package/build/config.test.d.ts +2 -0
  36. package/build/config.test.d.ts.map +1 -0
  37. package/build/config.test.js +112 -0
  38. package/build/config.test.js.map +1 -0
  39. package/build/connection-manager.d.ts +159 -0
  40. package/build/connection-manager.d.ts.map +1 -0
  41. package/build/connection-manager.js +432 -0
  42. package/build/connection-manager.js.map +1 -0
  43. package/build/connection-manager.test.d.ts +11 -0
  44. package/build/connection-manager.test.d.ts.map +1 -0
  45. package/build/connection-manager.test.js +114 -0
  46. package/build/connection-manager.test.js.map +1 -0
  47. package/build/console-monitor.d.ts +150 -0
  48. package/build/console-monitor.d.ts.map +1 -0
  49. package/build/console-monitor.js +454 -0
  50. package/build/console-monitor.js.map +1 -0
  51. package/build/dashboard/bundle.js +1 -0
  52. package/build/dashboard/dashboard-client.d.ts +42 -0
  53. package/build/dashboard/dashboard-client.d.ts.map +1 -0
  54. package/build/dashboard/dashboard-client.js +184 -0
  55. package/build/dashboard/dashboard-client.js.map +1 -0
  56. package/build/dashboard/dashboard-hub.d.ts +50 -0
  57. package/build/dashboard/dashboard-hub.d.ts.map +1 -0
  58. package/build/dashboard/dashboard-hub.js +654 -0
  59. package/build/dashboard/dashboard-hub.js.map +1 -0
  60. package/build/dashboard/hub-lock.d.ts +16 -0
  61. package/build/dashboard/hub-lock.d.ts.map +1 -0
  62. package/build/dashboard/hub-lock.js +77 -0
  63. package/build/dashboard/hub-lock.js.map +1 -0
  64. package/build/dashboard/index.d.ts +25 -0
  65. package/build/dashboard/index.d.ts.map +1 -0
  66. package/build/dashboard/index.js +77 -0
  67. package/build/dashboard/index.js.map +1 -0
  68. package/build/dashboard/types.d.ts +83 -0
  69. package/build/dashboard/types.d.ts.map +1 -0
  70. package/build/dashboard/types.js +6 -0
  71. package/build/dashboard/types.js.map +1 -0
  72. package/build/debug-logger.d.ts +85 -0
  73. package/build/debug-logger.d.ts.map +1 -0
  74. package/build/debug-logger.js +195 -0
  75. package/build/debug-logger.js.map +1 -0
  76. package/build/debugger-aware-wrapper.d.ts +37 -0
  77. package/build/debugger-aware-wrapper.d.ts.map +1 -0
  78. package/build/debugger-aware-wrapper.js +128 -0
  79. package/build/debugger-aware-wrapper.js.map +1 -0
  80. package/build/dom-change-monitor.d.ts +92 -0
  81. package/build/dom-change-monitor.d.ts.map +1 -0
  82. package/build/dom-change-monitor.js +437 -0
  83. package/build/dom-change-monitor.js.map +1 -0
  84. package/build/element-collector.d.ts +16 -0
  85. package/build/element-collector.d.ts.map +1 -0
  86. package/build/element-collector.js +207 -0
  87. package/build/element-collector.js.map +1 -0
  88. package/build/error-helpers.d.ts +43 -0
  89. package/build/error-helpers.d.ts.map +1 -0
  90. package/build/error-helpers.js +143 -0
  91. package/build/error-helpers.js.map +1 -0
  92. package/build/formatters/console-formatter.d.ts +160 -0
  93. package/build/formatters/console-formatter.d.ts.map +1 -0
  94. package/build/formatters/console-formatter.js +338 -0
  95. package/build/formatters/console-formatter.js.map +1 -0
  96. package/build/helpers/parser-plugins.d.ts +44 -0
  97. package/build/helpers/parser-plugins.d.ts.map +1 -0
  98. package/build/helpers/parser-plugins.js +102 -0
  99. package/build/helpers/parser-plugins.js.map +1 -0
  100. package/build/helpers/paths.d.ts +79 -0
  101. package/build/helpers/paths.d.ts.map +1 -0
  102. package/build/helpers/paths.js +168 -0
  103. package/build/helpers/paths.js.map +1 -0
  104. package/build/helpers/process-liveness.d.ts +24 -0
  105. package/build/helpers/process-liveness.d.ts.map +1 -0
  106. package/build/helpers/process-liveness.js +36 -0
  107. package/build/helpers/process-liveness.js.map +1 -0
  108. package/build/helpers/process-liveness.test.d.ts +2 -0
  109. package/build/helpers/process-liveness.test.d.ts.map +1 -0
  110. package/build/helpers/process-liveness.test.js +40 -0
  111. package/build/helpers/process-liveness.test.js.map +1 -0
  112. package/build/helpers/sequence-tree.d.ts +27 -0
  113. package/build/helpers/sequence-tree.d.ts.map +1 -0
  114. package/build/helpers/sequence-tree.js +80 -0
  115. package/build/helpers/sequence-tree.js.map +1 -0
  116. package/build/helpers/sequence-tree.test.d.ts +2 -0
  117. package/build/helpers/sequence-tree.test.d.ts.map +1 -0
  118. package/build/helpers/sequence-tree.test.js +122 -0
  119. package/build/helpers/sequence-tree.test.js.map +1 -0
  120. package/build/index.d.ts +3 -0
  121. package/build/index.d.ts.map +1 -0
  122. package/build/index.js +2007 -0
  123. package/build/index.js.map +1 -0
  124. package/build/interaction-recorder.d.ts +214 -0
  125. package/build/interaction-recorder.d.ts.map +1 -0
  126. package/build/interaction-recorder.js +2007 -0
  127. package/build/interaction-recorder.js.map +1 -0
  128. package/build/issue-tracker.d.ts +107 -0
  129. package/build/issue-tracker.d.ts.map +1 -0
  130. package/build/issue-tracker.js +582 -0
  131. package/build/issue-tracker.js.map +1 -0
  132. package/build/issue-tracker.test.d.ts +2 -0
  133. package/build/issue-tracker.test.d.ts.map +1 -0
  134. package/build/issue-tracker.test.js +88 -0
  135. package/build/issue-tracker.test.js.map +1 -0
  136. package/build/launch-chrome-port.test.d.ts +14 -0
  137. package/build/launch-chrome-port.test.d.ts.map +1 -0
  138. package/build/launch-chrome-port.test.js +97 -0
  139. package/build/launch-chrome-port.test.js.map +1 -0
  140. package/build/log-processor/orchestrator.d.ts +32 -0
  141. package/build/log-processor/orchestrator.d.ts.map +1 -0
  142. package/build/log-processor/orchestrator.js +27 -0
  143. package/build/log-processor/orchestrator.js.map +1 -0
  144. package/build/logpoint-execution-tracker.d.ts +57 -0
  145. package/build/logpoint-execution-tracker.d.ts.map +1 -0
  146. package/build/logpoint-execution-tracker.js +112 -0
  147. package/build/logpoint-execution-tracker.js.map +1 -0
  148. package/build/mcp-supervisor.d.ts +3 -0
  149. package/build/mcp-supervisor.d.ts.map +1 -0
  150. package/build/mcp-supervisor.js +211 -0
  151. package/build/mcp-supervisor.js.map +1 -0
  152. package/build/messages.d.ts +165 -0
  153. package/build/messages.d.ts.map +1 -0
  154. package/build/messages.js +574 -0
  155. package/build/messages.js.map +1 -0
  156. package/build/network-monitor.d.ts +172 -0
  157. package/build/network-monitor.d.ts.map +1 -0
  158. package/build/network-monitor.js +350 -0
  159. package/build/network-monitor.js.map +1 -0
  160. package/build/overlays.d.ts +49 -0
  161. package/build/overlays.d.ts.map +1 -0
  162. package/build/overlays.js +409 -0
  163. package/build/overlays.js.map +1 -0
  164. package/build/persistent-profiles.test.d.ts +15 -0
  165. package/build/persistent-profiles.test.d.ts.map +1 -0
  166. package/build/persistent-profiles.test.js +470 -0
  167. package/build/persistent-profiles.test.js.map +1 -0
  168. package/build/port-reserver.d.ts +32 -0
  169. package/build/port-reserver.d.ts.map +1 -0
  170. package/build/port-reserver.js +118 -0
  171. package/build/port-reserver.js.map +1 -0
  172. package/build/puppeteer-manager.d.ts +47 -0
  173. package/build/puppeteer-manager.d.ts.map +1 -0
  174. package/build/puppeteer-manager.js +116 -0
  175. package/build/puppeteer-manager.js.map +1 -0
  176. package/build/recording-coverage.test.d.ts +12 -0
  177. package/build/recording-coverage.test.d.ts.map +1 -0
  178. package/build/recording-coverage.test.js +72 -0
  179. package/build/recording-coverage.test.js.map +1 -0
  180. package/build/reference-validator.d.ts +47 -0
  181. package/build/reference-validator.d.ts.map +1 -0
  182. package/build/reference-validator.js +86 -0
  183. package/build/reference-validator.js.map +1 -0
  184. package/build/reference-validator.test.d.ts +5 -0
  185. package/build/reference-validator.test.d.ts.map +1 -0
  186. package/build/reference-validator.test.js +243 -0
  187. package/build/reference-validator.test.js.map +1 -0
  188. package/build/replay-cursor.d.ts +27 -0
  189. package/build/replay-cursor.d.ts.map +1 -0
  190. package/build/replay-cursor.js +240 -0
  191. package/build/replay-cursor.js.map +1 -0
  192. package/build/runners/docker-compose-runner.d.ts +69 -0
  193. package/build/runners/docker-compose-runner.d.ts.map +1 -0
  194. package/build/runners/docker-compose-runner.js +438 -0
  195. package/build/runners/docker-compose-runner.js.map +1 -0
  196. package/build/runners/docker-runner.d.ts +65 -0
  197. package/build/runners/docker-runner.d.ts.map +1 -0
  198. package/build/runners/docker-runner.js +414 -0
  199. package/build/runners/docker-runner.js.map +1 -0
  200. package/build/runners/index.d.ts +19 -0
  201. package/build/runners/index.d.ts.map +1 -0
  202. package/build/runners/index.js +35 -0
  203. package/build/runners/index.js.map +1 -0
  204. package/build/runners/native-runner.d.ts +95 -0
  205. package/build/runners/native-runner.d.ts.map +1 -0
  206. package/build/runners/native-runner.js +370 -0
  207. package/build/runners/native-runner.js.map +1 -0
  208. package/build/runners/types.d.ts +147 -0
  209. package/build/runners/types.d.ts.map +1 -0
  210. package/build/runners/types.js +25 -0
  211. package/build/runners/types.js.map +1 -0
  212. package/build/self-restart.d.ts +12 -0
  213. package/build/self-restart.d.ts.map +1 -0
  214. package/build/self-restart.js +41 -0
  215. package/build/self-restart.js.map +1 -0
  216. package/build/self-restart.test.d.ts +2 -0
  217. package/build/self-restart.test.d.ts.map +1 -0
  218. package/build/self-restart.test.js +34 -0
  219. package/build/self-restart.test.js.map +1 -0
  220. package/build/server-claims.d.ts +161 -0
  221. package/build/server-claims.d.ts.map +1 -0
  222. package/build/server-claims.js +382 -0
  223. package/build/server-claims.js.map +1 -0
  224. package/build/server-claims.test.d.ts +2 -0
  225. package/build/server-claims.test.d.ts.map +1 -0
  226. package/build/server-claims.test.js +197 -0
  227. package/build/server-claims.test.js.map +1 -0
  228. package/build/server-manager.d.ts +438 -0
  229. package/build/server-manager.d.ts.map +1 -0
  230. package/build/server-manager.js +1674 -0
  231. package/build/server-manager.js.map +1 -0
  232. package/build/server-manager.test.d.ts +17 -0
  233. package/build/server-manager.test.d.ts.map +1 -0
  234. package/build/server-manager.test.js +122 -0
  235. package/build/server-manager.test.js.map +1 -0
  236. package/build/server-ownership.test.d.ts +2 -0
  237. package/build/server-ownership.test.d.ts.map +1 -0
  238. package/build/server-ownership.test.js +238 -0
  239. package/build/server-ownership.test.js.map +1 -0
  240. package/build/server-watcher.d.ts +21 -0
  241. package/build/server-watcher.d.ts.map +1 -0
  242. package/build/server-watcher.js +105 -0
  243. package/build/server-watcher.js.map +1 -0
  244. package/build/session-detector.d.ts +47 -0
  245. package/build/session-detector.d.ts.map +1 -0
  246. package/build/session-detector.js +229 -0
  247. package/build/session-detector.js.map +1 -0
  248. package/build/session-detector.test.d.ts +9 -0
  249. package/build/session-detector.test.d.ts.map +1 -0
  250. package/build/session-detector.test.js +45 -0
  251. package/build/session-detector.test.js.map +1 -0
  252. package/build/sourcemap-handler.d.ts +114 -0
  253. package/build/sourcemap-handler.d.ts.map +1 -0
  254. package/build/sourcemap-handler.js +479 -0
  255. package/build/sourcemap-handler.js.map +1 -0
  256. package/build/supervisor/child-manager.d.ts +43 -0
  257. package/build/supervisor/child-manager.d.ts.map +1 -0
  258. package/build/supervisor/child-manager.js +148 -0
  259. package/build/supervisor/child-manager.js.map +1 -0
  260. package/build/supervisor/child-manager.test.d.ts +2 -0
  261. package/build/supervisor/child-manager.test.d.ts.map +1 -0
  262. package/build/supervisor/child-manager.test.js +107 -0
  263. package/build/supervisor/child-manager.test.js.map +1 -0
  264. package/build/supervisor/client-watcher.d.ts +48 -0
  265. package/build/supervisor/client-watcher.d.ts.map +1 -0
  266. package/build/supervisor/client-watcher.js +186 -0
  267. package/build/supervisor/client-watcher.js.map +1 -0
  268. package/build/supervisor/client-watcher.test.d.ts +2 -0
  269. package/build/supervisor/client-watcher.test.d.ts.map +1 -0
  270. package/build/supervisor/client-watcher.test.js +121 -0
  271. package/build/supervisor/client-watcher.test.js.map +1 -0
  272. package/build/supervisor/idle-config.d.ts +30 -0
  273. package/build/supervisor/idle-config.d.ts.map +1 -0
  274. package/build/supervisor/idle-config.js +76 -0
  275. package/build/supervisor/idle-config.js.map +1 -0
  276. package/build/supervisor/idle-config.test.d.ts +2 -0
  277. package/build/supervisor/idle-config.test.d.ts.map +1 -0
  278. package/build/supervisor/idle-config.test.js +119 -0
  279. package/build/supervisor/idle-config.test.js.map +1 -0
  280. package/build/supervisor/ndjson-reader.d.ts +47 -0
  281. package/build/supervisor/ndjson-reader.d.ts.map +1 -0
  282. package/build/supervisor/ndjson-reader.js +75 -0
  283. package/build/supervisor/ndjson-reader.js.map +1 -0
  284. package/build/supervisor/ndjson-reader.test.d.ts +2 -0
  285. package/build/supervisor/ndjson-reader.test.d.ts.map +1 -0
  286. package/build/supervisor/ndjson-reader.test.js +92 -0
  287. package/build/supervisor/ndjson-reader.test.js.map +1 -0
  288. package/build/supervisor/pidfile.d.ts +11 -0
  289. package/build/supervisor/pidfile.d.ts.map +1 -0
  290. package/build/supervisor/pidfile.js +29 -0
  291. package/build/supervisor/pidfile.js.map +1 -0
  292. package/build/supervisor/pidfile.test.d.ts +8 -0
  293. package/build/supervisor/pidfile.test.d.ts.map +1 -0
  294. package/build/supervisor/pidfile.test.js +46 -0
  295. package/build/supervisor/pidfile.test.js.map +1 -0
  296. package/build/supervisor/restart-coordinator.d.ts +73 -0
  297. package/build/supervisor/restart-coordinator.d.ts.map +1 -0
  298. package/build/supervisor/restart-coordinator.js +300 -0
  299. package/build/supervisor/restart-coordinator.js.map +1 -0
  300. package/build/supervisor/restart-coordinator.test.d.ts +2 -0
  301. package/build/supervisor/restart-coordinator.test.d.ts.map +1 -0
  302. package/build/supervisor/restart-coordinator.test.js +434 -0
  303. package/build/supervisor/restart-coordinator.test.js.map +1 -0
  304. package/build/test-support/fake-execute-tool-call.d.ts +11 -0
  305. package/build/test-support/fake-execute-tool-call.d.ts.map +1 -0
  306. package/build/test-support/fake-execute-tool-call.js +19 -0
  307. package/build/test-support/fake-execute-tool-call.js.map +1 -0
  308. package/build/tool-error.d.ts +14 -0
  309. package/build/tool-error.d.ts.map +1 -0
  310. package/build/tool-error.js +18 -0
  311. package/build/tool-error.js.map +1 -0
  312. package/build/tool-response.d.ts +293 -0
  313. package/build/tool-response.d.ts.map +1 -0
  314. package/build/tool-response.js +365 -0
  315. package/build/tool-response.js.map +1 -0
  316. package/build/tools/assert-tools.d.ts +62 -0
  317. package/build/tools/assert-tools.d.ts.map +1 -0
  318. package/build/tools/assert-tools.js +330 -0
  319. package/build/tools/assert-tools.js.map +1 -0
  320. package/build/tools/breakpoint-await-abort.test.d.ts +2 -0
  321. package/build/tools/breakpoint-await-abort.test.d.ts.map +1 -0
  322. package/build/tools/breakpoint-await-abort.test.js +124 -0
  323. package/build/tools/breakpoint-await-abort.test.js.map +1 -0
  324. package/build/tools/breakpoint-tools.d.ts +99 -0
  325. package/build/tools/breakpoint-tools.d.ts.map +1 -0
  326. package/build/tools/breakpoint-tools.js +1197 -0
  327. package/build/tools/breakpoint-tools.js.map +1 -0
  328. package/build/tools/config-tools.d.ts +58 -0
  329. package/build/tools/config-tools.d.ts.map +1 -0
  330. package/build/tools/config-tools.js +180 -0
  331. package/build/tools/config-tools.js.map +1 -0
  332. package/build/tools/connection-routing.test.d.ts +12 -0
  333. package/build/tools/connection-routing.test.d.ts.map +1 -0
  334. package/build/tools/connection-routing.test.js +206 -0
  335. package/build/tools/connection-routing.test.js.map +1 -0
  336. package/build/tools/console-tools.d.ts +84 -0
  337. package/build/tools/console-tools.d.ts.map +1 -0
  338. package/build/tools/console-tools.js +241 -0
  339. package/build/tools/console-tools.js.map +1 -0
  340. package/build/tools/content-tools.d.ts +74 -0
  341. package/build/tools/content-tools.d.ts.map +1 -0
  342. package/build/tools/content-tools.js +582 -0
  343. package/build/tools/content-tools.js.map +1 -0
  344. package/build/tools/dashboard-tools.d.ts +38 -0
  345. package/build/tools/dashboard-tools.d.ts.map +1 -0
  346. package/build/tools/dashboard-tools.js +123 -0
  347. package/build/tools/dashboard-tools.js.map +1 -0
  348. package/build/tools/dom-tools.d.ts +41 -0
  349. package/build/tools/dom-tools.d.ts.map +1 -0
  350. package/build/tools/dom-tools.js +277 -0
  351. package/build/tools/dom-tools.js.map +1 -0
  352. package/build/tools/download-tools.d.ts +55 -0
  353. package/build/tools/download-tools.d.ts.map +1 -0
  354. package/build/tools/download-tools.js +280 -0
  355. package/build/tools/download-tools.js.map +1 -0
  356. package/build/tools/execution-tools.d.ts +40 -0
  357. package/build/tools/execution-tools.d.ts.map +1 -0
  358. package/build/tools/execution-tools.js +121 -0
  359. package/build/tools/execution-tools.js.map +1 -0
  360. package/build/tools/input-abort.test.d.ts +2 -0
  361. package/build/tools/input-abort.test.d.ts.map +1 -0
  362. package/build/tools/input-abort.test.js +227 -0
  363. package/build/tools/input-abort.test.js.map +1 -0
  364. package/build/tools/input-ambiguous-selector.test.d.ts +2 -0
  365. package/build/tools/input-ambiguous-selector.test.d.ts.map +1 -0
  366. package/build/tools/input-ambiguous-selector.test.js +34 -0
  367. package/build/tools/input-ambiguous-selector.test.js.map +1 -0
  368. package/build/tools/input-tools.d.ts +168 -0
  369. package/build/tools/input-tools.d.ts.map +1 -0
  370. package/build/tools/input-tools.js +1397 -0
  371. package/build/tools/input-tools.js.map +1 -0
  372. package/build/tools/inspection-tools.d.ts +112 -0
  373. package/build/tools/inspection-tools.d.ts.map +1 -0
  374. package/build/tools/inspection-tools.js +637 -0
  375. package/build/tools/inspection-tools.js.map +1 -0
  376. package/build/tools/interpolation.d.ts +30 -0
  377. package/build/tools/interpolation.d.ts.map +1 -0
  378. package/build/tools/interpolation.js +143 -0
  379. package/build/tools/interpolation.js.map +1 -0
  380. package/build/tools/issues-abort-hygiene.test.d.ts +2 -0
  381. package/build/tools/issues-abort-hygiene.test.d.ts.map +1 -0
  382. package/build/tools/issues-abort-hygiene.test.js +79 -0
  383. package/build/tools/issues-abort-hygiene.test.js.map +1 -0
  384. package/build/tools/issues-tools.d.ts +98 -0
  385. package/build/tools/issues-tools.d.ts.map +1 -0
  386. package/build/tools/issues-tools.js +821 -0
  387. package/build/tools/issues-tools.js.map +1 -0
  388. package/build/tools/issues-tools.test.d.ts +8 -0
  389. package/build/tools/issues-tools.test.d.ts.map +1 -0
  390. package/build/tools/issues-tools.test.js +184 -0
  391. package/build/tools/issues-tools.test.js.map +1 -0
  392. package/build/tools/modal-tools.d.ts +73 -0
  393. package/build/tools/modal-tools.d.ts.map +1 -0
  394. package/build/tools/modal-tools.js +161 -0
  395. package/build/tools/modal-tools.js.map +1 -0
  396. package/build/tools/network-tools.d.ts +72 -0
  397. package/build/tools/network-tools.d.ts.map +1 -0
  398. package/build/tools/network-tools.js +432 -0
  399. package/build/tools/network-tools.js.map +1 -0
  400. package/build/tools/page-tools.d.ts +78 -0
  401. package/build/tools/page-tools.d.ts.map +1 -0
  402. package/build/tools/page-tools.js +255 -0
  403. package/build/tools/page-tools.js.map +1 -0
  404. package/build/tools/plugin-tools.d.ts +16 -0
  405. package/build/tools/plugin-tools.d.ts.map +1 -0
  406. package/build/tools/plugin-tools.js +17 -0
  407. package/build/tools/plugin-tools.js.map +1 -0
  408. package/build/tools/replay-abort.test.d.ts +2 -0
  409. package/build/tools/replay-abort.test.d.ts.map +1 -0
  410. package/build/tools/replay-abort.test.js +259 -0
  411. package/build/tools/replay-abort.test.js.map +1 -0
  412. package/build/tools/replay-add-conditional.test.d.ts +2 -0
  413. package/build/tools/replay-add-conditional.test.d.ts.map +1 -0
  414. package/build/tools/replay-add-conditional.test.js +205 -0
  415. package/build/tools/replay-add-conditional.test.js.map +1 -0
  416. package/build/tools/replay-background-run.test.d.ts +2 -0
  417. package/build/tools/replay-background-run.test.d.ts.map +1 -0
  418. package/build/tools/replay-background-run.test.js +176 -0
  419. package/build/tools/replay-background-run.test.js.map +1 -0
  420. package/build/tools/replay-capture-variables.test.d.ts +2 -0
  421. package/build/tools/replay-capture-variables.test.d.ts.map +1 -0
  422. package/build/tools/replay-capture-variables.test.js +331 -0
  423. package/build/tools/replay-capture-variables.test.js.map +1 -0
  424. package/build/tools/replay-conditional-idb-and-launch.test.d.ts +11 -0
  425. package/build/tools/replay-conditional-idb-and-launch.test.d.ts.map +1 -0
  426. package/build/tools/replay-conditional-idb-and-launch.test.js +429 -0
  427. package/build/tools/replay-conditional-idb-and-launch.test.js.map +1 -0
  428. package/build/tools/replay-conditional-timeout.test.d.ts +14 -0
  429. package/build/tools/replay-conditional-timeout.test.d.ts.map +1 -0
  430. package/build/tools/replay-conditional-timeout.test.js +126 -0
  431. package/build/tools/replay-conditional-timeout.test.js.map +1 -0
  432. package/build/tools/replay-declare.test.d.ts +2 -0
  433. package/build/tools/replay-declare.test.d.ts.map +1 -0
  434. package/build/tools/replay-declare.test.js +106 -0
  435. package/build/tools/replay-declare.test.js.map +1 -0
  436. package/build/tools/replay-declared-browser-cleanup.test.d.ts +2 -0
  437. package/build/tools/replay-declared-browser-cleanup.test.d.ts.map +1 -0
  438. package/build/tools/replay-declared-browser-cleanup.test.js +103 -0
  439. package/build/tools/replay-declared-browser-cleanup.test.js.map +1 -0
  440. package/build/tools/replay-declared-profile.test.d.ts +2 -0
  441. package/build/tools/replay-declared-profile.test.d.ts.map +1 -0
  442. package/build/tools/replay-declared-profile.test.js +116 -0
  443. package/build/tools/replay-declared-profile.test.js.map +1 -0
  444. package/build/tools/replay-executor.d.ts +556 -0
  445. package/build/tools/replay-executor.d.ts.map +1 -0
  446. package/build/tools/replay-executor.js +2347 -0
  447. package/build/tools/replay-executor.js.map +1 -0
  448. package/build/tools/replay-folder-save.test.d.ts +2 -0
  449. package/build/tools/replay-folder-save.test.d.ts.map +1 -0
  450. package/build/tools/replay-folder-save.test.js +63 -0
  451. package/build/tools/replay-folder-save.test.js.map +1 -0
  452. package/build/tools/replay-formatters.d.ts +148 -0
  453. package/build/tools/replay-formatters.d.ts.map +1 -0
  454. package/build/tools/replay-formatters.js +856 -0
  455. package/build/tools/replay-formatters.js.map +1 -0
  456. package/build/tools/replay-kill-chrome-on-finish.test.d.ts +2 -0
  457. package/build/tools/replay-kill-chrome-on-finish.test.d.ts.map +1 -0
  458. package/build/tools/replay-kill-chrome-on-finish.test.js +175 -0
  459. package/build/tools/replay-kill-chrome-on-finish.test.js.map +1 -0
  460. package/build/tools/replay-multi-connection.test.d.ts +2 -0
  461. package/build/tools/replay-multi-connection.test.d.ts.map +1 -0
  462. package/build/tools/replay-multi-connection.test.js +547 -0
  463. package/build/tools/replay-multi-connection.test.js.map +1 -0
  464. package/build/tools/replay-output-and-record-options.test.d.ts +2 -0
  465. package/build/tools/replay-output-and-record-options.test.d.ts.map +1 -0
  466. package/build/tools/replay-output-and-record-options.test.js +240 -0
  467. package/build/tools/replay-output-and-record-options.test.js.map +1 -0
  468. package/build/tools/replay-production-error-shape.test.d.ts +7 -0
  469. package/build/tools/replay-production-error-shape.test.d.ts.map +1 -0
  470. package/build/tools/replay-production-error-shape.test.js +93 -0
  471. package/build/tools/replay-production-error-shape.test.js.map +1 -0
  472. package/build/tools/replay-rebase.test.d.ts +2 -0
  473. package/build/tools/replay-rebase.test.d.ts.map +1 -0
  474. package/build/tools/replay-rebase.test.js +58 -0
  475. package/build/tools/replay-rebase.test.js.map +1 -0
  476. package/build/tools/replay-retry-classification.test.d.ts +9 -0
  477. package/build/tools/replay-retry-classification.test.d.ts.map +1 -0
  478. package/build/tools/replay-retry-classification.test.js +57 -0
  479. package/build/tools/replay-retry-classification.test.js.map +1 -0
  480. package/build/tools/replay-run-registry.d.ts +55 -0
  481. package/build/tools/replay-run-registry.d.ts.map +1 -0
  482. package/build/tools/replay-run-registry.js +65 -0
  483. package/build/tools/replay-run-registry.js.map +1 -0
  484. package/build/tools/replay-sequence-reload.test.d.ts +2 -0
  485. package/build/tools/replay-sequence-reload.test.d.ts.map +1 -0
  486. package/build/tools/replay-sequence-reload.test.js +82 -0
  487. package/build/tools/replay-sequence-reload.test.js.map +1 -0
  488. package/build/tools/replay-socket-scope.test.d.ts +2 -0
  489. package/build/tools/replay-socket-scope.test.d.ts.map +1 -0
  490. package/build/tools/replay-socket-scope.test.js +75 -0
  491. package/build/tools/replay-socket-scope.test.js.map +1 -0
  492. package/build/tools/replay-step-connection.test.d.ts +2 -0
  493. package/build/tools/replay-step-connection.test.d.ts.map +1 -0
  494. package/build/tools/replay-step-connection.test.js +292 -0
  495. package/build/tools/replay-step-connection.test.js.map +1 -0
  496. package/build/tools/replay-step-timeout.test.d.ts +2 -0
  497. package/build/tools/replay-step-timeout.test.d.ts.map +1 -0
  498. package/build/tools/replay-step-timeout.test.js +204 -0
  499. package/build/tools/replay-step-timeout.test.js.map +1 -0
  500. package/build/tools/replay-tags.test.d.ts +2 -0
  501. package/build/tools/replay-tags.test.d.ts.map +1 -0
  502. package/build/tools/replay-tags.test.js +99 -0
  503. package/build/tools/replay-tags.test.js.map +1 -0
  504. package/build/tools/replay-teardown-and-foreach.test.d.ts +13 -0
  505. package/build/tools/replay-teardown-and-foreach.test.d.ts.map +1 -0
  506. package/build/tools/replay-teardown-and-foreach.test.js +318 -0
  507. package/build/tools/replay-teardown-and-foreach.test.js.map +1 -0
  508. package/build/tools/replay-tool-name-validation.test.d.ts +2 -0
  509. package/build/tools/replay-tool-name-validation.test.d.ts.map +1 -0
  510. package/build/tools/replay-tool-name-validation.test.js +280 -0
  511. package/build/tools/replay-tool-name-validation.test.js.map +1 -0
  512. package/build/tools/replay-tools.d.ts +288 -0
  513. package/build/tools/replay-tools.d.ts.map +1 -0
  514. package/build/tools/replay-tools.js +2994 -0
  515. package/build/tools/replay-tools.js.map +1 -0
  516. package/build/tools/request-abort.test.d.ts +2 -0
  517. package/build/tools/request-abort.test.d.ts.map +1 -0
  518. package/build/tools/request-abort.test.js +130 -0
  519. package/build/tools/request-abort.test.js.map +1 -0
  520. package/build/tools/request-tools.d.ts +56 -0
  521. package/build/tools/request-tools.d.ts.map +1 -0
  522. package/build/tools/request-tools.js +174 -0
  523. package/build/tools/request-tools.js.map +1 -0
  524. package/build/tools/screenshot-tools.d.ts +135 -0
  525. package/build/tools/screenshot-tools.d.ts.map +1 -0
  526. package/build/tools/screenshot-tools.js +636 -0
  527. package/build/tools/screenshot-tools.js.map +1 -0
  528. package/build/tools/server-tools.d.ts +88 -0
  529. package/build/tools/server-tools.d.ts.map +1 -0
  530. package/build/tools/server-tools.js +485 -0
  531. package/build/tools/server-tools.js.map +1 -0
  532. package/build/tools/source-tools.d.ts +46 -0
  533. package/build/tools/source-tools.d.ts.map +1 -0
  534. package/build/tools/source-tools.js +47 -0
  535. package/build/tools/source-tools.js.map +1 -0
  536. package/build/tools/storage-tools.d.ts +141 -0
  537. package/build/tools/storage-tools.d.ts.map +1 -0
  538. package/build/tools/storage-tools.js +894 -0
  539. package/build/tools/storage-tools.js.map +1 -0
  540. package/build/tools/storage-tools.test.d.ts +13 -0
  541. package/build/tools/storage-tools.test.d.ts.map +1 -0
  542. package/build/tools/storage-tools.test.js +707 -0
  543. package/build/tools/storage-tools.test.js.map +1 -0
  544. package/build/tools/tab-tools.d.ts +42 -0
  545. package/build/tools/tab-tools.d.ts.map +1 -0
  546. package/build/tools/tab-tools.js +296 -0
  547. package/build/tools/tab-tools.js.map +1 -0
  548. package/build/tools/wait-tools.d.ts +85 -0
  549. package/build/tools/wait-tools.d.ts.map +1 -0
  550. package/build/tools/wait-tools.js +236 -0
  551. package/build/tools/wait-tools.js.map +1 -0
  552. package/build/tools/wait-tools.test.d.ts +9 -0
  553. package/build/tools/wait-tools.test.d.ts.map +1 -0
  554. package/build/tools/wait-tools.test.js +193 -0
  555. package/build/tools/wait-tools.test.js.map +1 -0
  556. package/build/types.d.ts +133 -0
  557. package/build/types.d.ts.map +1 -0
  558. package/build/types.js +5 -0
  559. package/build/types.js.map +1 -0
  560. package/build/ui-verifier.d.ts +88 -0
  561. package/build/ui-verifier.d.ts.map +1 -0
  562. package/build/ui-verifier.js +540 -0
  563. package/build/ui-verifier.js.map +1 -0
  564. package/build/utils/abort.d.ts +68 -0
  565. package/build/utils/abort.d.ts.map +1 -0
  566. package/build/utils/abort.js +159 -0
  567. package/build/utils/abort.js.map +1 -0
  568. package/build/utils/abort.test.d.ts +2 -0
  569. package/build/utils/abort.test.d.ts.map +1 -0
  570. package/build/utils/abort.test.js +174 -0
  571. package/build/utils/abort.test.js.map +1 -0
  572. package/build/utils/modal-detection-core.d.ts +150 -0
  573. package/build/utils/modal-detection-core.d.ts.map +1 -0
  574. package/build/utils/modal-detection-core.js +332 -0
  575. package/build/utils/modal-detection-core.js.map +1 -0
  576. package/build/utils/modal-detection-core.test.d.ts +5 -0
  577. package/build/utils/modal-detection-core.test.d.ts.map +1 -0
  578. package/build/utils/modal-detection-core.test.js +492 -0
  579. package/build/utils/modal-detection-core.test.js.map +1 -0
  580. package/build/utils/modal-detector.d.ts +29 -0
  581. package/build/utils/modal-detector.d.ts.map +1 -0
  582. package/build/utils/modal-detector.js +281 -0
  583. package/build/utils/modal-detector.js.map +1 -0
  584. package/build/utils/modal-dismissal.d.ts +32 -0
  585. package/build/utils/modal-dismissal.d.ts.map +1 -0
  586. package/build/utils/modal-dismissal.js +190 -0
  587. package/build/utils/modal-dismissal.js.map +1 -0
  588. package/build/utils/port-check.d.ts +31 -0
  589. package/build/utils/port-check.d.ts.map +1 -0
  590. package/build/utils/port-check.js +87 -0
  591. package/build/utils/port-check.js.map +1 -0
  592. package/build/utils/port-check.test.d.ts +2 -0
  593. package/build/utils/port-check.test.d.ts.map +1 -0
  594. package/build/utils/port-check.test.js +66 -0
  595. package/build/utils/port-check.test.js.map +1 -0
  596. package/build/utils/selector-resolver.d.ts +66 -0
  597. package/build/utils/selector-resolver.d.ts.map +1 -0
  598. package/build/utils/selector-resolver.js +200 -0
  599. package/build/utils/selector-resolver.js.map +1 -0
  600. package/build/validation-helpers.d.ts +41 -0
  601. package/build/validation-helpers.d.ts.map +1 -0
  602. package/build/validation-helpers.js +236 -0
  603. package/build/validation-helpers.js.map +1 -0
  604. package/build/window-sizing.d.ts +26 -0
  605. package/build/window-sizing.d.ts.map +1 -0
  606. package/build/window-sizing.js +87 -0
  607. package/build/window-sizing.js.map +1 -0
  608. package/build/window-sizing.test.d.ts +8 -0
  609. package/build/window-sizing.test.d.ts.map +1 -0
  610. package/build/window-sizing.test.js +113 -0
  611. package/build/window-sizing.test.js.map +1 -0
  612. package/docs/README.md +74 -0
  613. package/docs/automation.md +562 -0
  614. package/docs/debugging.md +229 -0
  615. package/docs/installation.md +133 -0
  616. package/docs/instructions.md +227 -0
  617. package/docs/mcp-instructions.md +15 -0
  618. package/docs/message-system.md +327 -0
  619. package/docs/messages.md +3480 -0
  620. package/docs/parser-plugins.md +132 -0
  621. package/docs/replay.md +1411 -0
  622. package/docs/troubleshooting.md +272 -0
  623. package/docs/working_with_llm_notes.md +5 -0
  624. package/package.json +87 -0
  625. package/skills/devharness/SKILL.md +195 -0
  626. package/skills/devharness/references/sequences.md +613 -0
  627. package/skills/devharness/references/tool-categories.md +99 -0
@@ -0,0 +1,524 @@
1
+ /**
2
+ * CDP Connection Manager
3
+ * Handles connection to Chrome DevTools Protocol (Chrome or Node.js)
4
+ */
5
+ import type { BreakpointInfo, CallFrame, RuntimeType, ConsoleMessageCallback, DOMBreakpointInfo, DOMBreakpointType, EventListenerBreakpointInfo, XHRBreakpointInfo } from './types.js';
6
+ import type { SourceMapHandler } from './sourcemap-handler.js';
7
+ /**
8
+ * Thrown by evaluateExpression() when the evaluated code itself threw
9
+ * (CDP reports this via `exceptionDetails` on an otherwise-successful
10
+ * Runtime.evaluate/Debugger.evaluateOnCallFrame response, NOT as a rejected
11
+ * promise) - e.g. `Math.max(...bigArray)` throwing a stack-exhaustion
12
+ * RangeError. This is an ordinary outcome of evaluating arbitrary user code
13
+ * and must be surfaced as a normal tool error rather than silently ignored.
14
+ */
15
+ export declare class EvaluateExpressionExceptionError extends Error {
16
+ readonly expression: string;
17
+ readonly exceptionType: string;
18
+ readonly exceptionMessage: string;
19
+ readonly exceptionStack?: string | undefined;
20
+ constructor(expression: string, exceptionType: string, exceptionMessage: string, exceptionStack?: string | undefined);
21
+ }
22
+ /**
23
+ * Thrown by evaluateExpression() when the underlying CDP call does not
24
+ * return within the bounded client-side timeout. This is the backstop for
25
+ * cases where the renderer/execution context stops responding entirely (no
26
+ * result, no exception, no CDP-level timeout) - see the RangeError
27
+ * stack-exhaustion hang this was written to fix.
28
+ */
29
+ export declare class EvaluateExpressionTimeoutError extends Error {
30
+ readonly expression: string;
31
+ readonly timeoutMs: number;
32
+ constructor(expression: string, timeoutMs: number);
33
+ }
34
+ /**
35
+ * Thrown by evaluateExpression() when the expression returned a Promise that
36
+ * is still pending while the debugger is paused. The paused event loop can
37
+ * never run the microtask queue, so the promise can never settle - awaiting
38
+ * it would only burn the full client-side timeout. Failing fast with an
39
+ * explanation is strictly better. (Promises that already settled - e.g.
40
+ * `Promise.resolve(x)` or an async IIFE with no real await - ARE recovered
41
+ * via their [[PromiseState]]/[[PromiseResult]] internal properties and never
42
+ * reach this error.)
43
+ */
44
+ export declare class EvaluateExpressionPendingPromiseError extends Error {
45
+ readonly expression: string;
46
+ constructor(expression: string);
47
+ }
48
+ /** Options accepted by evaluateExpression()/evaluateExpressionDetailed(). */
49
+ export interface EvaluateExpressionOptions {
50
+ /**
51
+ * Await a returned Promise and use its settled value (default: true).
52
+ * Pass false to inspect the Promise object itself.
53
+ */
54
+ awaitPromise?: boolean;
55
+ /**
56
+ * Also attempt an exact, machine-readable capture of the result (via CDP
57
+ * returnByValue on the result object - no re-execution, no display
58
+ * round-trip). Only meaningful through evaluateExpressionDetailed().
59
+ */
60
+ captureRaw?: boolean;
61
+ }
62
+ /** Result of evaluateExpressionDetailed(). */
63
+ export interface EvaluateExpressionDetailedResult {
64
+ /** Human-facing formatted value (same shape evaluateExpression() returns). */
65
+ formatted: any;
66
+ /** Exact value, only meaningful when rawCaptured is true. */
67
+ rawValue?: unknown;
68
+ /**
69
+ * True when rawValue is an exact by-value capture of the result. False when
70
+ * the value is not serializable by value (DOM node, Map, Date, window, ...)
71
+ * - callers should fall back to reconstructing from `formatted`.
72
+ */
73
+ rawCaptured: boolean;
74
+ }
75
+ export declare class CDPManager {
76
+ private client;
77
+ private state;
78
+ private scriptIdToUrl;
79
+ private urlToScriptId;
80
+ private pauseResolvers;
81
+ private scriptWaitResolvers;
82
+ private sourceMapHandler;
83
+ private logpointLimitExceeded;
84
+ private consoleMessageCallback;
85
+ private pauseCallback;
86
+ private resumeCallback;
87
+ private domBreakpoints;
88
+ private eventBreakpoints;
89
+ private xhrBreakpoints;
90
+ private advancedBpCounter;
91
+ constructor(sourceMapHandler?: SourceMapHandler);
92
+ /**
93
+ * Set a callback to receive console messages from Runtime.consoleAPICalled
94
+ * This is used for Node.js debugging where Puppeteer's page.on('console') isn't available
95
+ */
96
+ setConsoleMessageCallback(callback: ConsoleMessageCallback | null): void;
97
+ /**
98
+ * Set a callback to be called when debugger pauses at a breakpoint
99
+ */
100
+ setPauseCallback(callback: (() => void) | null): void;
101
+ /**
102
+ * Set a callback to be called when debugger resumes from a breakpoint
103
+ */
104
+ setResumeCallback(callback: (() => void) | null): void;
105
+ /**
106
+ * Find script IDs by URL, with fallback matching strategies:
107
+ * 1. Exact match
108
+ * 2. Base URL match (strips query params)
109
+ * 3. Filename/path suffix match (e.g., "click.js" matches "/controls/click.js")
110
+ *
111
+ * This allows breakpoints to work with partial URLs and across page reloads
112
+ * Returns the most recently loaded script (highest scriptId) when multiple matches exist
113
+ */
114
+ private findScriptIds;
115
+ /**
116
+ * Check if a script with the given URL (or matching suffix) is loaded
117
+ * This is useful to detect Vite-style serving where .ts files are loaded directly
118
+ */
119
+ isScriptLoaded(url: string): boolean;
120
+ /**
121
+ * Get the URL for a script by its ID
122
+ */
123
+ getScriptUrl(scriptId: string): string | undefined;
124
+ /**
125
+ * Connect to a Chrome or Node.js debugger instance
126
+ * @param host - The debugger host (default: localhost)
127
+ * @param port - The debugger port (default: 9222)
128
+ * @param targetId - Optional target ID to connect to a specific page/tab
129
+ */
130
+ connect(host?: string, port?: number, targetId?: string): Promise<void>;
131
+ /**
132
+ * Disconnect from the debugger
133
+ */
134
+ disconnect(): Promise<void>;
135
+ /**
136
+ * Check if connected
137
+ */
138
+ isConnected(): boolean;
139
+ /**
140
+ * Check if currently paused at a breakpoint
141
+ */
142
+ isPaused(): boolean;
143
+ /**
144
+ * Get the runtime type (chrome, node, or unknown)
145
+ */
146
+ getRuntimeType(): RuntimeType;
147
+ /**
148
+ * Detect whether we're connected to Chrome/browser or Node.js
149
+ * This detection happens by checking for browser-specific global objects
150
+ */
151
+ private detectRuntimeType;
152
+ /**
153
+ * Set a breakpoint at a specific file and line
154
+ */
155
+ setBreakpoint(url: string, lineNumber: number, columnNumber?: number, condition?: string): Promise<BreakpointInfo>;
156
+ /**
157
+ * Remove a breakpoint
158
+ */
159
+ removeBreakpoint(breakpointId: string): Promise<void>;
160
+ /**
161
+ * Get all active breakpoints
162
+ */
163
+ getBreakpoints(): BreakpointInfo[];
164
+ /**
165
+ * Get breakpoint counts (total, regular, logpoints)
166
+ */
167
+ getBreakpointCounts(): {
168
+ total: number;
169
+ breakpoints: number;
170
+ logpoints: number;
171
+ };
172
+ /**
173
+ * Wait for a script matching the given URL pattern to load
174
+ * @param urlPattern - String (substring match) or RegExp to match against script URLs
175
+ * @param timeout - Maximum time to wait in milliseconds (default: 10000)
176
+ * @returns The URL of the matched script
177
+ * @throws Error if timeout expires before script loads
178
+ */
179
+ waitForScript(urlPattern: string | RegExp, timeout?: number): Promise<string>;
180
+ /**
181
+ * Get list of all loaded scripts
182
+ * @returns Array of script URLs
183
+ */
184
+ getLoadedScripts(): string[];
185
+ /**
186
+ * Check if a script matching the pattern is loaded
187
+ * @param urlPattern - String (substring match) or RegExp
188
+ * @returns The matched URL or null
189
+ */
190
+ findLoadedScript(urlPattern: string | RegExp): string | null;
191
+ /**
192
+ * Synchronize breakpoint state with CDP's actual breakpoints
193
+ * Use this to recover from state desynchronization
194
+ */
195
+ syncBreakpoints(): Promise<{
196
+ synced: number;
197
+ removed: number;
198
+ }>;
199
+ /**
200
+ * Diagnose why a breakpoint failed to set (empty locations array)
201
+ * Performs lazy validation to determine exact cause
202
+ */
203
+ diagnoseBreakpointFailure(url: string, lineNumber: number): Promise<{
204
+ cause: 'script_not_found' | 'line_out_of_bounds' | 'line_not_executable';
205
+ message: string;
206
+ scriptUrl: string;
207
+ requestedLine: number;
208
+ totalLines?: number;
209
+ suggestion: string;
210
+ }>;
211
+ /**
212
+ * Resume execution
213
+ */
214
+ resume(): Promise<void>;
215
+ /**
216
+ * Pause execution
217
+ */
218
+ pause(): Promise<void>;
219
+ /**
220
+ * Handle logpoint execution limit exceeded
221
+ * This should be called by the LogpointExecutionTracker when a logpoint hits its limit
222
+ */
223
+ handleLogpointLimitExceeded(metadata: {
224
+ breakpointId: string;
225
+ url: string;
226
+ lineNumber: number;
227
+ logMessage: string;
228
+ executionCount: number;
229
+ maxExecutions: number;
230
+ logs: any[];
231
+ }): Promise<void>;
232
+ /**
233
+ * Get information about the logpoint that exceeded its limit (if any)
234
+ */
235
+ getLogpointLimitExceeded(): typeof this.logpointLimitExceeded;
236
+ /**
237
+ * Clear the logpoint limit exceeded state
238
+ */
239
+ clearLogpointLimitExceeded(): void;
240
+ /**
241
+ * Step over (next line)
242
+ */
243
+ stepOver(): Promise<void>;
244
+ /**
245
+ * Step into function
246
+ */
247
+ stepInto(): Promise<void>;
248
+ /**
249
+ * Step out of function
250
+ */
251
+ stepOut(): Promise<void>;
252
+ /**
253
+ * Get current call stack
254
+ */
255
+ getCallStack(): CallFrame[] | undefined;
256
+ /**
257
+ * Get variables for a specific call frame
258
+ */
259
+ /**
260
+ * Estimate token count for a value (rough approximation: ~4 chars per token)
261
+ */
262
+ private estimateTokens;
263
+ /**
264
+ * Calculate effective token budget accounting for response overhead.
265
+ * The final MCP response includes:
266
+ * - Message template text (~100 tokens)
267
+ * - JSON code block markers and wrapper (~50 tokens)
268
+ * - JSON.stringify indentation adds ~30% to data size
269
+ */
270
+ private calculateEffectiveBudget;
271
+ getVariables(callFrameId: string, includeGlobal?: boolean, filter?: string, expandObjects?: boolean, maxDepth?: number, maxTokens?: number): Promise<{
272
+ data: any;
273
+ totalCount: number;
274
+ usedDepth: number;
275
+ requestedDepth: number;
276
+ responseType: 'full' | 'depth_reduced' | 'names_only' | 'counts_only';
277
+ filterInsufficient: boolean;
278
+ }>;
279
+ /**
280
+ * Bounded upper limit on how long evaluateExpression() will wait for CDP to
281
+ * respond, in milliseconds. Exported as an instance property (rather than a
282
+ * module constant) so tests can override it on a per-manager basis without
283
+ * needing real wall-clock waits. Kept comfortably below the 180s default
284
+ * Puppeteer protocolTimeout that would otherwise leak through as a raw,
285
+ * untyped "Runtime.callFunctionOn timed out" error on this path.
286
+ */
287
+ evaluateExpressionTimeoutMs: number;
288
+ /**
289
+ * Evaluate an expression in the current context.
290
+ *
291
+ * Two distinct failure modes are handled explicitly (this method used to
292
+ * handle neither, which is how a stack-exhaustion RangeError thrown by
293
+ * evaluated code could hang a caller forever with no result, no error, and
294
+ * no timeout):
295
+ *
296
+ * 1. The evaluated code throws. CDP reports this via `exceptionDetails` on
297
+ * an otherwise-successful response - it is NOT a rejected promise - so
298
+ * it must be checked explicitly and surfaced as
299
+ * EvaluateExpressionExceptionError instead of being formatted as if it
300
+ * were a normal return value.
301
+ * 2. The CDP call itself never resolves (a wedged renderer/execution
302
+ * context). A bounded client-side timeout (racing the CDP call against
303
+ * a timer) guarantees this method always settles, throwing
304
+ * EvaluateExpressionTimeoutError instead of hanging indefinitely. We
305
+ * also pass CDP's own `timeout` param so well-behaved renderers abort
306
+ * the runaway script themselves and return exceptionDetails cleanly
307
+ * (case 1) rather than relying solely on our client-side timer.
308
+ */
309
+ evaluateExpression(expression: string, callFrameId?: string, expandObjects?: boolean, maxDepth?: number, options?: EvaluateExpressionOptions): Promise<any>;
310
+ /**
311
+ * Like evaluateExpression(), but also attempts an exact by-value capture of
312
+ * the result when options.captureRaw is set (used for `saveAs` and the
313
+ * structured `_meta.inspect.value`, so captured data does not round-trip
314
+ * through display formatting).
315
+ *
316
+ * Promise handling (bug-015), all empirically verified against Chrome 150:
317
+ * - Running page, no callFrameId: `awaitPromise: true` is passed to
318
+ * Runtime.evaluate, so async results resolve to their settled value and
319
+ * rejections surface as exceptionDetails (-> ExceptionError). A promise
320
+ * that never settles is bounded by the client-side timeout.
321
+ * - Paused (callFrameId given, OR a global evaluation while the debugger is
322
+ * paused - Runtime.evaluate with awaitPromise HANGS in that state, and
323
+ * Debugger.evaluateOnCallFrame silently ignores awaitPromise): we never
324
+ * pass awaitPromise. Instead, a Promise result is resolved through its
325
+ * [[PromiseState]]/[[PromiseResult]] internal properties, which works
326
+ * without running the event loop: already-settled promises yield their
327
+ * exact value (or ExceptionError if rejected); a pending promise fails
328
+ * fast with EvaluateExpressionPendingPromiseError instead of burning the
329
+ * timeout, because it can never settle while the event loop is stopped.
330
+ */
331
+ evaluateExpressionDetailed(expression: string, callFrameId?: string, expandObjects?: boolean, maxDepth?: number, options?: EvaluateExpressionOptions): Promise<EvaluateExpressionDetailedResult>;
332
+ /** Map CDP exceptionDetails to a typed error (thrown code or awaited promise rejection). */
333
+ private toEvaluateExpressionExceptionError;
334
+ /**
335
+ * Resolve a Promise RemoteObject without running the event loop, via its
336
+ * [[PromiseState]]/[[PromiseResult]] internal properties (readable even
337
+ * while the debugger is paused). Returns the settled value's RemoteObject;
338
+ * throws for rejected/pending promises.
339
+ */
340
+ private resolveSettledPromiseWhilePaused;
341
+ /**
342
+ * Attempt an exact by-value capture of an evaluation result, WITHOUT
343
+ * re-executing the expression: primitives come straight off the
344
+ * RemoteObject; plain objects/arrays are serialized in place via
345
+ * Runtime.callFunctionOn(returnByValue). Values whose by-value form is
346
+ * lossy or impossible (DOM nodes, Date, Map/Set, functions, window - CDP
347
+ * serializes these to {} or errors) report rawCaptured: false so callers
348
+ * can fall back to the display-derived reconstruction.
349
+ */
350
+ private captureRawValue;
351
+ /**
352
+ * Get available variables at a specific source location
353
+ * Useful for validating logpoint expressions
354
+ */
355
+ getScopeVariablesAtLocation(url: string, lineNumber: number): Promise<{
356
+ variables: string[];
357
+ scopes: Array<{
358
+ type: string;
359
+ variables: string[];
360
+ }>;
361
+ } | null>;
362
+ /**
363
+ * Validate logpoint expressions at a specific location
364
+ * Sets temp breakpoint, waits for execution, tests expressions
365
+ *
366
+ * @param url File URL (e.g., http://localhost:3000/app.js)
367
+ * @param lineNumber Line number (1-based, will be converted to 0-based for CDP)
368
+ * @param columnNumber Optional column number (1-based, will be converted to 0-based for CDP)
369
+ * @param expressions Array of expressions to validate (e.g., ["user.name", "user.id"])
370
+ * @param timeout Max wait time for execution in milliseconds
371
+ * @returns Validation results with pass/fail for each expression, plus available variables
372
+ */
373
+ validateLogpointAtActualLocation(url: string, lineNumber: number, columnNumber: number | undefined, expressions: string[], timeout?: number): Promise<{
374
+ executed: boolean;
375
+ allValid: boolean;
376
+ results: Array<{
377
+ expression: string;
378
+ valid: boolean;
379
+ value?: any;
380
+ error?: string;
381
+ }>;
382
+ availableVariables?: string[];
383
+ actualLocation?: {
384
+ line: number;
385
+ column: number;
386
+ };
387
+ }>;
388
+ /**
389
+ * Search for the best location to set a logpoint by trying nearby lines/columns
390
+ * Returns suggestions ranked by how many expressions are valid
391
+ *
392
+ * @param url File URL
393
+ * @param lineNumber Desired line number (1-based)
394
+ * @param columnNumber Desired column number (1-based, optional)
395
+ * @param expressions Array of expressions to validate
396
+ * @param searchRadius Number of lines to search in each direction (default: 2)
397
+ * @param timeout Timeout per location test in milliseconds (default: 1000ms)
398
+ * @returns Array of suggestions sorted by score (best first), max 3 results
399
+ */
400
+ findBestLogpointLocation(url: string, lineNumber: number, columnNumber: number | undefined, expressions: string[], searchRadius?: number, timeout?: number): Promise<Array<{
401
+ line: number;
402
+ column: number | undefined;
403
+ score: number;
404
+ validExpressions: string[];
405
+ invalidExpressions: string[];
406
+ availableVariables: string[];
407
+ reason: string;
408
+ }>>;
409
+ /**
410
+ * Get source code from a file at a specific line range
411
+ */
412
+ getSourceCode(url: string, startLine?: number, endLine?: number): Promise<{
413
+ code: string;
414
+ totalLines: number;
415
+ hasSourceMap: boolean;
416
+ }>;
417
+ /**
418
+ * Inject a clickable console link in the browser
419
+ */
420
+ injectConsoleLink(url: string, lineNumber: number, message: string): Promise<void>;
421
+ /**
422
+ * Get detailed information about current pause state
423
+ */
424
+ getPausedInfo(): {
425
+ paused: boolean;
426
+ location?: any;
427
+ callStack?: CallFrame[];
428
+ };
429
+ /**
430
+ * Wait for debugger to pause (for race detection)
431
+ * Returns a promise that resolves when debugger pauses, or rejects on timeout
432
+ */
433
+ waitForPause(timeoutMs?: number): Promise<void>;
434
+ /**
435
+ * Format a CDP RemoteObject value for display
436
+ * @param value The CDP RemoteObject to format
437
+ * @param expandObjects Whether to expand object/array contents (default: false for backward compatibility)
438
+ * @param maxDepth Maximum depth for object expansion (default: 2)
439
+ * @param currentDepth Current recursion depth (internal use)
440
+ */
441
+ private formatValue;
442
+ /**
443
+ * Expand a CDP RemoteObject by its objectId
444
+ * This is used to get full object details for console messages
445
+ * @param objectId - The CDP object ID to expand
446
+ * @param maxDepth - Maximum depth for nested object expansion (default: 2)
447
+ */
448
+ expandObjectById(objectId: string, maxDepth?: number): Promise<any>;
449
+ /**
450
+ * Get all loaded scripts
451
+ */
452
+ getAllScripts(): Array<{
453
+ scriptId: string;
454
+ url: string;
455
+ }>;
456
+ /**
457
+ * Search within a specific script using regex
458
+ */
459
+ searchInScript(scriptId: string, pattern: string, caseSensitive?: boolean, isRegex?: boolean): Promise<Array<{
460
+ lineNumber: number;
461
+ lineContent: string;
462
+ }>>;
463
+ /**
464
+ * Get a specific line from a script by scriptId and line number
465
+ * Returns the full line content (useful for getting full webpack eval lines)
466
+ */
467
+ getScriptLine(scriptId: string, lineNumber: number): Promise<string | null>;
468
+ /**
469
+ * Generate a unique ID for advanced breakpoints
470
+ */
471
+ private generateAdvancedBpId;
472
+ /**
473
+ * Resolve a CSS selector to a CDP nodeId
474
+ * @param selector - CSS selector to resolve
475
+ * @returns nodeId for the element
476
+ */
477
+ resolveSelector(selector: string): Promise<number>;
478
+ /**
479
+ * Set a DOM breakpoint on a node
480
+ * Pauses execution when the specified DOM mutation occurs
481
+ * @param nodeId - The node ID from resolveSelector
482
+ * @param type - Type of DOM change to break on
483
+ * @param selector - Original CSS selector (for reference/display)
484
+ */
485
+ setDOMBreakpoint(nodeId: number, type: DOMBreakpointType, selector: string): Promise<DOMBreakpointInfo>;
486
+ /**
487
+ * Remove a DOM breakpoint by its ID
488
+ */
489
+ removeDOMBreakpoint(breakpointId: string): Promise<void>;
490
+ /**
491
+ * Get all DOM breakpoints
492
+ */
493
+ getDOMBreakpoints(): DOMBreakpointInfo[];
494
+ /**
495
+ * Set an event listener breakpoint
496
+ * Pauses execution when the specified event fires
497
+ * @param eventName - DOM event name (e.g., 'click', 'submit', 'input')
498
+ * @param targetName - Optional EventTarget interface filter (e.g., 'HTMLInputElement')
499
+ */
500
+ setEventListenerBreakpoint(eventName: string, targetName?: string): Promise<EventListenerBreakpointInfo>;
501
+ /**
502
+ * Remove an event listener breakpoint by its ID
503
+ */
504
+ removeEventListenerBreakpoint(breakpointId: string): Promise<void>;
505
+ /**
506
+ * Get all event listener breakpoints
507
+ */
508
+ getEventListenerBreakpoints(): EventListenerBreakpointInfo[];
509
+ /**
510
+ * Set an XHR/Fetch breakpoint
511
+ * Pauses execution when an XHR or Fetch request URL contains the pattern
512
+ * @param urlPattern - URL substring to match
513
+ */
514
+ setXHRBreakpoint(urlPattern: string): Promise<XHRBreakpointInfo>;
515
+ /**
516
+ * Remove an XHR/Fetch breakpoint by its ID
517
+ */
518
+ removeXHRBreakpoint(breakpointId: string): Promise<void>;
519
+ /**
520
+ * Get all XHR/Fetch breakpoints
521
+ */
522
+ getXHRBreakpoints(): XHRBreakpointInfo[];
523
+ }
524
+ //# sourceMappingURL=cdp-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cdp-manager.d.ts","sourceRoot":"","sources":["../src/cdp-manager.ts"],"names":[],"mappings":"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"}