browser-debugger-cli 0.6.0 → 0.6.2

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 (699) hide show
  1. package/README.md +65 -6
  2. package/dist/__tests__/smoke/error-handling.smoke.test.js +23 -52
  3. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -1
  4. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +27 -24
  5. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -1
  6. package/dist/__testutils__/daemonHelpers.d.ts +13 -1
  7. package/dist/__testutils__/daemonHelpers.d.ts.map +1 -1
  8. package/dist/__testutils__/daemonHelpers.js +54 -5
  9. package/dist/__testutils__/daemonHelpers.js.map +1 -1
  10. package/dist/__testutils__/testCleanup.js +1 -1
  11. package/dist/__testutils__/testCleanup.js.map +1 -1
  12. package/dist/cdp/protocol.d.ts +0 -48
  13. package/dist/cdp/protocol.d.ts.map +1 -1
  14. package/dist/cdp/protocol.js +9 -101
  15. package/dist/cdp/protocol.js.map +1 -1
  16. package/dist/commands/__tests__/cdp.contract.test.js +2 -2
  17. package/dist/commands/__tests__/cdp.contract.test.js.map +1 -1
  18. package/dist/commands/__tests__/domEval.contract.test.js +8 -4
  19. package/dist/commands/__tests__/domEval.contract.test.js.map +1 -1
  20. package/dist/commands/cdp.d.ts.map +1 -1
  21. package/dist/commands/cdp.js +4 -37
  22. package/dist/commands/cdp.js.map +1 -1
  23. package/dist/commands/cleanup.d.ts.map +1 -1
  24. package/dist/commands/cleanup.js +25 -23
  25. package/dist/commands/cleanup.js.map +1 -1
  26. package/dist/commands/console.d.ts.map +1 -1
  27. package/dist/commands/console.js +3 -8
  28. package/dist/commands/console.js.map +1 -1
  29. package/dist/commands/details.d.ts.map +1 -1
  30. package/dist/commands/details.js +1 -1
  31. package/dist/commands/details.js.map +1 -1
  32. package/dist/commands/dom/a11y.d.ts +18 -0
  33. package/dist/commands/dom/a11y.d.ts.map +1 -0
  34. package/dist/commands/dom/a11y.js +134 -0
  35. package/dist/commands/dom/a11y.js.map +1 -0
  36. package/dist/commands/{domEvalHelpers.d.ts → dom/evalHelpers.d.ts} +8 -5
  37. package/dist/commands/dom/evalHelpers.d.ts.map +1 -0
  38. package/dist/commands/{domEvalHelpers.js → dom/evalHelpers.js} +14 -13
  39. package/dist/commands/dom/evalHelpers.js.map +1 -0
  40. package/dist/commands/dom/formFillHelpers.d.ts +47 -0
  41. package/dist/commands/dom/formFillHelpers.d.ts.map +1 -0
  42. package/dist/commands/dom/formFillHelpers.js +185 -0
  43. package/dist/commands/dom/formFillHelpers.js.map +1 -0
  44. package/dist/commands/dom/formInteraction.d.ts +17 -0
  45. package/dist/commands/dom/formInteraction.d.ts.map +1 -0
  46. package/dist/commands/dom/formInteraction.js +239 -0
  47. package/dist/commands/dom/formInteraction.js.map +1 -0
  48. package/dist/commands/dom/formSubmitHelpers.d.ts +58 -0
  49. package/dist/commands/dom/formSubmitHelpers.d.ts.map +1 -0
  50. package/dist/commands/dom/formSubmitHelpers.js +176 -0
  51. package/dist/commands/dom/formSubmitHelpers.js.map +1 -0
  52. package/dist/commands/dom/helpers.d.ts +34 -0
  53. package/dist/commands/dom/helpers.d.ts.map +1 -0
  54. package/dist/commands/dom/helpers.js +244 -0
  55. package/dist/commands/dom/helpers.js.map +1 -0
  56. package/dist/commands/{dom.d.ts → dom/index.d.ts} +1 -1
  57. package/dist/commands/dom/index.d.ts.map +1 -0
  58. package/dist/commands/dom/index.js +175 -0
  59. package/dist/commands/dom/index.js.map +1 -0
  60. package/dist/commands/dom/reactEventHelpers.d.ts +80 -0
  61. package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -0
  62. package/dist/commands/dom/reactEventHelpers.js +274 -0
  63. package/dist/commands/dom/reactEventHelpers.js.map +1 -0
  64. package/dist/commands/network.js +1 -1
  65. package/dist/commands/network.js.map +1 -1
  66. package/dist/commands/peek.d.ts.map +1 -1
  67. package/dist/commands/peek.js +49 -52
  68. package/dist/commands/peek.js.map +1 -1
  69. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  70. package/dist/commands/shared/CommandRunner.js +3 -2
  71. package/dist/commands/shared/CommandRunner.js.map +1 -1
  72. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  73. package/dist/commands/shared/commonOptions.js +3 -1
  74. package/dist/commands/shared/commonOptions.js.map +1 -1
  75. package/dist/commands/shared/daemonErrorHandler.d.ts +30 -0
  76. package/dist/commands/shared/daemonErrorHandler.d.ts.map +1 -0
  77. package/dist/commands/shared/daemonErrorHandler.js +32 -0
  78. package/dist/commands/shared/daemonErrorHandler.js.map +1 -0
  79. package/dist/commands/shared/{daemonSessionController.d.ts → startHelpers.d.ts} +7 -1
  80. package/dist/commands/shared/startHelpers.d.ts.map +1 -0
  81. package/dist/commands/shared/{daemonSessionController.js → startHelpers.js} +13 -5
  82. package/dist/commands/shared/startHelpers.js.map +1 -0
  83. package/dist/commands/shared/validation.d.ts +44 -0
  84. package/dist/commands/shared/validation.d.ts.map +1 -0
  85. package/dist/commands/shared/validation.js +68 -0
  86. package/dist/commands/shared/validation.js.map +1 -0
  87. package/dist/commands/start.d.ts.map +1 -1
  88. package/dist/commands/start.js +9 -25
  89. package/dist/commands/start.js.map +1 -1
  90. package/dist/commands/status.d.ts.map +1 -1
  91. package/dist/commands/status.js +6 -4
  92. package/dist/commands/status.js.map +1 -1
  93. package/dist/commands/stop.d.ts.map +1 -1
  94. package/dist/commands/stop.js +16 -19
  95. package/dist/commands/stop.js.map +1 -1
  96. package/dist/commands/tail.d.ts.map +1 -1
  97. package/dist/commands/tail.js +49 -44
  98. package/dist/commands/tail.js.map +1 -1
  99. package/dist/commands/types.d.ts +46 -0
  100. package/dist/commands/types.d.ts.map +1 -0
  101. package/dist/commands/types.js +8 -0
  102. package/dist/commands/types.js.map +1 -0
  103. package/dist/commands.d.ts.map +1 -1
  104. package/dist/commands.js +3 -1
  105. package/dist/commands.js.map +1 -1
  106. package/dist/connection/__tests__/cdp.contract.test.js +7 -7
  107. package/dist/connection/__tests__/cdp.contract.test.js.map +1 -1
  108. package/dist/connection/__tests__/handlers.unit.test.d.ts +11 -0
  109. package/dist/connection/__tests__/handlers.unit.test.d.ts.map +1 -0
  110. package/dist/connection/__tests__/handlers.unit.test.js +220 -0
  111. package/dist/connection/__tests__/handlers.unit.test.js.map +1 -0
  112. package/dist/connection/__tests__/pageReadiness.contract.test.d.ts +14 -0
  113. package/dist/connection/__tests__/pageReadiness.contract.test.d.ts.map +1 -0
  114. package/dist/connection/__tests__/pageReadiness.contract.test.js +382 -0
  115. package/dist/connection/__tests__/pageReadiness.contract.test.js.map +1 -0
  116. package/dist/connection/__tests__/portReservation.contract.test.d.ts +14 -0
  117. package/dist/connection/__tests__/portReservation.contract.test.d.ts.map +1 -0
  118. package/dist/connection/__tests__/portReservation.contract.test.js +250 -0
  119. package/dist/connection/__tests__/portReservation.contract.test.js.map +1 -0
  120. package/dist/connection/cdp.d.ts +34 -11
  121. package/dist/connection/cdp.d.ts.map +1 -1
  122. package/dist/connection/cdp.js +61 -45
  123. package/dist/connection/cdp.js.map +1 -1
  124. package/dist/connection/config.d.ts +63 -0
  125. package/dist/connection/config.d.ts.map +1 -0
  126. package/dist/connection/config.js +46 -0
  127. package/dist/connection/config.js.map +1 -0
  128. package/dist/connection/errors.d.ts +6 -21
  129. package/dist/connection/errors.d.ts.map +1 -1
  130. package/dist/connection/errors.js +7 -26
  131. package/dist/connection/errors.js.map +1 -1
  132. package/dist/connection/events.d.ts +30 -0
  133. package/dist/connection/events.d.ts.map +1 -0
  134. package/dist/connection/events.js +8 -0
  135. package/dist/connection/events.js.map +1 -0
  136. package/dist/connection/handlers.d.ts +3 -5
  137. package/dist/connection/handlers.d.ts.map +1 -1
  138. package/dist/connection/handlers.js +10 -12
  139. package/dist/connection/handlers.js.map +1 -1
  140. package/dist/connection/launcher/binaryResolver.d.ts +40 -0
  141. package/dist/connection/launcher/binaryResolver.d.ts.map +1 -0
  142. package/dist/connection/launcher/binaryResolver.js +78 -0
  143. package/dist/connection/launcher/binaryResolver.js.map +1 -0
  144. package/dist/connection/launcher/flagsBuilder.d.ts +64 -0
  145. package/dist/connection/launcher/flagsBuilder.d.ts.map +1 -0
  146. package/dist/connection/launcher/flagsBuilder.js +84 -0
  147. package/dist/connection/launcher/flagsBuilder.js.map +1 -0
  148. package/dist/connection/launcher/preferencesLoader.d.ts +74 -0
  149. package/dist/connection/launcher/preferencesLoader.d.ts.map +1 -0
  150. package/dist/connection/launcher/preferencesLoader.js +89 -0
  151. package/dist/connection/launcher/preferencesLoader.js.map +1 -0
  152. package/dist/connection/launcher.d.ts +24 -1
  153. package/dist/connection/launcher.d.ts.map +1 -1
  154. package/dist/connection/launcher.js +30 -205
  155. package/dist/connection/launcher.js.map +1 -1
  156. package/dist/connection/pageReadiness.d.ts +8 -8
  157. package/dist/connection/pageReadiness.d.ts.map +1 -1
  158. package/dist/connection/pageReadiness.js +36 -52
  159. package/dist/connection/pageReadiness.js.map +1 -1
  160. package/dist/connection/portReservation.d.ts +40 -0
  161. package/dist/connection/portReservation.d.ts.map +1 -0
  162. package/dist/connection/portReservation.js +55 -0
  163. package/dist/connection/portReservation.js.map +1 -0
  164. package/dist/connection/typed-cdp.d.ts +2 -1
  165. package/dist/connection/typed-cdp.d.ts.map +1 -1
  166. package/dist/connection/typed-cdp.js.map +1 -1
  167. package/dist/connection/types.d.ts +103 -0
  168. package/dist/connection/types.d.ts.map +1 -0
  169. package/dist/connection/types.js +8 -0
  170. package/dist/connection/types.js.map +1 -0
  171. package/dist/constants.d.ts +6 -83
  172. package/dist/constants.d.ts.map +1 -1
  173. package/dist/constants.js +6 -83
  174. package/dist/constants.js.map +1 -1
  175. package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts +8 -0
  176. package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts.map +1 -0
  177. package/dist/daemon/__tests__/JsonlParser.unit.test.js +140 -0
  178. package/dist/daemon/__tests__/JsonlParser.unit.test.js.map +1 -0
  179. package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts +8 -0
  180. package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts.map +1 -0
  181. package/dist/daemon/__tests__/PendingRequestManager.unit.test.js +276 -0
  182. package/dist/daemon/__tests__/PendingRequestManager.unit.test.js.map +1 -0
  183. package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts +8 -0
  184. package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts.map +1 -0
  185. package/dist/daemon/__tests__/TelemetryStore.unit.test.js +290 -0
  186. package/dist/daemon/__tests__/TelemetryStore.unit.test.js.map +1 -0
  187. package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts +8 -0
  188. package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts.map +1 -0
  189. package/dist/daemon/__tests__/commandRegistry.contract.test.js +384 -0
  190. package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +1 -0
  191. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +19 -0
  192. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +1 -0
  193. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +212 -0
  194. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +1 -0
  195. package/dist/daemon/__tests__/ipcServer.contract.test.js +2 -1
  196. package/dist/daemon/__tests__/ipcServer.contract.test.js.map +1 -1
  197. package/dist/daemon/errors.d.ts +65 -0
  198. package/dist/daemon/errors.d.ts.map +1 -0
  199. package/dist/daemon/errors.js +82 -0
  200. package/dist/daemon/errors.js.map +1 -0
  201. package/dist/daemon/handlers/CommandHandlers.d.ts +32 -0
  202. package/dist/daemon/handlers/CommandHandlers.d.ts.map +1 -0
  203. package/dist/daemon/handlers/CommandHandlers.js +93 -0
  204. package/dist/daemon/handlers/CommandHandlers.js.map +1 -0
  205. package/dist/daemon/handlers/QueryHandlers.d.ts +35 -0
  206. package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -0
  207. package/dist/daemon/handlers/QueryHandlers.js +176 -0
  208. package/dist/daemon/handlers/QueryHandlers.js.map +1 -0
  209. package/dist/daemon/handlers/SessionHandlers.d.ts +32 -0
  210. package/dist/daemon/handlers/SessionHandlers.d.ts.map +1 -0
  211. package/dist/daemon/handlers/SessionHandlers.js +227 -0
  212. package/dist/daemon/handlers/SessionHandlers.js.map +1 -0
  213. package/dist/daemon/handlers/pendingRequests.d.ts +50 -0
  214. package/dist/daemon/handlers/pendingRequests.d.ts.map +1 -0
  215. package/dist/daemon/handlers/pendingRequests.js +57 -0
  216. package/dist/daemon/handlers/pendingRequests.js.map +1 -0
  217. package/dist/daemon/handlers/requestHandlers.d.ts +51 -0
  218. package/dist/daemon/handlers/requestHandlers.d.ts.map +1 -0
  219. package/dist/daemon/handlers/requestHandlers.js +61 -0
  220. package/dist/daemon/handlers/requestHandlers.js.map +1 -0
  221. package/dist/daemon/handlers/responseHandler.d.ts +42 -0
  222. package/dist/daemon/handlers/responseHandler.d.ts.map +1 -0
  223. package/dist/daemon/handlers/responseHandler.js +195 -0
  224. package/dist/daemon/handlers/responseHandler.js.map +1 -0
  225. package/dist/daemon/ipcServer.d.ts +19 -41
  226. package/dist/daemon/ipcServer.d.ts.map +1 -1
  227. package/dist/daemon/ipcServer.js +83 -655
  228. package/dist/daemon/ipcServer.js.map +1 -1
  229. package/dist/daemon/launcher.d.ts.map +1 -1
  230. package/dist/daemon/launcher.js +10 -6
  231. package/dist/daemon/launcher.js.map +1 -1
  232. package/dist/daemon/lifecycle/cdpSetup.d.ts +24 -0
  233. package/dist/daemon/lifecycle/cdpSetup.d.ts.map +1 -0
  234. package/dist/daemon/lifecycle/cdpSetup.js +59 -0
  235. package/dist/daemon/lifecycle/cdpSetup.js.map +1 -0
  236. package/dist/daemon/lifecycle/chromeConnection.d.ts +17 -0
  237. package/dist/daemon/lifecycle/chromeConnection.d.ts.map +1 -0
  238. package/dist/daemon/lifecycle/chromeConnection.js +80 -0
  239. package/dist/daemon/lifecycle/chromeConnection.js.map +1 -0
  240. package/dist/daemon/lifecycle/signalHandlers.d.ts +14 -0
  241. package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -0
  242. package/dist/daemon/lifecycle/signalHandlers.js +35 -0
  243. package/dist/daemon/lifecycle/signalHandlers.js.map +1 -0
  244. package/dist/daemon/lifecycle/workerCleanup.d.ts +27 -0
  245. package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -0
  246. package/dist/daemon/lifecycle/workerCleanup.js +144 -0
  247. package/dist/daemon/lifecycle/workerCleanup.js.map +1 -0
  248. package/dist/daemon/lifecycle/workerConfig.d.ts +14 -0
  249. package/dist/daemon/lifecycle/workerConfig.d.ts.map +1 -0
  250. package/dist/daemon/lifecycle/workerConfig.js +66 -0
  251. package/dist/daemon/lifecycle/workerConfig.js.map +1 -0
  252. package/dist/daemon/lifecycle/workerIpc.d.ts +14 -0
  253. package/dist/daemon/lifecycle/workerIpc.d.ts.map +1 -0
  254. package/dist/daemon/lifecycle/workerIpc.js +87 -0
  255. package/dist/daemon/lifecycle/workerIpc.js.map +1 -0
  256. package/dist/daemon/server/JsonlParser.d.ts +31 -0
  257. package/dist/daemon/server/JsonlParser.d.ts.map +1 -0
  258. package/dist/daemon/server/JsonlParser.js +57 -0
  259. package/dist/daemon/server/JsonlParser.js.map +1 -0
  260. package/dist/daemon/server/SocketServer.d.ts.map +1 -1
  261. package/dist/daemon/server/SocketServer.js +2 -2
  262. package/dist/daemon/server/SocketServer.js.map +1 -1
  263. package/dist/daemon/server/WorkerManager.d.ts +3 -3
  264. package/dist/daemon/server/WorkerManager.d.ts.map +1 -1
  265. package/dist/daemon/server/WorkerManager.js +10 -19
  266. package/dist/daemon/server/WorkerManager.js.map +1 -1
  267. package/dist/daemon/services/SessionService.d.ts +87 -0
  268. package/dist/daemon/services/SessionService.d.ts.map +1 -0
  269. package/dist/daemon/services/SessionService.js +45 -0
  270. package/dist/daemon/services/SessionService.js.map +1 -0
  271. package/dist/daemon/startSession.d.ts.map +1 -1
  272. package/dist/daemon/startSession.js +54 -31
  273. package/dist/daemon/startSession.js.map +1 -1
  274. package/dist/daemon/worker/commandRegistry.d.ts +1 -1
  275. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
  276. package/dist/daemon/worker/commandRegistry.js +20 -215
  277. package/dist/daemon/worker/commandRegistry.js.map +1 -1
  278. package/dist/daemon/worker.d.ts +3 -12
  279. package/dist/daemon/worker.d.ts.map +1 -1
  280. package/dist/daemon/worker.js +47 -367
  281. package/dist/daemon/worker.js.map +1 -1
  282. package/dist/index.js +1 -1
  283. package/dist/index.js.map +1 -1
  284. package/dist/ipc/__tests__/client.contract.test.d.ts +0 -15
  285. package/dist/ipc/__tests__/client.contract.test.d.ts.map +1 -1
  286. package/dist/ipc/__tests__/client.contract.test.js +259 -42
  287. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  288. package/dist/ipc/__tests__/errors.unit.test.d.ts +7 -0
  289. package/dist/ipc/__tests__/errors.unit.test.d.ts.map +1 -0
  290. package/dist/ipc/__tests__/errors.unit.test.js +77 -0
  291. package/dist/ipc/__tests__/errors.unit.test.js.map +1 -0
  292. package/dist/ipc/__tests__/guards.unit.test.d.ts +7 -0
  293. package/dist/ipc/__tests__/guards.unit.test.d.ts.map +1 -0
  294. package/dist/ipc/__tests__/guards.unit.test.js +73 -0
  295. package/dist/ipc/__tests__/guards.unit.test.js.map +1 -0
  296. package/dist/ipc/__tests__/jsonl.unit.test.d.ts +7 -0
  297. package/dist/ipc/__tests__/jsonl.unit.test.d.ts.map +1 -0
  298. package/dist/ipc/__tests__/jsonl.unit.test.js +103 -0
  299. package/dist/ipc/__tests__/jsonl.unit.test.js.map +1 -0
  300. package/dist/ipc/__tests__/validation.unit.test.d.ts +7 -0
  301. package/dist/ipc/__tests__/validation.unit.test.d.ts.map +1 -0
  302. package/dist/ipc/__tests__/validation.unit.test.js +60 -0
  303. package/dist/ipc/__tests__/validation.unit.test.js.map +1 -0
  304. package/dist/ipc/client.d.ts +93 -84
  305. package/dist/ipc/client.d.ts.map +1 -1
  306. package/dist/ipc/client.js +121 -192
  307. package/dist/ipc/client.js.map +1 -1
  308. package/dist/ipc/index.d.ts +17 -0
  309. package/dist/ipc/index.d.ts.map +1 -0
  310. package/dist/ipc/index.js +23 -0
  311. package/dist/ipc/index.js.map +1 -0
  312. package/dist/ipc/protocol/commands.d.ts +144 -0
  313. package/dist/ipc/protocol/commands.d.ts.map +1 -0
  314. package/dist/ipc/protocol/commands.js +23 -0
  315. package/dist/ipc/protocol/commands.js.map +1 -0
  316. package/dist/ipc/protocol/guards.d.ts +47 -0
  317. package/dist/ipc/protocol/guards.d.ts.map +1 -0
  318. package/dist/ipc/protocol/guards.js +62 -0
  319. package/dist/ipc/protocol/guards.js.map +1 -0
  320. package/dist/ipc/protocol/index.d.ts +9 -0
  321. package/dist/ipc/protocol/index.d.ts.map +1 -0
  322. package/dist/ipc/protocol/index.js +8 -0
  323. package/dist/ipc/protocol/index.js.map +1 -0
  324. package/dist/ipc/protocol/messages.d.ts +64 -0
  325. package/dist/ipc/protocol/messages.d.ts.map +1 -0
  326. package/dist/ipc/protocol/messages.js +8 -0
  327. package/dist/ipc/protocol/messages.js.map +1 -0
  328. package/dist/ipc/session/errors.d.ts +25 -0
  329. package/dist/ipc/session/errors.d.ts.map +1 -0
  330. package/dist/ipc/{types.js → session/errors.js} +11 -6
  331. package/dist/ipc/session/errors.js.map +1 -0
  332. package/dist/ipc/session/index.d.ts +16 -0
  333. package/dist/ipc/session/index.d.ts.map +1 -0
  334. package/dist/ipc/session/index.js +7 -0
  335. package/dist/ipc/session/index.js.map +1 -0
  336. package/dist/ipc/session/lifecycle.d.ts +125 -0
  337. package/dist/ipc/session/lifecycle.d.ts.map +1 -0
  338. package/dist/ipc/session/lifecycle.js +7 -0
  339. package/dist/ipc/session/lifecycle.js.map +1 -0
  340. package/dist/ipc/session/queries.d.ts +94 -0
  341. package/dist/ipc/session/queries.d.ts.map +1 -0
  342. package/dist/ipc/session/queries.js +7 -0
  343. package/dist/ipc/session/queries.js.map +1 -0
  344. package/dist/ipc/session/types.d.ts +28 -0
  345. package/dist/ipc/session/types.d.ts.map +1 -0
  346. package/dist/ipc/session/types.js +7 -0
  347. package/dist/ipc/session/types.js.map +1 -0
  348. package/dist/ipc/transport/IPCError.d.ts +82 -0
  349. package/dist/ipc/transport/IPCError.d.ts.map +1 -0
  350. package/dist/ipc/transport/IPCError.js +109 -0
  351. package/dist/ipc/transport/IPCError.js.map +1 -0
  352. package/dist/ipc/transport/errors.d.ts +11 -0
  353. package/dist/ipc/transport/errors.d.ts.map +1 -0
  354. package/dist/ipc/transport/errors.js +28 -0
  355. package/dist/ipc/transport/errors.js.map +1 -0
  356. package/dist/ipc/transport/index.d.ts +16 -0
  357. package/dist/ipc/transport/index.d.ts.map +1 -0
  358. package/dist/ipc/transport/index.js +77 -0
  359. package/dist/ipc/transport/index.js.map +1 -0
  360. package/dist/ipc/transport/jsonl.d.ts +39 -0
  361. package/dist/ipc/transport/jsonl.d.ts.map +1 -0
  362. package/dist/ipc/transport/jsonl.js +61 -0
  363. package/dist/ipc/transport/jsonl.js.map +1 -0
  364. package/dist/ipc/transport/socket.d.ts +27 -0
  365. package/dist/ipc/transport/socket.d.ts.map +1 -0
  366. package/dist/ipc/transport/socket.js +49 -0
  367. package/dist/ipc/transport/socket.js.map +1 -0
  368. package/dist/ipc/transport/validation.d.ts +21 -0
  369. package/dist/ipc/transport/validation.d.ts.map +1 -0
  370. package/dist/ipc/transport/validation.js +23 -0
  371. package/dist/ipc/transport/validation.js.map +1 -0
  372. package/dist/ipc/utils/errors.d.ts +25 -0
  373. package/dist/ipc/utils/errors.d.ts.map +1 -0
  374. package/dist/ipc/utils/errors.js +29 -0
  375. package/dist/ipc/utils/errors.js.map +1 -0
  376. package/dist/ipc/utils/index.d.ts +12 -0
  377. package/dist/ipc/utils/index.d.ts.map +1 -0
  378. package/dist/ipc/utils/index.js +11 -0
  379. package/dist/ipc/utils/index.js.map +1 -0
  380. package/dist/ipc/utils/requestId.d.ts +23 -0
  381. package/dist/ipc/utils/requestId.d.ts.map +1 -0
  382. package/dist/ipc/utils/requestId.js +27 -0
  383. package/dist/ipc/utils/requestId.js.map +1 -0
  384. package/dist/ipc/utils/responseValidator.d.ts.map +1 -0
  385. package/dist/ipc/{responseValidator.js → utils/responseValidator.js} +2 -1
  386. package/dist/ipc/utils/responseValidator.js.map +1 -0
  387. package/dist/ipc/utils/session.d.ts +36 -0
  388. package/dist/ipc/utils/session.d.ts.map +1 -0
  389. package/dist/ipc/utils/session.js +37 -0
  390. package/dist/ipc/utils/session.js.map +1 -0
  391. package/dist/ipc/utils/types.d.ts +17 -0
  392. package/dist/ipc/utils/types.d.ts.map +1 -0
  393. package/dist/ipc/utils/types.js +7 -0
  394. package/dist/ipc/utils/types.js.map +1 -0
  395. package/dist/session/__tests__/chrome-cache.contract.test.d.ts +7 -0
  396. package/dist/session/__tests__/chrome-cache.contract.test.d.ts.map +1 -0
  397. package/dist/session/__tests__/chrome-cache.contract.test.js +77 -0
  398. package/dist/session/__tests__/chrome-cache.contract.test.js.map +1 -0
  399. package/dist/session/__tests__/cleanup.contract.test.d.ts +7 -0
  400. package/dist/session/__tests__/cleanup.contract.test.d.ts.map +1 -0
  401. package/dist/session/__tests__/cleanup.contract.test.js +84 -0
  402. package/dist/session/__tests__/cleanup.contract.test.js.map +1 -0
  403. package/dist/session/__tests__/lock.contract.test.d.ts +7 -0
  404. package/dist/session/__tests__/lock.contract.test.d.ts.map +1 -0
  405. package/dist/session/__tests__/lock.contract.test.js +77 -0
  406. package/dist/session/__tests__/lock.contract.test.js.map +1 -0
  407. package/dist/session/__tests__/metadata.contract.test.d.ts +7 -0
  408. package/dist/session/__tests__/metadata.contract.test.d.ts.map +1 -0
  409. package/dist/session/__tests__/metadata.contract.test.js +87 -0
  410. package/dist/session/__tests__/metadata.contract.test.js.map +1 -0
  411. package/dist/session/chrome.d.ts +20 -0
  412. package/dist/session/chrome.d.ts.map +1 -1
  413. package/dist/session/chrome.js +81 -17
  414. package/dist/session/chrome.js.map +1 -1
  415. package/dist/session/cleanup.d.ts +36 -2
  416. package/dist/session/cleanup.d.ts.map +1 -1
  417. package/dist/session/cleanup.js +201 -73
  418. package/dist/session/cleanup.js.map +1 -1
  419. package/dist/session/lock.d.ts.map +1 -1
  420. package/dist/session/lock.js +102 -91
  421. package/dist/session/lock.js.map +1 -1
  422. package/dist/session/metadata.d.ts +10 -3
  423. package/dist/session/metadata.d.ts.map +1 -1
  424. package/dist/session/metadata.js +24 -6
  425. package/dist/session/metadata.js.map +1 -1
  426. package/dist/session/paths.d.ts +0 -9
  427. package/dist/session/paths.d.ts.map +1 -1
  428. package/dist/session/paths.js +0 -11
  429. package/dist/session/paths.js.map +1 -1
  430. package/dist/session/pid.d.ts +15 -0
  431. package/dist/session/pid.d.ts.map +1 -1
  432. package/dist/session/pid.js +39 -21
  433. package/dist/session/pid.js.map +1 -1
  434. package/dist/session/process.d.ts +4 -41
  435. package/dist/session/process.d.ts.map +1 -1
  436. package/dist/session/process.js +4 -85
  437. package/dist/session/process.js.map +1 -1
  438. package/dist/session/statusData.d.ts +50 -0
  439. package/dist/session/statusData.d.ts.map +1 -0
  440. package/dist/session/statusData.js +51 -0
  441. package/dist/session/statusData.js.map +1 -0
  442. package/dist/telemetry/__tests__/a11y.unit.test.d.ts +10 -0
  443. package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +1 -0
  444. package/dist/telemetry/__tests__/a11y.unit.test.js +265 -0
  445. package/dist/telemetry/__tests__/a11y.unit.test.js.map +1 -0
  446. package/dist/telemetry/__tests__/navigation.contract.test.d.ts +8 -0
  447. package/dist/telemetry/__tests__/navigation.contract.test.d.ts.map +1 -0
  448. package/dist/telemetry/__tests__/navigation.contract.test.js +211 -0
  449. package/dist/telemetry/__tests__/navigation.contract.test.js.map +1 -0
  450. package/dist/telemetry/__tests__/network.contract.test.d.ts +0 -20
  451. package/dist/telemetry/__tests__/network.contract.test.d.ts.map +1 -1
  452. package/dist/telemetry/__tests__/network.contract.test.js +2 -64
  453. package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
  454. package/dist/telemetry/__tests__/utils.unit.test.d.ts +7 -0
  455. package/dist/telemetry/__tests__/utils.unit.test.d.ts.map +1 -0
  456. package/dist/telemetry/__tests__/utils.unit.test.js +91 -0
  457. package/dist/telemetry/__tests__/utils.unit.test.js.map +1 -0
  458. package/dist/telemetry/a11y.d.ts +78 -0
  459. package/dist/telemetry/a11y.d.ts.map +1 -0
  460. package/dist/telemetry/a11y.js +280 -0
  461. package/dist/telemetry/a11y.js.map +1 -0
  462. package/dist/telemetry/console.d.ts.map +1 -1
  463. package/dist/telemetry/console.js +19 -28
  464. package/dist/telemetry/console.js.map +1 -1
  465. package/dist/telemetry/dialogs.d.ts.map +1 -1
  466. package/dist/telemetry/dialogs.js +4 -8
  467. package/dist/telemetry/dialogs.js.map +1 -1
  468. package/dist/telemetry/dom.d.ts +1 -1
  469. package/dist/telemetry/dom.d.ts.map +1 -1
  470. package/dist/telemetry/dom.js +83 -60
  471. package/dist/telemetry/dom.js.map +1 -1
  472. package/dist/telemetry/filters.d.ts +5 -18
  473. package/dist/telemetry/filters.d.ts.map +1 -1
  474. package/dist/telemetry/filters.js +36 -56
  475. package/dist/telemetry/filters.js.map +1 -1
  476. package/dist/telemetry/navigation.d.ts.map +1 -1
  477. package/dist/telemetry/navigation.js +5 -8
  478. package/dist/telemetry/navigation.js.map +1 -1
  479. package/dist/telemetry/network.d.ts.map +1 -1
  480. package/dist/telemetry/network.js +105 -104
  481. package/dist/telemetry/network.js.map +1 -1
  482. package/dist/telemetry/utils.d.ts +85 -0
  483. package/dist/telemetry/utils.d.ts.map +1 -0
  484. package/dist/telemetry/utils.js +138 -0
  485. package/dist/telemetry/utils.js.map +1 -0
  486. package/dist/types/dom.d.ts +66 -0
  487. package/dist/types/dom.d.ts.map +1 -0
  488. package/dist/types/dom.js +8 -0
  489. package/dist/types/dom.js.map +1 -0
  490. package/dist/types.d.ts +86 -77
  491. package/dist/types.d.ts.map +1 -1
  492. package/dist/{commands/shared → ui}/OutputBuilder.d.ts +10 -2
  493. package/dist/ui/OutputBuilder.d.ts.map +1 -0
  494. package/dist/{commands/shared → ui}/OutputBuilder.js +8 -2
  495. package/dist/ui/OutputBuilder.js.map +1 -0
  496. package/dist/ui/errors/CommandError.d.ts +16 -2
  497. package/dist/ui/errors/CommandError.d.ts.map +1 -1
  498. package/dist/ui/errors/CommandError.js +2 -1
  499. package/dist/ui/errors/CommandError.js.map +1 -1
  500. package/dist/ui/errors/index.d.ts +2 -3
  501. package/dist/ui/errors/index.d.ts.map +1 -1
  502. package/dist/ui/errors/index.js +1 -3
  503. package/dist/ui/errors/index.js.map +1 -1
  504. package/dist/ui/errors/utils.d.ts +6 -0
  505. package/dist/ui/errors/utils.d.ts.map +1 -1
  506. package/dist/ui/errors/utils.js +8 -3
  507. package/dist/ui/errors/utils.js.map +1 -1
  508. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +2 -0
  509. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +1 -0
  510. package/dist/ui/formatters/__tests__/semantic.unit.test.js +111 -0
  511. package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +1 -0
  512. package/dist/ui/formatters/a11y.d.ts +30 -0
  513. package/dist/ui/formatters/a11y.d.ts.map +1 -0
  514. package/dist/ui/formatters/a11y.js +178 -0
  515. package/dist/ui/formatters/a11y.js.map +1 -0
  516. package/dist/ui/formatters/dom.d.ts +3 -18
  517. package/dist/ui/formatters/dom.d.ts.map +1 -1
  518. package/dist/ui/formatters/dom.js +4 -27
  519. package/dist/ui/formatters/dom.js.map +1 -1
  520. package/dist/ui/formatters/preview.d.ts +10 -8
  521. package/dist/ui/formatters/preview.d.ts.map +1 -1
  522. package/dist/ui/formatters/preview.js +45 -17
  523. package/dist/ui/formatters/preview.js.map +1 -1
  524. package/dist/ui/formatters/semantic.d.ts +36 -0
  525. package/dist/ui/formatters/semantic.d.ts.map +1 -0
  526. package/dist/ui/formatters/semantic.js +98 -0
  527. package/dist/ui/formatters/semantic.js.map +1 -0
  528. package/dist/ui/formatters/status.d.ts +1 -1
  529. package/dist/ui/formatters/status.d.ts.map +1 -1
  530. package/dist/ui/formatters/status.js +9 -31
  531. package/dist/ui/formatters/status.js.map +1 -1
  532. package/dist/ui/formatting.d.ts +2 -270
  533. package/dist/ui/formatting.d.ts.map +1 -1
  534. package/dist/ui/formatting.js +8 -331
  535. package/dist/ui/formatting.js.map +1 -1
  536. package/dist/ui/logging/index.d.ts +1 -1
  537. package/dist/ui/logging/index.d.ts.map +1 -1
  538. package/dist/ui/logging/index.js +1 -1
  539. package/dist/ui/logging/index.js.map +1 -1
  540. package/dist/ui/logging/logger.d.ts +3 -23
  541. package/dist/ui/logging/logger.d.ts.map +1 -1
  542. package/dist/ui/logging/logger.js +2 -27
  543. package/dist/ui/logging/logger.js.map +1 -1
  544. package/dist/ui/messages/chrome.d.ts +15 -7
  545. package/dist/ui/messages/chrome.d.ts.map +1 -1
  546. package/dist/ui/messages/chrome.js +23 -32
  547. package/dist/ui/messages/chrome.js.map +1 -1
  548. package/dist/ui/messages/commands.d.ts +9 -19
  549. package/dist/ui/messages/commands.d.ts.map +1 -1
  550. package/dist/ui/messages/commands.js +14 -51
  551. package/dist/ui/messages/commands.js.map +1 -1
  552. package/dist/ui/messages/consoleMessages.d.ts +1 -1
  553. package/dist/ui/messages/consoleMessages.d.ts.map +1 -1
  554. package/dist/ui/messages/consoleMessages.js +3 -6
  555. package/dist/ui/messages/consoleMessages.js.map +1 -1
  556. package/dist/ui/messages/debug.d.ts +0 -14
  557. package/dist/ui/messages/debug.d.ts.map +1 -1
  558. package/dist/ui/messages/debug.js +0 -18
  559. package/dist/ui/messages/debug.js.map +1 -1
  560. package/dist/ui/messages/errors.d.ts +0 -34
  561. package/dist/ui/messages/errors.d.ts.map +1 -1
  562. package/dist/ui/messages/errors.js +3 -81
  563. package/dist/ui/messages/errors.js.map +1 -1
  564. package/dist/ui/messages/internal.d.ts +0 -7
  565. package/dist/ui/messages/internal.d.ts.map +1 -1
  566. package/dist/ui/messages/internal.js +0 -12
  567. package/dist/ui/messages/internal.js.map +1 -1
  568. package/dist/ui/messages/preview.d.ts +14 -1
  569. package/dist/ui/messages/preview.d.ts.map +1 -1
  570. package/dist/ui/messages/preview.js +24 -7
  571. package/dist/ui/messages/preview.js.map +1 -1
  572. package/dist/ui/messages/session.d.ts.map +1 -1
  573. package/dist/ui/messages/session.js +7 -23
  574. package/dist/ui/messages/session.js.map +1 -1
  575. package/dist/ui/messages/validation.d.ts.map +1 -1
  576. package/dist/ui/messages/validation.js +7 -8
  577. package/dist/ui/messages/validation.js.map +1 -1
  578. package/dist/utils/__tests__/atomicFile.test.d.ts +2 -0
  579. package/dist/utils/__tests__/atomicFile.test.d.ts.map +1 -0
  580. package/dist/utils/__tests__/atomicFile.test.js +43 -0
  581. package/dist/utils/__tests__/atomicFile.test.js.map +1 -0
  582. package/dist/utils/__tests__/errors.unit.test.d.ts +12 -0
  583. package/dist/utils/__tests__/errors.unit.test.d.ts.map +1 -0
  584. package/dist/utils/__tests__/errors.unit.test.js +255 -0
  585. package/dist/utils/__tests__/errors.unit.test.js.map +1 -0
  586. package/dist/utils/__tests__/http.unit.test.d.ts +12 -0
  587. package/dist/utils/__tests__/http.unit.test.d.ts.map +1 -0
  588. package/dist/utils/__tests__/http.unit.test.js +218 -0
  589. package/dist/utils/__tests__/http.unit.test.js.map +1 -0
  590. package/dist/utils/__tests__/objects.test.d.ts +2 -0
  591. package/dist/utils/__tests__/objects.test.d.ts.map +1 -0
  592. package/dist/utils/__tests__/objects.test.js +50 -0
  593. package/dist/utils/__tests__/objects.test.js.map +1 -0
  594. package/dist/utils/__tests__/process.unit.test.d.ts +14 -0
  595. package/dist/utils/__tests__/process.unit.test.d.ts.map +1 -0
  596. package/dist/utils/__tests__/process.unit.test.js +124 -0
  597. package/dist/utils/__tests__/process.unit.test.js.map +1 -0
  598. package/dist/utils/__tests__/session.contract.test.js +14 -4
  599. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  600. package/dist/utils/__tests__/url.test.d.ts +2 -0
  601. package/dist/utils/__tests__/url.test.d.ts.map +1 -0
  602. package/dist/utils/__tests__/url.test.js +42 -0
  603. package/dist/utils/__tests__/url.test.js.map +1 -0
  604. package/dist/utils/atomicFile.d.ts +31 -5
  605. package/dist/utils/atomicFile.d.ts.map +1 -1
  606. package/dist/utils/atomicFile.js +52 -13
  607. package/dist/utils/atomicFile.js.map +1 -1
  608. package/dist/utils/concurrency.d.ts +54 -0
  609. package/dist/utils/concurrency.d.ts.map +1 -0
  610. package/dist/utils/concurrency.js +78 -0
  611. package/dist/utils/concurrency.js.map +1 -0
  612. package/dist/utils/daemonErrors.d.ts +60 -0
  613. package/dist/utils/daemonErrors.d.ts.map +1 -0
  614. package/dist/utils/daemonErrors.js +58 -0
  615. package/dist/utils/daemonErrors.js.map +1 -0
  616. package/dist/utils/errors.d.ts +28 -0
  617. package/dist/utils/errors.d.ts.map +1 -0
  618. package/dist/utils/errors.js +33 -0
  619. package/dist/utils/errors.js.map +1 -0
  620. package/dist/utils/exitCodes.d.ts +41 -5
  621. package/dist/utils/exitCodes.d.ts.map +1 -1
  622. package/dist/utils/exitCodes.js +43 -9
  623. package/dist/utils/exitCodes.js.map +1 -1
  624. package/dist/utils/http.d.ts +9 -4
  625. package/dist/utils/http.d.ts.map +1 -1
  626. package/dist/utils/http.js +44 -10
  627. package/dist/utils/http.js.map +1 -1
  628. package/dist/utils/levenshtein.d.ts +45 -0
  629. package/dist/utils/levenshtein.d.ts.map +1 -0
  630. package/dist/utils/levenshtein.js +85 -0
  631. package/dist/utils/levenshtein.js.map +1 -0
  632. package/dist/utils/objects.d.ts +16 -1
  633. package/dist/utils/objects.d.ts.map +1 -1
  634. package/dist/utils/objects.js +16 -1
  635. package/dist/utils/objects.js.map +1 -1
  636. package/dist/utils/process.d.ts +45 -0
  637. package/dist/utils/process.d.ts.map +1 -0
  638. package/dist/utils/process.js +91 -0
  639. package/dist/utils/process.js.map +1 -0
  640. package/dist/utils/url.d.ts +10 -3
  641. package/dist/utils/url.d.ts.map +1 -1
  642. package/dist/utils/url.js +42 -29
  643. package/dist/utils/url.js.map +1 -1
  644. package/dist/utils/validation.d.ts +101 -0
  645. package/dist/utils/validation.d.ts.map +1 -0
  646. package/dist/utils/validation.js +131 -0
  647. package/dist/utils/validation.js.map +1 -0
  648. package/package.json +22 -1
  649. package/dist/commands/dom.d.ts.map +0 -1
  650. package/dist/commands/dom.js +0 -244
  651. package/dist/commands/dom.js.map +0 -1
  652. package/dist/commands/domEvalHelpers.d.ts.map +0 -1
  653. package/dist/commands/domEvalHelpers.js.map +0 -1
  654. package/dist/commands/domOptionsBuilder.d.ts +0 -67
  655. package/dist/commands/domOptionsBuilder.d.ts.map +0 -1
  656. package/dist/commands/domOptionsBuilder.js +0 -86
  657. package/dist/commands/domOptionsBuilder.js.map +0 -1
  658. package/dist/commands/domSelectorParser.d.ts +0 -20
  659. package/dist/commands/domSelectorParser.d.ts.map +0 -1
  660. package/dist/commands/domSelectorParser.js +0 -20
  661. package/dist/commands/domSelectorParser.js.map +0 -1
  662. package/dist/commands/shared/OutputBuilder.d.ts.map +0 -1
  663. package/dist/commands/shared/OutputBuilder.js.map +0 -1
  664. package/dist/commands/shared/daemonSessionController.d.ts.map +0 -1
  665. package/dist/commands/shared/daemonSessionController.js.map +0 -1
  666. package/dist/commands/shared/sessionController.d.ts +0 -21
  667. package/dist/commands/shared/sessionController.d.ts.map +0 -1
  668. package/dist/commands/shared/sessionController.js +0 -54
  669. package/dist/commands/shared/sessionController.js.map +0 -1
  670. package/dist/connection/__tests__/finder.contract.test.d.ts +0 -2
  671. package/dist/connection/__tests__/finder.contract.test.d.ts.map +0 -1
  672. package/dist/connection/__tests__/finder.contract.test.js +0 -239
  673. package/dist/connection/__tests__/finder.contract.test.js.map +0 -1
  674. package/dist/connection/domOperations.d.ts +0 -48
  675. package/dist/connection/domOperations.d.ts.map +0 -1
  676. package/dist/connection/domOperations.js +0 -106
  677. package/dist/connection/domOperations.js.map +0 -1
  678. package/dist/connection/finder.d.ts +0 -12
  679. package/dist/connection/finder.d.ts.map +0 -1
  680. package/dist/connection/finder.js +0 -17
  681. package/dist/connection/finder.js.map +0 -1
  682. package/dist/ipc/commands.d.ts +0 -260
  683. package/dist/ipc/commands.d.ts.map +0 -1
  684. package/dist/ipc/commands.js +0 -77
  685. package/dist/ipc/commands.js.map +0 -1
  686. package/dist/ipc/responseValidator.d.ts.map +0 -1
  687. package/dist/ipc/responseValidator.js.map +0 -1
  688. package/dist/ipc/types.d.ts +0 -226
  689. package/dist/ipc/types.d.ts.map +0 -1
  690. package/dist/ipc/types.js.map +0 -1
  691. package/dist/session/fileOps.d.ts +0 -25
  692. package/dist/session/fileOps.d.ts.map +0 -1
  693. package/dist/session/fileOps.js +0 -39
  694. package/dist/session/fileOps.js.map +0 -1
  695. package/dist/session/queryCache.d.ts +0 -36
  696. package/dist/session/queryCache.d.ts.map +0 -1
  697. package/dist/session/queryCache.js +0 -66
  698. package/dist/session/queryCache.js.map +0 -1
  699. /package/dist/ipc/{responseValidator.d.ts → utils/responseValidator.d.ts} +0 -0
