browser-debugger-cli 0.2.0 → 0.5.1

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 (554) hide show
  1. package/README.md +137 -126
  2. package/dist/__tests__/fixtures/schema-v0.2.1.golden.json +47 -0
  3. package/dist/__tests__/schema.contract.test.d.ts +19 -0
  4. package/dist/__tests__/schema.contract.test.d.ts.map +1 -0
  5. package/dist/__tests__/schema.contract.test.js +236 -0
  6. package/dist/__tests__/schema.contract.test.js.map +1 -0
  7. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +8 -0
  8. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +1 -0
  9. package/dist/__tests__/smoke/error-handling.smoke.test.js +106 -0
  10. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -0
  11. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +8 -0
  12. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +1 -0
  13. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +109 -0
  14. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -0
  15. package/dist/__testutils__/commandRunner.d.ts +45 -0
  16. package/dist/__testutils__/commandRunner.d.ts.map +1 -0
  17. package/dist/__testutils__/commandRunner.js +108 -0
  18. package/dist/__testutils__/commandRunner.js.map +1 -0
  19. package/dist/__testutils__/daemonHelpers.d.ts +81 -0
  20. package/dist/__testutils__/daemonHelpers.d.ts.map +1 -0
  21. package/dist/__testutils__/daemonHelpers.js +206 -0
  22. package/dist/__testutils__/daemonHelpers.js.map +1 -0
  23. package/dist/__testutils__/index.d.ts +1 -0
  24. package/dist/__testutils__/index.d.ts.map +1 -1
  25. package/dist/__testutils__/index.js +1 -0
  26. package/dist/__testutils__/index.js.map +1 -1
  27. package/dist/__testutils__/testCleanup.d.ts +45 -0
  28. package/dist/__testutils__/testCleanup.d.ts.map +1 -0
  29. package/dist/__testutils__/testCleanup.js +87 -0
  30. package/dist/__testutils__/testCleanup.js.map +1 -0
  31. package/dist/__testutils__/testHome.d.ts +26 -0
  32. package/dist/__testutils__/testHome.d.ts.map +1 -0
  33. package/dist/__testutils__/testHome.js +57 -0
  34. package/dist/__testutils__/testHome.js.map +1 -0
  35. package/dist/__testutils__/testProcess.d.ts.map +1 -1
  36. package/dist/__testutils__/testProcess.js +11 -3
  37. package/dist/__testutils__/testProcess.js.map +1 -1
  38. package/dist/cli/commands/__tests__/start.unit.test.d.ts +2 -0
  39. package/dist/cli/commands/__tests__/start.unit.test.d.ts.map +1 -0
  40. package/dist/cli/commands/__tests__/start.unit.test.js +131 -0
  41. package/dist/cli/commands/__tests__/start.unit.test.js.map +1 -0
  42. package/dist/cli/commands/cleanup.d.ts +1 -0
  43. package/dist/cli/commands/cleanup.d.ts.map +1 -1
  44. package/dist/cli/commands/cleanup.js +80 -61
  45. package/dist/cli/commands/cleanup.js.map +1 -1
  46. package/dist/cli/commands/details.d.ts +2 -1
  47. package/dist/cli/commands/details.d.ts.map +1 -1
  48. package/dist/cli/commands/details.js +104 -52
  49. package/dist/cli/commands/details.js.map +1 -1
  50. package/dist/cli/commands/peek.d.ts +2 -1
  51. package/dist/cli/commands/peek.d.ts.map +1 -1
  52. package/dist/cli/commands/peek.js +22 -67
  53. package/dist/cli/commands/peek.js.map +1 -1
  54. package/dist/cli/commands/query.d.ts +9 -0
  55. package/dist/cli/commands/query.d.ts.map +1 -0
  56. package/dist/cli/commands/query.js +125 -0
  57. package/dist/cli/commands/query.js.map +1 -0
  58. package/dist/cli/commands/start.d.ts +74 -0
  59. package/dist/cli/commands/start.d.ts.map +1 -1
  60. package/dist/cli/commands/start.js +147 -38
  61. package/dist/cli/commands/start.js.map +1 -1
  62. package/dist/cli/commands/status.d.ts.map +1 -1
  63. package/dist/cli/commands/status.js +37 -49
  64. package/dist/cli/commands/status.js.map +1 -1
  65. package/dist/cli/commands/stop.d.ts +1 -0
  66. package/dist/cli/commands/stop.d.ts.map +1 -1
  67. package/dist/cli/commands/stop.js +106 -120
  68. package/dist/cli/commands/stop.js.map +1 -1
  69. package/dist/cli/formatters/detailsFormatter.d.ts +1 -1
  70. package/dist/cli/formatters/previewFormatter.d.ts +7 -7
  71. package/dist/cli/formatters/previewFormatter.d.ts.map +1 -1
  72. package/dist/cli/formatters/previewFormatter.js +5 -10
  73. package/dist/cli/formatters/previewFormatter.js.map +1 -1
  74. package/dist/cli/formatters/statusFormatter.d.ts +13 -10
  75. package/dist/cli/formatters/statusFormatter.d.ts.map +1 -1
  76. package/dist/cli/formatters/statusFormatter.js +26 -53
  77. package/dist/cli/formatters/statusFormatter.js.map +1 -1
  78. package/dist/cli/handlers/ChromeBootstrap.d.ts +24 -0
  79. package/dist/cli/handlers/ChromeBootstrap.d.ts.map +1 -0
  80. package/dist/cli/handlers/ChromeBootstrap.js +50 -0
  81. package/dist/cli/handlers/ChromeBootstrap.js.map +1 -0
  82. package/dist/cli/handlers/OutputBuilder.d.ts +2 -3
  83. package/dist/cli/handlers/OutputBuilder.d.ts.map +1 -1
  84. package/dist/cli/handlers/OutputBuilder.js +2 -4
  85. package/dist/cli/handlers/OutputBuilder.js.map +1 -1
  86. package/dist/cli/handlers/OutputWriter.d.ts +15 -0
  87. package/dist/cli/handlers/OutputWriter.d.ts.map +1 -0
  88. package/dist/cli/handlers/OutputWriter.js +34 -0
  89. package/dist/cli/handlers/OutputWriter.js.map +1 -0
  90. package/dist/cli/handlers/PreviewWriter.d.ts +52 -0
  91. package/dist/cli/handlers/PreviewWriter.d.ts.map +1 -0
  92. package/dist/cli/handlers/PreviewWriter.js +118 -0
  93. package/dist/cli/handlers/PreviewWriter.js.map +1 -0
  94. package/dist/cli/handlers/SessionLock.d.ts +16 -0
  95. package/dist/cli/handlers/SessionLock.d.ts.map +1 -0
  96. package/dist/cli/handlers/SessionLock.js +35 -0
  97. package/dist/cli/handlers/SessionLock.js.map +1 -0
  98. package/dist/cli/handlers/SessionLoop.d.ts +19 -0
  99. package/dist/cli/handlers/SessionLoop.d.ts.map +1 -0
  100. package/dist/cli/handlers/SessionLoop.js +47 -0
  101. package/dist/cli/handlers/SessionLoop.js.map +1 -0
  102. package/dist/cli/handlers/ShutdownController.d.ts +41 -0
  103. package/dist/cli/handlers/ShutdownController.d.ts.map +1 -0
  104. package/dist/cli/handlers/ShutdownController.js +94 -0
  105. package/dist/cli/handlers/ShutdownController.js.map +1 -0
  106. package/dist/cli/handlers/SignalHandler.d.ts +35 -0
  107. package/dist/cli/handlers/SignalHandler.d.ts.map +1 -0
  108. package/dist/cli/handlers/SignalHandler.js +81 -0
  109. package/dist/cli/handlers/SignalHandler.js.map +1 -0
  110. package/dist/cli/handlers/TargetSetup.d.ts +42 -0
  111. package/dist/cli/handlers/TargetSetup.d.ts.map +1 -0
  112. package/dist/cli/handlers/TargetSetup.js +87 -0
  113. package/dist/cli/handlers/TargetSetup.js.map +1 -0
  114. package/dist/cli/handlers/sessionController.d.ts +41 -0
  115. package/dist/cli/handlers/sessionController.d.ts.map +1 -1
  116. package/dist/cli/handlers/sessionController.js +266 -5
  117. package/dist/cli/handlers/sessionController.js.map +1 -1
  118. package/dist/cli/registry.d.ts +2 -2
  119. package/dist/cli/registry.d.ts.map +1 -1
  120. package/dist/cli/registry.js +12 -37
  121. package/dist/cli/registry.js.map +1 -1
  122. package/dist/collectors/console.d.ts +1 -1
  123. package/dist/collectors/console.js +2 -2
  124. package/dist/collectors/console.js.map +1 -1
  125. package/dist/collectors/dom.d.ts +1 -1
  126. package/dist/collectors/network.d.ts +1 -2
  127. package/dist/collectors/network.d.ts.map +1 -1
  128. package/dist/collectors/network.js +3 -3
  129. package/dist/collectors/network.js.map +1 -1
  130. package/dist/commands/__tests__/cdp.contract.test.d.ts.map +1 -1
  131. package/dist/commands/__tests__/cdp.contract.test.js +0 -1
  132. package/dist/commands/__tests__/cdp.contract.test.js.map +1 -1
  133. package/dist/commands/__tests__/domEval.contract.test.d.ts +17 -0
  134. package/dist/commands/__tests__/domEval.contract.test.d.ts.map +1 -0
  135. package/dist/commands/__tests__/domEval.contract.test.js +231 -0
  136. package/dist/commands/__tests__/domEval.contract.test.js.map +1 -0
  137. package/dist/commands/cdp.js +1 -1
  138. package/dist/commands/cdp.js.map +1 -1
  139. package/dist/commands/cleanup.d.ts.map +1 -1
  140. package/dist/commands/cleanup.js +51 -13
  141. package/dist/commands/cleanup.js.map +1 -1
  142. package/dist/commands/console.d.ts.map +1 -1
  143. package/dist/commands/console.js +8 -8
  144. package/dist/commands/console.js.map +1 -1
  145. package/dist/commands/details.js +2 -2
  146. package/dist/commands/details.js.map +1 -1
  147. package/dist/commands/dom.d.ts.map +1 -1
  148. package/dist/commands/dom.js +114 -128
  149. package/dist/commands/dom.js.map +1 -1
  150. package/dist/commands/domEvalHelpers.d.ts +7 -11
  151. package/dist/commands/domEvalHelpers.d.ts.map +1 -1
  152. package/dist/commands/domEvalHelpers.js +67 -22
  153. package/dist/commands/domEvalHelpers.js.map +1 -1
  154. package/dist/commands/domOptionsBuilder.d.ts +32 -0
  155. package/dist/commands/domOptionsBuilder.d.ts.map +1 -1
  156. package/dist/commands/domOptionsBuilder.js +35 -0
  157. package/dist/commands/domOptionsBuilder.js.map +1 -1
  158. package/dist/commands/machineReadableHelp.d.ts +98 -0
  159. package/dist/commands/machineReadableHelp.d.ts.map +1 -0
  160. package/dist/commands/machineReadableHelp.js +137 -0
  161. package/dist/commands/machineReadableHelp.js.map +1 -0
  162. package/dist/commands/network.d.ts.map +1 -1
  163. package/dist/commands/network.js +2 -4
  164. package/dist/commands/network.js.map +1 -1
  165. package/dist/commands/peek.d.ts.map +1 -1
  166. package/dist/commands/peek.js +3 -2
  167. package/dist/commands/peek.js.map +1 -1
  168. package/dist/commands/shared/CommandRunner.d.ts +4 -2
  169. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  170. package/dist/commands/shared/CommandRunner.js +18 -3
  171. package/dist/commands/shared/CommandRunner.js.map +1 -1
  172. package/dist/commands/shared/OutputBuilder.js +1 -1
  173. package/dist/commands/shared/OutputBuilder.js.map +1 -1
  174. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  175. package/dist/commands/shared/commonOptions.js +10 -3
  176. package/dist/commands/shared/commonOptions.js.map +1 -1
  177. package/dist/commands/shared/daemonSessionController.d.ts +2 -0
  178. package/dist/commands/shared/daemonSessionController.d.ts.map +1 -1
  179. package/dist/commands/shared/daemonSessionController.js +13 -16
  180. package/dist/commands/shared/daemonSessionController.js.map +1 -1
  181. package/dist/commands/shared/sessionController.d.ts.map +1 -1
  182. package/dist/commands/shared/sessionController.js +8 -9
  183. package/dist/commands/shared/sessionController.js.map +1 -1
  184. package/dist/commands/start.d.ts.map +1 -1
  185. package/dist/commands/start.js +16 -1
  186. package/dist/commands/start.js.map +1 -1
  187. package/dist/commands/status.d.ts.map +1 -1
  188. package/dist/commands/status.js +72 -54
  189. package/dist/commands/status.js.map +1 -1
  190. package/dist/commands/stop.d.ts.map +1 -1
  191. package/dist/commands/stop.js +16 -28
  192. package/dist/commands/stop.js.map +1 -1
  193. package/dist/commands/tail.d.ts +11 -0
  194. package/dist/commands/tail.d.ts.map +1 -0
  195. package/dist/commands/tail.js +114 -0
  196. package/dist/commands/tail.js.map +1 -0
  197. package/dist/commands.d.ts.map +1 -1
  198. package/dist/commands.js +2 -0
  199. package/dist/commands.js.map +1 -1
  200. package/dist/connection/__tests__/cdp.contract.test.d.ts.map +1 -1
  201. package/dist/connection/__tests__/cdp.contract.test.js +0 -1
  202. package/dist/connection/__tests__/cdp.contract.test.js.map +1 -1
  203. package/dist/connection/cdp.d.ts +46 -2
  204. package/dist/connection/cdp.d.ts.map +1 -1
  205. package/dist/connection/cdp.js +71 -5
  206. package/dist/connection/cdp.js.map +1 -1
  207. package/dist/connection/diagnostics.d.ts +16 -0
  208. package/dist/connection/diagnostics.d.ts.map +1 -0
  209. package/dist/connection/diagnostics.js +37 -0
  210. package/dist/connection/diagnostics.js.map +1 -0
  211. package/dist/connection/errors.d.ts +74 -0
  212. package/dist/connection/errors.d.ts.map +1 -0
  213. package/dist/connection/errors.js +83 -0
  214. package/dist/connection/errors.js.map +1 -0
  215. package/dist/connection/handlers.d.ts +31 -0
  216. package/dist/connection/handlers.d.ts.map +1 -0
  217. package/dist/connection/handlers.js +38 -0
  218. package/dist/connection/handlers.js.map +1 -0
  219. package/dist/connection/launcher.d.ts +3 -20
  220. package/dist/connection/launcher.d.ts.map +1 -1
  221. package/dist/connection/launcher.js +140 -32
  222. package/dist/connection/launcher.js.map +1 -1
  223. package/dist/connection/pageReadiness.d.ts +46 -0
  224. package/dist/connection/pageReadiness.d.ts.map +1 -0
  225. package/dist/connection/pageReadiness.js +270 -0
  226. package/dist/connection/pageReadiness.js.map +1 -0
  227. package/dist/connection/tabs.d.ts +52 -0
  228. package/dist/connection/tabs.d.ts.map +1 -0
  229. package/dist/connection/tabs.js +227 -0
  230. package/dist/connection/tabs.js.map +1 -0
  231. package/dist/constants.d.ts +20 -40
  232. package/dist/constants.d.ts.map +1 -1
  233. package/dist/constants.js +26 -40
  234. package/dist/constants.js.map +1 -1
  235. package/dist/daemon/ipcServer.d.ts +5 -7
  236. package/dist/daemon/ipcServer.d.ts.map +1 -1
  237. package/dist/daemon/ipcServer.js +178 -143
  238. package/dist/daemon/ipcServer.js.map +1 -1
  239. package/dist/daemon/launcher.js +1 -1
  240. package/dist/daemon/launcher.js.map +1 -1
  241. package/dist/daemon/server/SocketServer.d.ts +22 -0
  242. package/dist/daemon/server/SocketServer.d.ts.map +1 -0
  243. package/dist/daemon/server/SocketServer.js +67 -0
  244. package/dist/daemon/server/SocketServer.js.map +1 -0
  245. package/dist/daemon/server/WorkerManager.d.ts +36 -0
  246. package/dist/daemon/server/WorkerManager.d.ts.map +1 -0
  247. package/dist/daemon/server/WorkerManager.js +98 -0
  248. package/dist/daemon/server/WorkerManager.js.map +1 -0
  249. package/dist/daemon/startSession.d.ts +2 -0
  250. package/dist/daemon/startSession.d.ts.map +1 -1
  251. package/dist/daemon/startSession.js +9 -5
  252. package/dist/daemon/startSession.js.map +1 -1
  253. package/dist/daemon/worker/TelemetryStore.d.ts +18 -0
  254. package/dist/daemon/worker/TelemetryStore.d.ts.map +1 -0
  255. package/dist/daemon/worker/TelemetryStore.js +49 -0
  256. package/dist/daemon/worker/TelemetryStore.js.map +1 -0
  257. package/dist/daemon/worker/collectors.d.ts +8 -0
  258. package/dist/daemon/worker/collectors.d.ts.map +1 -0
  259. package/dist/daemon/worker/collectors.js +19 -0
  260. package/dist/daemon/worker/collectors.js.map +1 -0
  261. package/dist/daemon/worker/commandRegistry.d.ts +10 -0
  262. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -0
  263. package/dist/daemon/worker/commandRegistry.js +289 -0
  264. package/dist/daemon/worker/commandRegistry.js.map +1 -0
  265. package/dist/daemon/worker/plugins.d.ts +21 -0
  266. package/dist/daemon/worker/plugins.d.ts.map +1 -0
  267. package/dist/daemon/worker/plugins.js +71 -0
  268. package/dist/daemon/worker/plugins.js.map +1 -0
  269. package/dist/daemon/worker/types.d.ts +13 -0
  270. package/dist/daemon/worker/types.d.ts.map +1 -0
  271. package/dist/daemon/worker/types.js +2 -0
  272. package/dist/daemon/worker/types.js.map +1 -0
  273. package/dist/daemon/worker.js +232 -484
  274. package/dist/daemon/worker.js.map +1 -1
  275. package/dist/help/machineReadableHelp.d.ts +100 -0
  276. package/dist/help/machineReadableHelp.d.ts.map +1 -0
  277. package/dist/help/machineReadableHelp.js +139 -0
  278. package/dist/help/machineReadableHelp.js.map +1 -0
  279. package/dist/index.js +18 -9
  280. package/dist/index.js.map +1 -1
  281. package/dist/ipc/__tests__/client.contract.test.js +2 -2
  282. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  283. package/dist/ipc/client.d.ts +16 -1
  284. package/dist/ipc/client.d.ts.map +1 -1
  285. package/dist/ipc/client.js +40 -11
  286. package/dist/ipc/client.js.map +1 -1
  287. package/dist/ipc/commands.d.ts +20 -0
  288. package/dist/ipc/commands.d.ts.map +1 -1
  289. package/dist/ipc/commands.js +4 -0
  290. package/dist/ipc/commands.js.map +1 -1
  291. package/dist/ipc/types.d.ts +2 -0
  292. package/dist/ipc/types.d.ts.map +1 -1
  293. package/dist/session/BdgSession.d.ts +91 -0
  294. package/dist/session/BdgSession.d.ts.map +1 -0
  295. package/dist/session/BdgSession.js +230 -0
  296. package/dist/session/BdgSession.js.map +1 -0
  297. package/dist/session/cleanup.d.ts.map +1 -1
  298. package/dist/session/cleanup.js +67 -65
  299. package/dist/session/cleanup.js.map +1 -1
  300. package/dist/session/fileOps.d.ts +25 -0
  301. package/dist/session/fileOps.d.ts.map +1 -0
  302. package/dist/session/fileOps.js +39 -0
  303. package/dist/session/fileOps.js.map +1 -0
  304. package/dist/session/metadata.js +2 -2
  305. package/dist/session/metadata.js.map +1 -1
  306. package/dist/session/paths.d.ts +2 -7
  307. package/dist/session/paths.d.ts.map +1 -1
  308. package/dist/session/paths.js +8 -8
  309. package/dist/session/paths.js.map +1 -1
  310. package/dist/session/queryCache.js +1 -1
  311. package/dist/session/queryCache.js.map +1 -1
  312. package/dist/telemetry/__tests__/filters.unit.test.d.ts +2 -0
  313. package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +1 -0
  314. package/dist/telemetry/__tests__/filters.unit.test.js +239 -0
  315. package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -0
  316. package/dist/telemetry/console.d.ts +1 -1
  317. package/dist/telemetry/console.d.ts.map +1 -1
  318. package/dist/telemetry/console.js +5 -3
  319. package/dist/telemetry/console.js.map +1 -1
  320. package/dist/telemetry/dialogs.d.ts +27 -0
  321. package/dist/telemetry/dialogs.d.ts.map +1 -0
  322. package/dist/telemetry/dialogs.js +51 -0
  323. package/dist/telemetry/dialogs.js.map +1 -0
  324. package/dist/telemetry/filters.d.ts +148 -0
  325. package/dist/telemetry/filters.d.ts.map +1 -0
  326. package/dist/telemetry/filters.js +358 -0
  327. package/dist/telemetry/filters.js.map +1 -0
  328. package/dist/telemetry/navigation.d.ts +49 -0
  329. package/dist/telemetry/navigation.d.ts.map +1 -0
  330. package/dist/telemetry/navigation.js +69 -0
  331. package/dist/telemetry/navigation.js.map +1 -0
  332. package/dist/telemetry/network.d.ts +1 -0
  333. package/dist/telemetry/network.d.ts.map +1 -1
  334. package/dist/telemetry/network.js +23 -34
  335. package/dist/telemetry/network.js.map +1 -1
  336. package/dist/types.d.ts +26 -0
  337. package/dist/types.d.ts.map +1 -1
  338. package/dist/ui/errors/CommandError.d.ts +39 -0
  339. package/dist/ui/errors/CommandError.d.ts.map +1 -0
  340. package/dist/ui/errors/CommandError.js +48 -0
  341. package/dist/ui/errors/CommandError.js.map +1 -0
  342. package/dist/ui/errors/SystemErrors.d.ts +22 -0
  343. package/dist/ui/errors/SystemErrors.d.ts.map +1 -0
  344. package/dist/ui/errors/SystemErrors.js +23 -0
  345. package/dist/ui/errors/SystemErrors.js.map +1 -0
  346. package/dist/ui/errors/index.d.ts +9 -0
  347. package/dist/ui/errors/index.d.ts.map +1 -0
  348. package/dist/ui/errors/index.js +12 -0
  349. package/dist/ui/errors/index.js.map +1 -0
  350. package/dist/ui/errors/utils.d.ts +24 -0
  351. package/dist/ui/errors/utils.d.ts.map +1 -0
  352. package/dist/ui/errors/utils.js +28 -0
  353. package/dist/ui/errors/utils.js.map +1 -0
  354. package/dist/ui/errors.d.ts +39 -0
  355. package/dist/ui/errors.d.ts.map +1 -0
  356. package/dist/ui/errors.js +48 -0
  357. package/dist/ui/errors.js.map +1 -0
  358. package/dist/ui/formatters/cookies.d.ts.map +1 -1
  359. package/dist/ui/formatters/cookies.js +18 -21
  360. package/dist/ui/formatters/cookies.js.map +1 -1
  361. package/dist/ui/formatters/details.d.ts.map +1 -1
  362. package/dist/ui/formatters/details.js +34 -36
  363. package/dist/ui/formatters/details.js.map +1 -1
  364. package/dist/ui/formatters/dom.d.ts +135 -0
  365. package/dist/ui/formatters/dom.d.ts.map +1 -0
  366. package/dist/ui/formatters/dom.js +193 -0
  367. package/dist/ui/formatters/dom.js.map +1 -0
  368. package/dist/ui/formatters/index.d.ts +1 -0
  369. package/dist/ui/formatters/index.d.ts.map +1 -1
  370. package/dist/ui/formatters/index.js +1 -0
  371. package/dist/ui/formatters/index.js.map +1 -1
  372. package/dist/ui/formatters/preview.js +43 -38
  373. package/dist/ui/formatters/preview.js.map +1 -1
  374. package/dist/ui/formatters/status.d.ts.map +1 -1
  375. package/dist/ui/formatters/status.js +45 -45
  376. package/dist/ui/formatters/status.js.map +1 -1
  377. package/dist/ui/formatting.d.ts +104 -1
  378. package/dist/ui/formatting.d.ts.map +1 -1
  379. package/dist/ui/formatting.js +138 -2
  380. package/dist/ui/formatting.js.map +1 -1
  381. package/dist/ui/logging/index.d.ts +7 -0
  382. package/dist/ui/logging/index.d.ts.map +1 -0
  383. package/dist/ui/logging/index.js +7 -0
  384. package/dist/ui/logging/index.js.map +1 -0
  385. package/dist/ui/logging/logger.d.ts +98 -0
  386. package/dist/ui/logging/logger.d.ts.map +1 -0
  387. package/dist/ui/logging/logger.js +93 -0
  388. package/dist/ui/logging/logger.js.map +1 -0
  389. package/dist/ui/messages/chrome.d.ts +120 -1
  390. package/dist/ui/messages/chrome.d.ts.map +1 -1
  391. package/dist/ui/messages/chrome.js +168 -0
  392. package/dist/ui/messages/chrome.js.map +1 -1
  393. package/dist/ui/messages/debug.d.ts +4 -2
  394. package/dist/ui/messages/debug.d.ts.map +1 -1
  395. package/dist/ui/messages/debug.js +31 -29
  396. package/dist/ui/messages/debug.js.map +1 -1
  397. package/dist/ui/messages/deprecation.d.ts +30 -0
  398. package/dist/ui/messages/deprecation.d.ts.map +1 -0
  399. package/dist/ui/messages/deprecation.js +49 -0
  400. package/dist/ui/messages/deprecation.js.map +1 -0
  401. package/dist/ui/messages/errors.d.ts +11 -0
  402. package/dist/ui/messages/errors.d.ts.map +1 -1
  403. package/dist/ui/messages/errors.js +13 -0
  404. package/dist/ui/messages/errors.js.map +1 -1
  405. package/dist/ui/messages/preview.d.ts +24 -0
  406. package/dist/ui/messages/preview.d.ts.map +1 -1
  407. package/dist/ui/messages/preview.js +32 -1
  408. package/dist/ui/messages/preview.js.map +1 -1
  409. package/dist/ui/messages/session.d.ts.map +1 -1
  410. package/dist/ui/messages/session.js +21 -7
  411. package/dist/ui/messages/session.js.map +1 -1
  412. package/dist/ui/messages/validation.d.ts +14 -0
  413. package/dist/ui/messages/validation.d.ts.map +1 -1
  414. package/dist/ui/messages/validation.js +16 -0
  415. package/dist/ui/messages/validation.js.map +1 -1
  416. package/dist/utils/__tests__/session.contract.test.js +15 -1
  417. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  418. package/dist/utils/filters.d.ts +40 -0
  419. package/dist/utils/filters.d.ts.map +1 -1
  420. package/dist/utils/filters.js +55 -1
  421. package/dist/utils/filters.js.map +1 -1
  422. package/dist/utils/pageReadiness.d.ts +9 -14
  423. package/dist/utils/pageReadiness.d.ts.map +1 -1
  424. package/dist/utils/pageReadiness.js +40 -41
  425. package/dist/utils/pageReadiness.js.map +1 -1
  426. package/dist/utils/session.d.ts +200 -0
  427. package/dist/utils/session.d.ts.map +1 -0
  428. package/dist/utils/session.js +498 -0
  429. package/dist/utils/session.js.map +1 -0
  430. package/dist/utils/url.d.ts +58 -6
  431. package/dist/utils/url.d.ts.map +1 -1
  432. package/dist/utils/url.js +137 -20
  433. package/dist/utils/url.js.map +1 -1
  434. package/dist/utils/validation.d.ts +12 -0
  435. package/dist/utils/validation.d.ts.map +1 -0
  436. package/dist/utils/validation.js +20 -0
  437. package/dist/utils/validation.js.map +1 -0
  438. package/package.json +3 -5
  439. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +0 -24
  440. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
  441. package/dist/cli/commands/__tests__/cdp.contract.test.js +0 -467
  442. package/dist/cli/commands/__tests__/cdp.contract.test.js.map +0 -1
  443. package/dist/cli/commands/cdp.d.ts +0 -8
  444. package/dist/cli/commands/cdp.d.ts.map +0 -1
  445. package/dist/cli/commands/cdp.js +0 -45
  446. package/dist/cli/commands/cdp.js.map +0 -1
  447. package/dist/cli/commands/console.d.ts +0 -8
  448. package/dist/cli/commands/console.d.ts.map +0 -1
  449. package/dist/cli/commands/console.js +0 -97
  450. package/dist/cli/commands/console.js.map +0 -1
  451. package/dist/cli/commands/dom/helpers/domCache.d.ts +0 -36
  452. package/dist/cli/commands/dom/helpers/domCache.d.ts.map +0 -1
  453. package/dist/cli/commands/dom/helpers/domCache.js +0 -65
  454. package/dist/cli/commands/dom/helpers/domCache.js.map +0 -1
  455. package/dist/cli/commands/dom/helpers/domQuery.d.ts +0 -48
  456. package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +0 -1
  457. package/dist/cli/commands/dom/helpers/domQuery.js +0 -104
  458. package/dist/cli/commands/dom/helpers/domQuery.js.map +0 -1
  459. package/dist/cli/commands/dom/helpers/errorHandler.d.ts +0 -45
  460. package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +0 -1
  461. package/dist/cli/commands/dom/helpers/errorHandler.js +0 -71
  462. package/dist/cli/commands/dom/helpers/errorHandler.js.map +0 -1
  463. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +0 -52
  464. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +0 -1
  465. package/dist/cli/commands/dom/helpers/evalHelpers.js +0 -75
  466. package/dist/cli/commands/dom/helpers/evalHelpers.js.map +0 -1
  467. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +0 -35
  468. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +0 -1
  469. package/dist/cli/commands/dom/helpers/optionsBuilder.js +0 -51
  470. package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +0 -1
  471. package/dist/cli/commands/dom/helpers/selectorParser.d.ts +0 -20
  472. package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +0 -1
  473. package/dist/cli/commands/dom/helpers/selectorParser.js +0 -20
  474. package/dist/cli/commands/dom/helpers/selectorParser.js.map +0 -1
  475. package/dist/cli/commands/dom/index.d.ts +0 -8
  476. package/dist/cli/commands/dom/index.d.ts.map +0 -1
  477. package/dist/cli/commands/dom/index.js +0 -257
  478. package/dist/cli/commands/dom/index.js.map +0 -1
  479. package/dist/cli/commands/dom.d.ts +0 -8
  480. package/dist/cli/commands/dom.d.ts.map +0 -1
  481. package/dist/cli/commands/dom.js +0 -257
  482. package/dist/cli/commands/dom.js.map +0 -1
  483. package/dist/cli/commands/domErrorHandler.d.ts +0 -45
  484. package/dist/cli/commands/domErrorHandler.d.ts.map +0 -1
  485. package/dist/cli/commands/domErrorHandler.js +0 -71
  486. package/dist/cli/commands/domErrorHandler.js.map +0 -1
  487. package/dist/cli/commands/domEvalHelpers.d.ts +0 -52
  488. package/dist/cli/commands/domEvalHelpers.d.ts.map +0 -1
  489. package/dist/cli/commands/domEvalHelpers.js +0 -76
  490. package/dist/cli/commands/domEvalHelpers.js.map +0 -1
  491. package/dist/cli/commands/domOptionsBuilder.d.ts +0 -35
  492. package/dist/cli/commands/domOptionsBuilder.d.ts.map +0 -1
  493. package/dist/cli/commands/domOptionsBuilder.js +0 -51
  494. package/dist/cli/commands/domOptionsBuilder.js.map +0 -1
  495. package/dist/cli/commands/domSelectorParser.d.ts +0 -20
  496. package/dist/cli/commands/domSelectorParser.d.ts.map +0 -1
  497. package/dist/cli/commands/domSelectorParser.js +0 -20
  498. package/dist/cli/commands/domSelectorParser.js.map +0 -1
  499. package/dist/cli/commands/network.d.ts +0 -8
  500. package/dist/cli/commands/network.d.ts.map +0 -1
  501. package/dist/cli/commands/network.js +0 -43
  502. package/dist/cli/commands/network.js.map +0 -1
  503. package/dist/cli/handlers/CommandRunner.d.ts +0 -60
  504. package/dist/cli/handlers/CommandRunner.d.ts.map +0 -1
  505. package/dist/cli/handlers/CommandRunner.js +0 -81
  506. package/dist/cli/handlers/CommandRunner.js.map +0 -1
  507. package/dist/cli/handlers/commonOptions.d.ts +0 -54
  508. package/dist/cli/handlers/commonOptions.d.ts.map +0 -1
  509. package/dist/cli/handlers/commonOptions.js +0 -64
  510. package/dist/cli/handlers/commonOptions.js.map +0 -1
  511. package/dist/cli/handlers/daemonSessionController.d.ts +0 -23
  512. package/dist/cli/handlers/daemonSessionController.d.ts.map +0 -1
  513. package/dist/cli/handlers/daemonSessionController.js +0 -79
  514. package/dist/cli/handlers/daemonSessionController.js.map +0 -1
  515. package/dist/cli/handlers/landingPage.d.ts +0 -8
  516. package/dist/cli/handlers/landingPage.d.ts.map +0 -1
  517. package/dist/cli/handlers/landingPage.js +0 -8
  518. package/dist/cli/handlers/landingPage.js.map +0 -1
  519. package/dist/collectors/__tests__/network.contract.test.d.ts +0 -28
  520. package/dist/collectors/__tests__/network.contract.test.d.ts.map +0 -1
  521. package/dist/collectors/__tests__/network.contract.test.js +0 -540
  522. package/dist/collectors/__tests__/network.contract.test.js.map +0 -1
  523. package/dist/commandRegistry.d.ts +0 -11
  524. package/dist/commandRegistry.d.ts.map +0 -1
  525. package/dist/commandRegistry.js +0 -45
  526. package/dist/commandRegistry.js.map +0 -1
  527. package/dist/commands/domErrorHandler.d.ts +0 -45
  528. package/dist/commands/domErrorHandler.d.ts.map +0 -1
  529. package/dist/commands/domErrorHandler.js +0 -71
  530. package/dist/commands/domErrorHandler.js.map +0 -1
  531. package/dist/dom/cache.d.ts +0 -36
  532. package/dist/dom/cache.d.ts.map +0 -1
  533. package/dist/dom/cache.js +0 -65
  534. package/dist/dom/cache.js.map +0 -1
  535. package/dist/dom/index.d.ts +0 -9
  536. package/dist/dom/index.d.ts.map +0 -1
  537. package/dist/dom/index.js +0 -9
  538. package/dist/dom/index.js.map +0 -1
  539. package/dist/dom/query.d.ts +0 -48
  540. package/dist/dom/query.d.ts.map +0 -1
  541. package/dist/dom/query.js +0 -104
  542. package/dist/dom/query.js.map +0 -1
  543. package/dist/utils/formatters/network.d.ts +0 -23
  544. package/dist/utils/formatters/network.d.ts.map +0 -1
  545. package/dist/utils/formatters/network.js +0 -35
  546. package/dist/utils/formatters/network.js.map +0 -1
  547. package/dist/utils/ui.d.ts +0 -36
  548. package/dist/utils/ui.d.ts.map +0 -1
  549. package/dist/utils/ui.js +0 -47
  550. package/dist/utils/ui.js.map +0 -1
  551. package/dist/utils/url/safeParseUrl.d.ts +0 -63
  552. package/dist/utils/url/safeParseUrl.d.ts.map +0 -1
  553. package/dist/utils/url/safeParseUrl.js +0 -84
  554. package/dist/utils/url/safeParseUrl.js.map +0 -1
@@ -39,7 +39,38 @@ export function verboseCommandsMessage() {
39
39
  lines.push('Commands:');
40
40
  lines.push(' Stop session: bdg stop');
41
41
  lines.push(' Full preview: bdg peek --last 50');
42
- lines.push(' Watch live: bdg peek --follow');
42
+ lines.push(' Watch live: bdg tail');
43
43
  return lines.join('\n');
44
44
  }
45
+ // ============================================================================
46
+ // Follow Mode Messages
47
+ // ============================================================================
48
+ /**
49
+ * Generate message for following preview mode.
50
+ *
51
+ * @returns Formatted message indicating follow mode is active
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * console.error(followingPreviewMessage());
56
+ * // Output: "Following live preview (Ctrl+C to stop)...\n"
57
+ * ```
58
+ */
59
+ export function followingPreviewMessage() {
60
+ return 'Following live preview (Ctrl+C to stop)...\n';
61
+ }
62
+ /**
63
+ * Generate message for stopped following preview.
64
+ *
65
+ * @returns Formatted message indicating follow mode stopped
66
+ *
67
+ * @example
68
+ * ```typescript
69
+ * console.error(stoppedFollowingPreviewMessage());
70
+ * // Output: "\nStopped following preview"
71
+ * ```
72
+ */
73
+ export function stoppedFollowingPreviewMessage() {
74
+ return '\nStopped following preview';
75
+ }
45
76
  //# sourceMappingURL=preview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/messages/preview.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO,EAAE,QAAQ;IACjB,mBAAmB,EAAE,yBAAyB;IAC9C,mBAAmB,EAAE,yBAAyB;CACtC,CAAC;AAEX,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,6BAA6B;CACnC,CAAC;AAEX,+EAA+E;AAC/E,+BAA+B;AAC/B,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,yDAAyD,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACnD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/messages/preview.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO,EAAE,QAAQ;IACjB,mBAAmB,EAAE,yBAAyB;IAC9C,mBAAmB,EAAE,yBAAyB;CACtC,CAAC;AAEX,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,6BAA6B;CACnC,CAAC;AAEX,+EAA+E;AAC/E,+BAA+B;AAC/B,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,yDAAyD,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC1C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,8CAA8C,CAAC;AACxD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,8BAA8B;IAC5C,OAAO,6BAA6B,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CA+B/D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAMD;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAiD/D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAMD;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD"}