@@ -3,26 +3,6 @@
3
3
  *
4
4
  * Tests the public API behavior of startNetworkCollection WITHOUT testing implementation details.
5
5
  * Follows the testing philosophy: "Test the contract, not the implementation"
6
- *
7
- * Coverage:
8
- * 1. Request/response pairing - Normal flow with matching IDs
9
- * 2. Out-of-order events - Response arrives before request
10
- * 3. Stale requests - Incomplete requests after timeout
11
- * 4. Failed requests - Network.loadingFailed events
12
- * 5. Request limits - MAX_NETWORK_REQUESTS enforcement
13
- * 6. Cleanup - Handler removal and state cleanup
14
- * 7. Domain filtering - Tracking/analytics exclusion
15
- * 8. Body fetching - Size limits and MIME type handling
16
- *
17
- * What we test:
18
- * ✅ Behavior: Given CDP events → expect NetworkRequest array contents
19
- * ✅ Invariants: "Requests are paired with responses", "Cleanup removes all handlers"
20
- * ✅ Edge cases: Out-of-order, stale, limits, failures
21
- *
22
- * What we DON'T test:
23
- * ❌ Internal requestMap structure
24
- * ❌ Internal function calls (tryExactMatch, normalizeUrl, etc.)
25
- * ❌ Implementation details (Map vs Set, event handler IDs)
26
6
  */