@@ -25,22 +25,36 @@ export function landingPage(options) {
25
25
  const { url } = options;
26
26
  const lines = [];
27
27
  lines.push('');
28
- lines.push('▲ Session Started');
28
+ lines.push('◆ Session Started');
29
29
  lines.push('');
30
30
  lines.push(`Target: ${url}`);
31
31
  lines.push('');
32
- lines.push(section('Explore by domain:', [
33
- 'bdg dom DOM inspection & manipulation',
34
- 'bdg network Network requests & cookies',
35
- 'bdg console Console logs & messages',
32
+ lines.push(section('Raw CDP Access (60+ domains, 300+ methods):', [
33
+ 'bdg cdp Runtime.evaluate --params \'{"expression":"document.title","returnByValue":true}\'',
34
+ 'bdg cdp Network.getCookies',
35
+ 'bdg cdp Page.captureScreenshot --params \'{"format":"png"}\'',
36
+ ]));
37
+ lines.push('');
38
+ lines.push(section('Live Monitoring:', [
39
+ 'bdg peek Preview collected data (last 10 items)',
40
+ 'bdg tail Continuous monitoring (live updates)',
41
+ 'bdg details <type> <id> Full request/console details',
42
+ ]));
43
+ lines.push('');
44
+ lines.push(section('Domain Wrappers:', [
45
+ 'bdg dom query <selector> Query DOM elements',
46
+ 'bdg dom eval <js> Execute JavaScript',
36
47
  ]));
37
48
  lines.push('');
38
49
  lines.push(section('Session:', [
39
50
  'bdg status Check session state',
40
- 'bdg stop End session & save',
51
+ 'bdg stop End session & save output',
41
52
  ]));
42
53
  lines.push('');
43
- lines.push(section('Advanced:', ['bdg cdp <method> [params] Direct CDP access (300+ methods)']));
54
+ lines.push(section('Discovery (for AI agents):', [
55
+ 'bdg --help --json Machine-readable schema (commands, options, exit codes)',
56
+ '.claude/skills/bdg/ Claude skill with 15+ recipes & patterns',
57
+ ]));
44
58
  lines.push('');
45
59
  return lines.join('\n');
46
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/ui/messages/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAU7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,OAA2B;IACrD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAExB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACjC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,oBAAoB,EAAE;QAC5B,+CAA+C;QAC/C,4CAA4C;QAC5C,yCAAyC;KAC1C,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,UAAU,EAAE;QAClB,qCAAqC;QACrC,oCAAoC;KACrC,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,WAAW,EAAE,CAAC,+DAA+D,CAAC,CAAC,CACxF,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,OAAO,qCAAqC,UAAU,EAAE,CAAC;AAC3D,CAAC;AAED,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,8BAA8B;IACvC,UAAU,EAAE,yBAAyB;IACrC,MAAM,EAAE,wBAAwB;IAChC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,OAAO,wBAAwB,MAAM,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/ui/messages/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAU7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,WAAW,CAAC,OAA2B;IACrD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAExB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,6CAA6C,EAAE;QACrD,4FAA4F;QAC5F,4BAA4B;QAC5B,8DAA8D;KAC/D,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,kBAAkB,EAAE;QAC1B,wDAAwD;QACxD,sDAAsD;QACtD,yDAAyD;KAC1D,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,kBAAkB,EAAE;QAC1B,+CAA+C;QAC/C,+CAA+C;KAChD,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,UAAU,EAAE;QAClB,qCAAqC;QACrC,2CAA2C;KAC5C,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,OAAO,CAAC,4BAA4B,EAAE;QACpC,oFAAoF;QACpF,qEAAqE;KACtE,CAAC,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB;IAC/C,OAAO,qCAAqC,UAAU,EAAE,CAAC;AAC3D,CAAC;AAED,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,8BAA8B;IACvC,UAAU,EAAE,yBAAyB;IACrC,MAAM,EAAE,wBAAwB;IAChC,kBAAkB,EAAE,oBAAoB;CAChC,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,OAAO,wBAAwB,MAAM,EAAE,CAAC;AAC1C,CAAC"}
@@ -17,4 +17,18 @@
17
17
  * ```
18
18
  */
19
19
  export declare function invalidIntegerError(fieldName: string, value: string): string;
20
+ /**
21
+ * Generate invalid range error message for --last option.
22
+ *
23
+ * @param min - Minimum allowed value
24
+ * @param max - Maximum allowed value
25
+ * @returns Formatted error message
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * throw new Error(invalidLastRangeError(0, 10000));
30
+ * // "--last must be between 0 and 10000"
31
+ * ```
32
+ */
33
+ export declare function invalidLastRangeError(min?: number, max?: number): string;
20
34
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,GAAE,MAAU,EAAE,GAAG,GAAE,MAAc,GAAG,MAAM,CAElF"}
@@ -19,4 +19,20 @@
19
19
  export function invalidIntegerError(fieldName, value) {
20
20
  return `Invalid ${fieldName}: "${value}" is not a valid integer`;
21
21
  }
22
+ /**
23
+ * Generate invalid range error message for --last option.
24
+ *
25
+ * @param min - Minimum allowed value
26
+ * @param max - Maximum allowed value
27
+ * @returns Formatted error message
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * throw new Error(invalidLastRangeError(0, 10000));
32
+ * // "--last must be between 0 and 10000"
33
+ * ```
34
+ */
35
+ export function invalidLastRangeError(min = 0, max = 10000) {
36
+ return `--last must be between ${min} and ${max}`;
37
+ }
22
38
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/ui/messages/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,KAAa;IAClE,OAAO,WAAW,SAAS,MAAM,KAAK,0BAA0B,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/ui/messages/validation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,KAAa;IAClE,OAAO,WAAW,SAAS,MAAM,KAAK,0BAA0B,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAc,CAAC,EAAE,MAAc,KAAK;IACxE,OAAO,0BAA0B,GAAG,QAAQ,GAAG,EAAE,CAAC;AACpD,CAAC"}
@@ -172,6 +172,19 @@ void describe('Session Utilities Contract Tests', () => {
172
172
  assert.equal(fs.existsSync(getSessionFilePath('DAEMON_PID')), false, 'Daemon PID should be removed');
173
173
  assert.equal(fs.existsSync(getSessionFilePath('DAEMON_SOCKET')), false, 'Daemon socket should be removed');
174
174
  });
175
+ void it('should cleanup orphaned worker when daemon is dead', () => {
176
+ const sessionDir = path.join(tmpDir, '.bdg');
177
+ fs.mkdirSync(sessionDir, { recursive: true });
178
+ writePid(88888);
179
+ fs.writeFileSync(getSessionFilePath('DAEMON_PID'), '66666');
180
+ // Only worker PID is alive
181
+ mockProcessAlive([88888]);
182
+ const cleaned = cleanupStaleSession();
183
+ assert.equal(cleaned, true, 'Should clean up when daemon died but worker survived');
184
+ assert.equal(fs.existsSync(getSessionFilePath('PID')), false, 'Worker PID file should be removed');
185
+ assert.equal(fs.existsSync(getSessionFilePath('DAEMON_PID')), false, 'Daemon PID should be removed');
186
+ assert.equal(isProcessAlive(88888), false, 'Orphaned worker process should be killed');
187
+ });
175
188
  void it('should not remove files when session process is alive', () => {
176
189
  // Setup: Create session files with alive process
177
190
  const sessionDir = path.join(tmpDir, '.bdg');
@@ -183,8 +196,9 @@ void describe('Session Utilities Contract Tests', () => {
183
196
  startTime: Date.now(),
184
197
  port: 9222,
185
198
  });
199
+ fs.writeFileSync(getSessionFilePath('DAEMON_PID'), '66666');
186
200
  // Mock process 88888 as alive
187
- mockProcessAlive([88888]);
201
+ mockProcessAlive([88888, 66666]);
188
202
  // Act
189
203
  const cleaned = cleanupStaleSession();
190
204
  // Assert
@@ -1 +1 @@
1
- {"version":3,"file":"session.contract.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/session.contract.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.contract.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/session.contract.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,15 @@
1
1
  /**
2
2
  * Default filters for reducing noise in collected data
3
3
  */
4
+ /**
5
+ * Decision object for whether to fetch a response body.
6
+ */
7
+ export interface BodyFetchDecision {
8
+ /** Whether the body should be fetched */
9
+ should: boolean;
10
+ /** Reason why the body was skipped (if should is false) */
11
+ reason?: string;
12
+ }
4
13
  /**
5
14
  * Domains to exclude by default (common tracking/analytics)
6
15
  * These generate high volume but are rarely useful for debugging
@@ -85,6 +94,37 @@ export declare function shouldFetchBody(url: string, mimeType: string | undefine
85
94
  includePatterns?: string[];
86
95
  excludePatterns?: string[];
87
96
  }): boolean;
97
+ /**
98
+ * Determine if a response body should be fetched with detailed reason.
99
+ *
100
+ * Combines all decision logic: MIME type, size limits, smart defaults, and fetch flags.
101
+ * Returns a decision object with reason string for logging/debugging.
102
+ *
103
+ * @param url - Request URL
104
+ * @param mimeType - Response MIME type
105
+ * @param encodedDataLength - Response size in bytes
106
+ * @param options - Configuration options
107
+ * @returns Decision object with should boolean and optional reason
108
+ *
109
+ * @example
110
+ * ```typescript
111
+ * const decision = shouldFetchBodyWithReason(
112
+ * 'https://api.example.com/data',
113
+ * 'application/json',
114
+ * 1024,
115
+ * { maxBodySize: 5 * 1024 * 1024 }
116
+ * );
117
+ * if (!decision.should) {
118
+ * console.log(`Skipped: ${decision.reason}`);
119
+ * }
120
+ * ```
121
+ */
122
+ export declare function shouldFetchBodyWithReason(url: string, mimeType: string | undefined, encodedDataLength: number, options?: {
123
+ fetchAllBodies?: boolean;
124
+ includePatterns?: string[];
125
+ excludePatterns?: string[];
126
+ maxBodySize?: number;
127
+ }): BodyFetchDecision;
88
128
  /**
89
129
  * Determine if a network request should be excluded based on URL patterns.
90
130
  *
@@ -1 +1 @@
1
- {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../src/utils/filters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;GAGG;AACH,eAAO,MAAM,wBAAwB,UA6CpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,UAAoD,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,iCAAiC,UAS7C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,UAuCtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,UAqBxC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,OAAO,CAOrF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,OAAe,GAC1B,OAAO,CAeT;AAoDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAQrE;AAED;;;;;;;;;;;;GAYG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GACL,OAAO,CA8CT;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IACP,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GACL,OAAO,CAST"}
1
+ {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../src/utils/filters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,UA6CpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,UAAoD,CAAC;AAEhG;;GAEG;AACH,eAAO,MAAM,iCAAiC,UAS7C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,UAuCtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,UAqBxC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe,GAAG,OAAO,CAOrF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,UAAU,GAAE,OAAe,GAC1B,OAAO,CAeT;AAoDD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAQrE;AAED;;;;;;;;;;;;GAYG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GACL,OAAO,CA8CT;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GACL,iBAAiB,CAmCnB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IACP,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GACL,OAAO,CAST"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Default filters for reducing noise in collected data
3
3
  */
4
- import { extractHostname, extractHostnameWithPath } from './url/safeParseUrl.js';
4
+ import { extractHostname, extractHostnameWithPath } from './url.js';
5
5
  /**
6
6
  * Domains to exclude by default (common tracking/analytics)
7
7
  * These generate high volume but are rarely useful for debugging
@@ -276,6 +276,60 @@ export function shouldFetchBody(url, mimeType, options = {}) {
276
276
  // Default: fetch the body unless it matches default skip patterns
277
277
  return !matchesDefaultSkip;
278
278
  }
279
+ /**
280
+ * Determine if a response body should be fetched with detailed reason.
281
+ *
282
+ * Combines all decision logic: MIME type, size limits, smart defaults, and fetch flags.
283
+ * Returns a decision object with reason string for logging/debugging.
284
+ *
285
+ * @param url - Request URL
286
+ * @param mimeType - Response MIME type
287
+ * @param encodedDataLength - Response size in bytes
288
+ * @param options - Configuration options
289
+ * @returns Decision object with should boolean and optional reason
290
+ *
291
+ * @example
292
+ * ```typescript
293
+ * const decision = shouldFetchBodyWithReason(
294
+ * 'https://api.example.com/data',
295
+ * 'application/json',
296
+ * 1024,
297
+ * { maxBodySize: 5 * 1024 * 1024 }
298
+ * );
299
+ * if (!decision.should) {
300
+ * console.log(`Skipped: ${decision.reason}`);
301
+ * }
302
+ * ```
303
+ */
304
+ export function shouldFetchBodyWithReason(url, mimeType, encodedDataLength, options = {}) {
305
+ const { maxBodySize = 5 * 1024 * 1024 } = options;
306
+ // Check if response is text-based
307
+ const isTextResponse = (mimeType?.includes('json') ?? false) ||
308
+ (mimeType?.includes('javascript') ?? false) ||
309
+ (mimeType?.includes('text') ?? false) ||
310
+ (mimeType?.includes('html') ?? false);
311
+ if (!isTextResponse) {
312
+ return { should: false, reason: 'Non-text response type' };
313
+ }
314
+ // Check size limits
315
+ if (encodedDataLength > maxBodySize) {
316
+ const sizeStr = `${(encodedDataLength / 1024 / 1024).toFixed(2)}MB`;
317
+ const limitStr = `${(maxBodySize / 1024 / 1024).toFixed(2)}MB`;
318
+ return {
319
+ should: false,
320
+ reason: `Response too large (${sizeStr} > ${limitStr})`,
321
+ };
322
+ }
323
+ // Use existing shouldFetchBody for pattern matching
324
+ const shouldFetch = shouldFetchBody(url, mimeType, options);
325
+ if (!shouldFetch) {
326
+ return {
327
+ should: false,
328
+ reason: 'Auto-optimization (see DEFAULT_SKIP_BODY_PATTERNS)',
329
+ };
330
+ }
331
+ return { should: true };
332
+ }
279
333
  /**
280
334
  * Determine if a network request should be excluded based on URL patterns.
281
335
  *
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../src/utils/filters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../src/utils/filters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAYpE;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,yBAAyB;IACzB,sBAAsB;IACtB,sBAAsB;IACtB,sBAAsB;IACtB,iBAAiB;IACjB,sBAAsB;IAEtB,iBAAiB;IACjB,YAAY;IACZ,cAAc;IAEd,wBAAwB;IACxB,cAAc;IACd,sBAAsB;IACtB,YAAY;IACZ,cAAc;IACd,aAAa;IACb,cAAc;IAEd,oBAAoB;IACpB,cAAc;IACd,aAAa;IACb,YAAY;IACZ,eAAe;IACf,SAAS;IAET,+BAA+B;IAC/B,eAAe;IACf,YAAY;IACZ,eAAe;IACf,eAAe;IAEf,4BAA4B;IAC5B,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,aAAa;IAEb,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,eAAe;IACf,WAAW;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,YAAY,EAAE,qBAAqB,EAAE,UAAU,CAAC,CAAC;AAEhG;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,oBAAoB;IACpB,OAAO;IACP,OAAO;IACP,6BAA6B;IAC7B,SAAS,EAAE,gBAAgB;IAC3B,eAAe,EAAE,eAAe;IAChC,WAAW,EAAE,eAAe;IAC5B,eAAe,EAAE,eAAe;CACjC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,SAAS;IACT,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;IACP,QAAQ;IAER,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,OAAO;IACP,OAAO;IACP,OAAO;IAEP,cAAc;IACd,OAAO;IAEP,+CAA+C;IAC/C,OAAO;IACP,UAAU;IACV,WAAW;IAEX,SAAS;IACT,OAAO;IACP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,OAAO;IAEP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,OAAO;CACR,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,UAAU;IACV,eAAe;IACf,WAAW;IACX,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,UAAU;IACV,UAAU;IACV,UAAU;IACV,uBAAuB;IACvB,wBAAwB;IACxB,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;CACZ,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,aAAsB,KAAK;IAC1E,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,CAAC,qDAAqD;IACrE,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,IAAY,EACZ,IAAY,EACZ,aAAsB,KAAK;IAE3B,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,KAAK,CAAC,CAAC,qDAAqD;IACrE,CAAC;IAED,kEAAkE;IAClE,IAAI,8BAA8B,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO,iCAAiC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACxD,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAC1C,CAAC;AACJ,CAAC;AAcD;;;;;;;;;;;;;;;GAeG;AACH,SAAS,oBAAoB,CAAC,GAAW,EAAE,MAA0B;IACnE,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,eAAe,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC;IAE3F,wCAAwC;IACxC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAEtD,iEAAiE;IACjE,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAW,EAAE,CACjD,QAAQ,CAAC,IAAI,CACX,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,eAAe,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAC9F,CAAC;IAEJ,uBAAuB;IACvB,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,gBAAgB,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC;IAE/E,0FAA0F;IAC1F,OAAO,YAAY,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,YAAY,IAAI,eAAe,KAAK,SAAS,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,OAAe;IAC1D,2CAA2C;IAC3C,MAAM,YAAY,GAAG,OAAO;SACzB,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,uBAAuB;SAC7D,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB;IAE7C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,YAAY,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,mBAAmB;IACvE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;GAYG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAW,EACX,QAA4B,EAC5B,UAII,EAAE;IAEN,MAAM,EAAE,cAAc,GAAG,KAAK,EAAE,eAAe,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAEvF,0EAA0E;IAC1E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,oBAAoB,CAAC,GAAG,EAAE;YAC/B,eAAe;YACf,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,oBAAoB,CAAC,GAAG,EAAE;YAC/C,eAAe,EAAE,eAAe;YAChC,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;QACH,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,kBAAkB,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,sBAAsB;QACrG,IACE,kBAAkB;YAClB,4BAA4B,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAkB,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,EAC9F,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,GAAG,EAAE;QACnD,eAAe,EAAE,0BAA0B;QAC3C,eAAe,EAAE,SAAS;KAC3B,CAAC,CAAC;IAEH,kEAAkE;IAClE,OAAO,CAAC,kBAAkB,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAW,EACX,QAA4B,EAC5B,iBAAyB,EACzB,UAKI,EAAE;IAEN,MAAM,EAAE,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAElD,kCAAkC;IAClC,MAAM,cAAc,GAClB,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;QACrC,CAAC,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC;QAC3C,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;QACrC,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;IAExC,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;IAC7D,CAAC;IAED,oBAAoB;IACpB,IAAI,iBAAiB,GAAG,WAAW,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACpE,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/D,OAAO;YACL,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,uBAAuB,OAAO,MAAM,QAAQ,GAAG;SACxD,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE5D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;YACL,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,oDAAoD;SAC7D,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAW,EACX,UAGI,EAAE;IAEN,MAAM,EAAE,eAAe,GAAG,EAAE,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAE/D,6EAA6E;IAC7E,OAAO,CAAC,oBAAoB,CAAC,GAAG,EAAE;QAChC,eAAe;QACf,eAAe;QACf,eAAe,EAAE,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC"}
@@ -14,37 +14,32 @@ import type { CDPConnection } from '../connection/cdp.js';
14
14
  export interface PageReadinessOptions {
15
15
  /**
16
16
  * Maximum wait time before proceeding anyway
17
- * Default: 2000ms (2 seconds)
17
+ * Default: 5000ms (5 seconds)
18
18
  */
19
19
  maxWaitMs?: number;
20
- /**
21
- * Wait for network and DOM stability after load event
22
- * Default: false (load event is sufficient for most pages)
23
- * Enable for SPAs with heavy post-load hydration
24
- */
25
- waitForStability?: boolean;
26
20
  }
27
21
  /**
28
22
  * Wait for page to be ready using self-tuning detection
29
23
  *
30
- * Strategy:
31
- * 1. Wait for load event (baseline)
32
- * 2. Wait for network to stabilize (adaptive)
33
- * 3. Wait for DOM to stabilize (adaptive)
24
+ * Strategy (always applied):
25
+ * 1. Wait for load event (baseline readiness)
26
+ * 2. Wait for network to stabilize (adaptive 200ms idle)
27
+ * 3. Wait for DOM to stabilize (adaptive 300ms idle)
34
28
  *
35
29
  * All thresholds adapt to observed page behavior.
36
30
  * No framework detection, no configuration needed.
31
+ * Works for static HTML, SPAs, and everything in between.
37
32
  *
38
33
  * @param cdp - CDP connection
39
34
  * @param options - Optional configuration
40
35
  *
41
36
  * @example
42
37
  * ```typescript
43
- * // Default: Self-tuning for any page
38
+ * // Default: Wait up to 5s for full stability
44
39
  * await waitForPageReady(cdp);
45
40
  *
46
- * // Custom timeout for slow apps
47
- * await waitForPageReady(cdp, { maxWaitMs: 60000 });
41
+ * // Custom timeout for very slow apps
42
+ * await waitForPageReady(cdp, { maxWaitMs: 15000 });
48
43
  * ```
49
44
  */
50
45
  export declare function waitForPageReady(cdp: CDPConnection, options?: PageReadinessOptions): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"pageReadiness.d.ts","sourceRoot":"","sources":["../../src/utils/pageReadiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,aAAa,EAClB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAwBf"}
1
+ {"version":3,"file":"pageReadiness.d.ts","sourceRoot":"","sources":["../../src/utils/pageReadiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,aAAa,EAClB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAuBf"}
@@ -10,40 +10,40 @@
10
10
  /**
11
11
  * Wait for page to be ready using self-tuning detection
12
12
  *
13
- * Strategy:
14
- * 1. Wait for load event (baseline)
15
- * 2. Wait for network to stabilize (adaptive)
16
- * 3. Wait for DOM to stabilize (adaptive)
13
+ * Strategy (always applied):
14
+ * 1. Wait for load event (baseline readiness)
15
+ * 2. Wait for network to stabilize (adaptive 200ms idle)
16
+ * 3. Wait for DOM to stabilize (adaptive 300ms idle)
17
17
  *
18
18
  * All thresholds adapt to observed page behavior.
19
19
  * No framework detection, no configuration needed.
20
+ * Works for static HTML, SPAs, and everything in between.
20
21
  *
21
22
  * @param cdp - CDP connection
22
23
  * @param options - Optional configuration
23
24
  *
24
25
  * @example
25
26
  * ```typescript
26
- * // Default: Self-tuning for any page
27
+ * // Default: Wait up to 5s for full stability
27
28
  * await waitForPageReady(cdp);
28
29
  *
29
- * // Custom timeout for slow apps
30
- * await waitForPageReady(cdp, { maxWaitMs: 60000 });
30
+ * // Custom timeout for very slow apps
31
+ * await waitForPageReady(cdp, { maxWaitMs: 15000 });
31
32
  * ```
32
33
  */
33
34
  export async function waitForPageReady(cdp, options = {}) {
34
- const maxWaitMs = options.maxWaitMs ?? 2000;
35
+ const maxWaitMs = options.maxWaitMs ?? 5000;
35
36
  const deadline = Date.now() + maxWaitMs;
36
37
  try {
37
- // Phase 1: Wait for load event (sufficient for most pages)
38
+ // Phase 1: Wait for load event (baseline)
38
39
  await waitForLoadEvent(cdp, deadline);
39
40
  console.error('[readiness] ✓ Load event');
40
- // Optional: Wait for network/DOM stability (only for SPAs with heavy hydration)
41
- if (options.waitForStability) {
42
- const networkIdleMs = await waitForNetworkStable(cdp, deadline);
43
- console.error(`[readiness] ✓ Network stable (${networkIdleMs}ms idle)`);
44
- const domIdleMs = await waitForDOMStable(cdp, deadline);
45
- console.error(`[readiness] ✓ DOM stable (${domIdleMs}ms idle)`);
46
- }
41
+ // Phase 2: Wait for network stability (always - modern web is async)
42
+ const networkIdleMs = await waitForNetworkStable(cdp, deadline);
43
+ console.error(`[readiness] ✓ Network stable (${networkIdleMs}ms idle)`);
44
+ // Phase 3: Wait for DOM stability (always - SPAs mutate after load)
45
+ const domIdleMs = await waitForDOMStable(cdp, deadline);
46
+ console.error(`[readiness] ✓ DOM stable (${domIdleMs}ms idle)`);
47
47
  console.error('[readiness] ✓ Page ready');
48
48
  }
49
49
  catch (error) {
@@ -111,23 +111,21 @@ async function waitForLoadEvent(cdp, deadline) {
111
111
  });
112
112
  }
113
113
  /**
114
- * Wait for network to stabilize using adaptive thresholds
114
+ * Wait for network to stabilize
115
115
  *
116
- * LEARNING PHASE (first 2s):
117
- * - Track request intervals
118
- * - Calculate average request frequency
116
+ * Uses a fixed 200ms idle threshold which works well for most pages:
117
+ * - Fast enough for quick sites (avoids unnecessary waiting)
118
+ * - Patient enough for API-heavy apps (catches late requests)
119
+ * - Simpler and more predictable than adaptive learning
119
120
  *
120
- * DETECTION PHASE:
121
- * - Fast pattern (avg \< 100ms): 200ms idle = stable
122
- * - Steady pattern (100-500ms): 500ms idle = stable
123
- * - Slow pattern (\> 500ms): 1000ms idle = stable
121
+ * Network is considered stable when there are zero active requests
122
+ * for at least 200ms continuously.
124
123
  *
125
124
  * Why this works:
126
- * - Fast sites: Quick bursts, fast stabilization
127
- * - SSR apps: Steady hydration requests, medium wait
128
- * - API-heavy: Slow requests, longer patience
129
- *
130
- * Framework-agnostic - adapts to actual behavior.
125
+ * - Catches initial request bursts (CSS, JS, images)
126
+ * - Waits for lazy-loaded resources
127
+ * - Detects API calls triggered by hydration
128
+ * - Framework-agnostic - based on actual network activity
131
129
  *
132
130
  * @param cdp - CDP connection
133
131
  * @param deadline - Timestamp when to timeout
@@ -182,23 +180,24 @@ async function waitForNetworkStable(cdp, deadline) {
182
180
  }
183
181
  }
184
182
  /**
185
- * Wait for DOM to stabilize using adaptive thresholds
183
+ * Wait for DOM to stabilize
184
+ *
185
+ * Uses a MutationObserver to detect when the DOM stops changing.
186
+ * DOM is considered stable when there are no mutations for 300ms continuously.
186
187
  *
187
188
  * HOW IT WORKS:
188
- * 1. Inject MutationObserver into page
189
- * 2. Track mutation rate for 1 second
190
- * 3. Calculate adaptive stability threshold:
191
- * - High rate (\>50 mutations/sec): 1000ms no-change = stable
192
- * - Medium rate (10-50 mutations/sec): 500ms no-change = stable
193
- * - Low rate (\<10 mutations/sec): 300ms no-change = stable
194
- * 4. Wait for DOM to remain unchanged for threshold duration
189
+ * 1. Inject MutationObserver into page to track all DOM changes
190
+ * 2. Monitor childList, attributes, subtree, and characterData changes
191
+ * 3. Wait for 300ms of continuous no-change activity
192
+ * 4. Clean up observer when complete
195
193
  *
196
194
  * Why this works:
197
- * - SSR hydration causes DOM mutations
198
- * - React/Vue/Svelte all mutate during hydration
199
- * - When mutations stop, hydration is complete
195
+ * - SSR hydration causes DOM mutations (React, Vue, Svelte)
196
+ * - Client-side rendering creates DOM elements
197
+ * - When mutations stop, framework initialization is complete
198
+ * - 300ms is long enough to catch batched updates, short enough to be responsive
200
199
  *
201
- * Framework-agnostic - detects actual mutations.
200
+ * Framework-agnostic - detects actual mutations regardless of framework.
202
201
  *
203
202
  * @param cdp - CDP connection
204
203
  * @param deadline - Timestamp when to timeout
@@ -1 +1 @@
1
- {"version":3,"file":"pageReadiness.js","sourceRoot":"","sources":["../../src/utils/pageReadiness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pageReadiness.js","sourceRoot":"","sources":["../../src/utils/pageReadiness.ts"],"names":[],"mappings":"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"}