27
7
  import assert from 'node:assert/strict';
28
8
  import { afterEach, beforeEach, describe, it } from 'node:test';
@@ -55,7 +35,7 @@ class MockCDPConnection {
55
35
  if (handlers) {
56
36
  handlers.set(id, handler);
57
37
  }
58
- return id;
38
+ return () => this.off(event, id);
59
39
  }
60
40
  /**
61
41
  * Mock CDP event unsubscription
@@ -169,9 +149,7 @@ void describe('Network telemetry contract', () => {
169
149
  });
170
150
  void describe('Basic request/response pairing', () => {
171
151
  void it('should pair request with response by requestId', async () => {
172
- // Arrange: Start collection
173
152
  const cleanup = await startNetworkCollection(mockCDP, requests);
174
- // Act: Simulate CDP events for a complete request/response cycle
175
153
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
176
154
  requestId: 'req-1',
177
155
  request: createTestRequest({
@@ -203,7 +181,6 @@ void describe('Network telemetry contract', () => {
203
181
  timestamp: 1100,
204
182
  encodedDataLength: 1234,
205
183
  });
206
- // Assert: Request is paired with response
207
184
  assert.equal(requests.length, 1, 'Should have one network request');
208
185
  const request = requests[0];
209
186
  assert.ok(request, 'Request should exist');
@@ -214,13 +191,10 @@ void describe('Network telemetry contract', () => {
214
191
  assert.equal(request.mimeType, 'application/json');
215
192
  assert.ok(request.requestHeaders, 'Should have request headers');
216
193
  assert.ok(request.responseHeaders, 'Should have response headers');
217
- // Cleanup
218
194
  void cleanup();
219
195
  });
220
196
  void it('should handle multiple concurrent requests', async () => {
221
- // Arrange
222
197
  const cleanup = await startNetworkCollection(mockCDP, requests);
223
- // Act: Simulate 3 concurrent requests
224
198
  for (let i = 1; i <= 3; i++) {
225
199
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
226
200
  requestId: `req-${i}`,
@@ -231,7 +205,6 @@ void describe('Network telemetry contract', () => {
231
205
  loaderId: 'loader-1',
232
206
  }));
233
207
  }
234
- // Responses arrive in different order (3, 1, 2)
235
208
  for (const i of [3, 1, 2]) {
236
209
  mockCDP.emit('Network.responseReceived', createResponseEvent({
237
210
  requestId: `req-${i}`,
@@ -250,7 +223,6 @@ void describe('Network telemetry contract', () => {
250
223
  encodedDataLength: 100,
251
224
  });
252
225
  }
253
- // Assert: All requests paired correctly despite out-of-order responses
254
226
  assert.equal(requests.length, 3);
255
227
  assert.ok(requests[0], 'First request should exist');
256
228
  assert.ok(requests[1], 'Second request should exist');
@@ -263,11 +235,7 @@ void describe('Network telemetry contract', () => {
263
235
  });
264
236
  void describe('Edge case: Out-of-order events', () => {
265
237
  void it('should handle response arriving before request', async () => {
266
- // This is a real race condition that can happen in CDP
267
- // Current behavior: Response event is ignored if request doesn't exist yet
268
- // The second responseReceived event (after request) sets the status correctly
269
238
  const cleanup = await startNetworkCollection(mockCDP, requests);
270
- // Act: Response arrives BEFORE request (early response is ignored)
271
239
  mockCDP.emit('Network.responseReceived', createResponseEvent({
272
240
  requestId: 'req-1',
273
241
  response: createTestResponse({
@@ -279,7 +247,6 @@ void describe('Network telemetry contract', () => {
279
247
  frameId: 'frame-1',
280
248
  loaderId: 'loader-1',
281
249
  }));
282
- // Request arrives later
283
250
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
284
251
  requestId: 'req-1',
285
252
  request: createTestRequest({
@@ -290,7 +257,6 @@ void describe('Network telemetry contract', () => {
290
257
  frameId: 'frame-1',
291
258
  loaderId: 'loader-1',
292
259
  }));
293
- // Response arrives again (normal order) - this one actually sets status
294
260
  mockCDP.emit('Network.responseReceived', createResponseEvent({
295
261
  requestId: 'req-1',
296
262
  response: createTestResponse({
@@ -307,7 +273,6 @@ void describe('Network telemetry contract', () => {
307
273
  timestamp: 1100,
308
274
  encodedDataLength: 100,
309
275
  });
310
- // Assert: Request is tracked correctly with response data from second response event
311
276
  assert.equal(requests.length, 1, 'Should have one request');
312
277
  const request = requests[0];
313
278
  assert.ok(request, 'Request should exist');
@@ -320,7 +285,6 @@ void describe('Network telemetry contract', () => {
320
285
  void describe('Edge case: Failed requests', () => {
321
286
  void it('should handle Network.loadingFailed events', async () => {
322
287
  const cleanup = await startNetworkCollection(mockCDP, requests);
323
- // Act: Request fails instead of succeeding
324
288
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
325
289
  requestId: 'req-1',
326
290
  request: createTestRequest({
@@ -337,7 +301,6 @@ void describe('Network telemetry contract', () => {
337
301
  type: 'XHR',
338
302
  errorText: 'net::ERR_CONNECTION_REFUSED',
339
303
  });
340
- // Assert: Failed request is recorded with status 0
341
304
  assert.equal(requests.length, 1);
342
305
  const request = requests[0];
343
306
  assert.ok(request, 'Request should exist');
@@ -348,10 +311,8 @@ void describe('Network telemetry contract', () => {
348
311
  });
349
312
  void describe('Edge case: Stale request cleanup', () => {
350
313
  void it('should clean up stale requests after timeout', async () => {
351
- // Use fake clock to control time
352
314
  const clockHelper = useFakeClock();
353
315
  const cleanup = await startNetworkCollection(mockCDP, requests);
354
- // Act: Create request but never finish it
355
316
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
356
317
  requestId: 'stale-req',
357
318
  request: createTestRequest({
@@ -362,9 +323,7 @@ void describe('Network telemetry contract', () => {
362
323
  frameId: 'frame-1',
363
324
  loaderId: 'loader-1',
364
325
  }));
365
- // Fast-forward past stale timeout (60s) + cleanup interval (30s)
366
326
  await clockHelper.tickAndFlush(91_000);
367
- // Assert: Stale request is NOT in final output (removed from tracking)
368
327
  assert.equal(requests.length, 0, 'Stale requests should not appear in output (removed from tracking)');
369
328
  void cleanup();
370
329
  clockHelper.restore();
@@ -375,7 +334,6 @@ void describe('Network telemetry contract', () => {
375
334
  const cleanup = await startNetworkCollection(mockCDP, requests, { includeAll: true } // Disable domain filtering for this test
376
335
  );
377
336
  const MAX_REQUESTS = 10_000;
378
- // Act: Try to collect more than the limit
379
337
  for (let i = 1; i <= MAX_REQUESTS + 100; i++) {
380
338
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
381
339
  requestId: `req-${i}`,
@@ -393,23 +351,18 @@ void describe('Network telemetry contract', () => {
393
351
  encodedDataLength: 100,
394
352
  });
395
353
  }
396
- // Assert: Should never exceed MAX_NETWORK_REQUESTS
397
354
  assert.ok(requests.length <= MAX_REQUESTS, `Should not exceed ${MAX_REQUESTS} requests, got ${requests.length}`);
398
355
  void cleanup();
399
356
  });
400
357
  });
401
358
  void describe('Cleanup behavior', () => {
402
359
  void it('should remove all event handlers on cleanup', async () => {
403
- // Arrange
404
360
  const cleanup = await startNetworkCollection(mockCDP, requests);
405
- // Assert: Handlers registered during start
406
361
  assert.ok(mockCDP.getHandlerCount('Network.requestWillBeSent') > 0, 'Should have requestWillBeSent handler');
407
362
  assert.ok(mockCDP.getHandlerCount('Network.responseReceived') > 0, 'Should have responseReceived handler');
408
363
  assert.ok(mockCDP.getHandlerCount('Network.loadingFinished') > 0, 'Should have loadingFinished handler');
409
364
  assert.ok(mockCDP.getHandlerCount('Network.loadingFailed') > 0, 'Should have loadingFailed handler');
410
- // Act: Call cleanup
411
365
  void cleanup();
412
- // Assert: All handlers removed
413
366
  assert.equal(mockCDP.getHandlerCount('Network.requestWillBeSent'), 0, 'Should remove requestWillBeSent handler');
414
367
  assert.equal(mockCDP.getHandlerCount('Network.responseReceived'), 0, 'Should remove responseReceived handler');
415
368
  assert.equal(mockCDP.getHandlerCount('Network.loadingFinished'), 0, 'Should remove loadingFinished handler');
@@ -417,20 +370,15 @@ void describe('Network telemetry contract', () => {
417
370
  });
418
371
  void it('should be idempotent (safe to call multiple times)', async () => {
419
372
  const cleanup = await startNetworkCollection(mockCDP, requests);
420
- // Act: Call cleanup multiple times
421
373
  void cleanup();
422
374
  void cleanup();
423
375
  void cleanup();
424
- // Assert: No errors thrown, handlers remain removed
425
376
  assert.equal(mockCDP.getHandlerCount('Network.requestWillBeSent'), 0);
426
377
  });
427
378
  });
428
379
  void describe('Domain filtering', () => {
429
380
  void it('should exclude default tracking domains by default', async () => {
430
- const cleanup = await startNetworkCollection(mockCDP, requests
431
- // includeAll defaults to false
432
- );
433
- // Act: Send requests to tracking domains
381
+ const cleanup = await startNetworkCollection(mockCDP, requests);
434
382
  const trackingDomains = [
435
383
  'https://www.google-analytics.com/collect',
436
384
  'https://connect.facebook.net/en_US/fbevents.js',
@@ -451,7 +399,6 @@ void describe('Network telemetry contract', () => {
451
399
  encodedDataLength: 100,
452
400
  });
453
401
  }
454
- // Assert: Tracking requests are filtered out
455
402
  assert.equal(requests.length, 0, 'Tracking domains should be filtered by default');
456
403
  void cleanup();
457
404
  });
@@ -459,7 +406,6 @@ void describe('Network telemetry contract', () => {
459
406
  const cleanup = await startNetworkCollection(mockCDP, requests, {
460
407
  includeAll: true,
461
408
  });
462
- // Act: Send request to tracking domain
463
409
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
464
410
  requestId: 'req-1',
465
411
  request: createTestRequest({
@@ -475,7 +421,6 @@ void describe('Network telemetry contract', () => {
475
421
  timestamp: 2000,
476
422
  encodedDataLength: 100,
477
423
  });
478
- // Assert: Request included when includeAll=true
479
424
  assert.equal(requests.length, 1);
480
425
  const request = requests[0];
481
426
  assert.ok(request, 'Request should exist');
@@ -487,7 +432,6 @@ void describe('Network telemetry contract', () => {
487
432
  void it('should fetch body for JSON responses under size limit', async () => {
488
433
  const cleanup = await startNetworkCollection(mockCDP, requests, { fetchAllBodies: true } // Force fetch all bodies for this test
489
434
  );
490
- // Act: JSON response under 5MB
491
435
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
492
436
  requestId: 'req-1',
493
437
  request: createTestRequest({
@@ -514,16 +458,13 @@ void describe('Network telemetry contract', () => {
514
458
  timestamp: 1100,
515
459
  encodedDataLength: 1024, // 1KB - under limit
516
460
  });
517
- // Wait for async body fetch
518
461
  await new Promise((resolve) => setTimeout(resolve, 10));
519
- // Assert: Should attempt to fetch body (mock doesn't actually fetch, but real code would)
520
462
  assert.equal(requests.length, 1);
521
463
  void cleanup();
522
464
  });
523
465
  void it('should skip body for large responses', async () => {
524
466
  const cleanup = await startNetworkCollection(mockCDP, requests, { maxBodySize: 1024 } // 1KB limit for testing
525
467
  );
526
- // Act: JSON response over size limit
527
468
  mockCDP.emit('Network.requestWillBeSent', createRequestEvent({
528
469
  requestId: 'req-1',
529
470
  request: createTestRequest({
@@ -550,7 +491,6 @@ void describe('Network telemetry contract', () => {
550
491
  timestamp: 1100,
551
492
  encodedDataLength: 10 * 1024 * 1024, // 10MB - over 1KB limit
552
493
  });
553
- // Assert: Body should be marked as skipped
554
494
  assert.equal(requests.length, 1);
555
495
  const request = requests[0];
556
496
  assert.ok(request, 'Request should exist');
@@ -560,9 +500,7 @@ void describe('Network telemetry contract', () => {
560
500
  });
561
501
  void describe('Initialization', () => {
562
502
  void it('should enable Network domain on start', async () => {
563
- // Act
564
503
  const cleanup = await startNetworkCollection(mockCDP, requests);
565
- // Assert: Network.enable was called
566
504
  assert.ok(mockCDP.wasNetworkEnabled(), 'Should call Network.enable');
567
505
  void cleanup();
568
506
  });
@@ -1 +1 @@
1
- {"version":3,"file":"network.contract.test.js","sourceRoot":"","sources":["../../../src/telemetry/__tests__/network.contract.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.contract.test.js","sourceRoot":"","sources":["../../../src/telemetry/__tests__/network.contract.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Unit tests for telemetry utility functions
3
+ *
4
+ * Tests the public contract of shared utilities used across telemetry collectors.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=utils.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.unit.test.d.ts","sourceRoot":"","sources":["../../../src/telemetry/__tests__/utils.unit.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Unit tests for telemetry utility functions
3
+ *
4
+ * Tests the public contract of shared utilities used across telemetry collectors.
5
+ */
6
+ import assert from 'node:assert/strict';
7
+ import { describe, it } from 'node:test';
8
+ import { withTimeout, pushWithLimit } from '../../telemetry/utils.js';
9
+ describe('withTimeout', () => {
10
+ it('should resolve when promise completes before timeout', async () => {
11
+ const promise = Promise.resolve(42);
12
+ const result = await withTimeout(promise, 1000, 'test');
13
+ assert.equal(result, 42);
14
+ });
15
+ it('should reject when promise times out', async () => {
16
+ const promise = new Promise((resolve) => setTimeout(resolve, 100));
17
+ await assert.rejects(async () => withTimeout(promise, 10, 'test-operation'), {
18
+ message: 'CDP test-operation timed out after 10ms',
19
+ });
20
+ });
21
+ it('should reject with original error when promise rejects before timeout', async () => {
22
+ const promise = Promise.reject(new Error('Original error'));
23
+ await assert.rejects(async () => withTimeout(promise, 1000, 'test'), {
24
+ message: 'Original error',
25
+ });
26
+ });
27
+ it('should include operation label in timeout error', async () => {
28
+ const promise = new Promise(() => { });
29
+ await assert.rejects(async () => withTimeout(promise, 10, 'DOM.getDocument'), {
30
+ message: /DOM\.getDocument timed out/,
31
+ });
32
+ });
33
+ });
34
+ describe('pushWithLimit', () => {
35
+ it('should add item when buffer is below limit', () => {
36
+ const buffer = [1, 2, 3];
37
+ let callbackCalled = false;
38
+ pushWithLimit(buffer, 4, 10, () => {
39
+ callbackCalled = true;
40
+ });
41
+ assert.deepEqual(buffer, [1, 2, 3, 4]);
42
+ assert.equal(callbackCalled, false);
43
+ });
44
+ it('should call callback exactly once when limit is reached', () => {
45
+ const buffer = [1, 2, 3, 4, 5, 6, 7, 8, 9];
46
+ let callCount = 0;
47
+ pushWithLimit(buffer, 10, 10, () => {
48
+ callCount++;
49
+ });
50
+ assert.equal(buffer.length, 10);
51
+ assert.equal(callCount, 1);
52
+ });
53
+ it('should not call callback multiple times when already at limit', () => {
54
+ const buffer = [1, 2, 3, 4, 5, 6, 7, 8, 9];
55
+ let callCount = 0;
56
+ pushWithLimit(buffer, 10, 10, () => {
57
+ callCount++;
58
+ });
59
+ pushWithLimit(buffer, 11, 10, () => {
60
+ callCount++;
61
+ });
62
+ pushWithLimit(buffer, 12, 10, () => {
63
+ callCount++;
64
+ });
65
+ assert.equal(buffer.length, 10);
66
+ assert.equal(callCount, 1);
67
+ });
68
+ it('should silently drop items beyond limit', () => {
69
+ const buffer = [1, 2, 3];
70
+ const limit = 3;
71
+ pushWithLimit(buffer, 4, limit, () => { });
72
+ pushWithLimit(buffer, 5, limit, () => { });
73
+ assert.equal(buffer.length, 3);
74
+ assert.deepEqual(buffer, [1, 2, 3]);
75
+ });
76
+ it('should work with different item types', () => {
77
+ const buffer = ['a', 'b'];
78
+ pushWithLimit(buffer, 'c', 5, () => { });
79
+ assert.deepEqual(buffer, ['a', 'b', 'c']);
80
+ });
81
+ it('should handle zero limit correctly', () => {
82
+ const buffer = [];
83
+ let callbackCalled = false;
84
+ pushWithLimit(buffer, 1, 0, () => {
85
+ callbackCalled = true;
86
+ });
87
+ assert.equal(buffer.length, 0);
88
+ assert.equal(callbackCalled, false);
89
+ });
90
+ });
91
+ //# sourceMappingURL=utils.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.unit.test.js","sourceRoot":"","sources":["../../../src/telemetry/__tests__/utils.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import type { Protocol } from '../connection/typed-cdp.js';
2
+ import type { A11yNode, A11yTree, A11yQueryPattern, A11yQueryResult } from '../types.js';
3
+ /**
4
+ * Builds accessibility tree from raw CDP nodes.
5
+ *
6
+ * Pure function that filters out ignored nodes and builds the tree structure.
7
+ * Separated from collectA11yTree for easier unit testing.
8
+ *
9
+ * @param rawNodes - Raw AXNode array from CDP
10
+ * @returns Parsed accessibility tree
11
+ * @throws Error if no root node found
12
+ */
13
+ export declare function buildTreeFromRawNodes(rawNodes: Protocol.Accessibility.AXNode[]): A11yTree;
14
+ /**
15
+ * Collects the full accessibility tree from the page via IPC.
16
+ *
17
+ * Uses the worker's persistent CDP connection through callCDP for consistency
18
+ * with other DOM commands and to avoid connection conflicts.
19
+ *
20
+ * @returns Parsed and filtered accessibility tree
21
+ * @throws Error if CDP Accessibility domain fails
22
+ */
23
+ export declare function collectA11yTree(): Promise<A11yTree>;
24
+ /**
25
+ * Queries accessibility tree by pattern (role, name, description).
26
+ *
27
+ * Performs case-insensitive matching with AND logic for multiple fields.
28
+ *
29
+ * @param tree - Accessibility tree to search
30
+ * @param pattern - Query pattern with optional role, name, description
31
+ * @returns Query result with matching nodes
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * // Find submit buttons
36
+ * queryA11yTree(tree, { role: 'button', name: 'Submit' });
37
+ *
38
+ * // Find all textboxes
39
+ * queryA11yTree(tree, { role: 'textbox' });
40
+ *
41
+ * // Find by name only
42
+ * queryA11yTree(tree, { name: 'Email' });
43
+ * ```
44
+ */
45
+ export declare function queryA11yTree(tree: A11yTree, pattern: A11yQueryPattern): A11yQueryResult;
46
+ /**
47
+ * Parses query pattern string into A11yQueryPattern object.
48
+ *
49
+ * Supports format: "role:button name:Submit description:Main"
50
+ * Fields are separated by spaces, case-insensitive.
51
+ *
52
+ * @param patternString - Query pattern string
53
+ * @returns Parsed query pattern
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * parseQueryPattern('role:button name:Submit')
58
+ * // => { role: 'button', name: 'Submit' }
59
+ *
60
+ * parseQueryPattern('role:textbox')
61
+ * // => { role: 'textbox' }
62
+ *
63
+ * parseQueryPattern('name:Email')
64
+ * // => { name: 'Email' }
65
+ * ```
66
+ */
67
+ export declare function parseQueryPattern(patternString: string): A11yQueryPattern;
68
+ /**
69
+ * Gets accessibility properties for a DOM node by CSS selector via IPC.
70
+ *
71
+ * Uses the worker's persistent CDP connection through callCDP for consistency.
72
+ *
73
+ * @param selector - CSS selector
74
+ * @returns A11y node or null if not found
75
+ * @throws Error if selector is invalid or element not found
76
+ */
77
+ export declare function getA11yNodeBySelector(selector: string): Promise<A11yNode | null>;
78
+ //# sourceMappingURL=a11y.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../src/telemetry/a11y.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAExF;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,QAAQ,CAwBzF;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC,CAgBzD;AA6ED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAcxF;AAwCD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,gBAAgB,CA2BzE;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAyCtF"}