@empiricalrun/test-gen 0.77.0 → 0.78.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 (402) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/actions/index.d.ts +0 -1
  3. package/dist/actions/index.d.ts.map +1 -1
  4. package/dist/actions/index.js +0 -10
  5. package/dist/agent/base/index.d.ts +28 -19
  6. package/dist/agent/base/index.d.ts.map +1 -1
  7. package/dist/agent/base/index.js +30 -17
  8. package/dist/agent/browsing/run.d.ts +1 -1
  9. package/dist/agent/browsing/run.d.ts.map +1 -1
  10. package/dist/agent/chat/agent-loop.d.ts +5 -5
  11. package/dist/agent/chat/agent-loop.d.ts.map +1 -1
  12. package/dist/agent/chat/exports.d.ts +3 -3
  13. package/dist/agent/chat/exports.d.ts.map +1 -1
  14. package/dist/agent/chat/exports.js +5 -11
  15. package/dist/agent/chat/index.d.ts +4 -3
  16. package/dist/agent/chat/index.d.ts.map +1 -1
  17. package/dist/agent/chat/index.js +10 -5
  18. package/dist/agent/chat/models.d.ts +1 -1
  19. package/dist/agent/chat/models.d.ts.map +1 -1
  20. package/dist/agent/chat/models.js +3 -3
  21. package/dist/agent/chat/prompt/pw-utils-docs.d.ts +1 -1
  22. package/dist/agent/chat/prompt/pw-utils-docs.d.ts.map +1 -1
  23. package/dist/agent/chat/prompt/pw-utils-docs.js +42 -0
  24. package/dist/agent/chat/prompt/repo.d.ts +2 -2
  25. package/dist/agent/chat/prompt/repo.d.ts.map +1 -1
  26. package/dist/agent/chat/prompt/repo.js +2 -2
  27. package/dist/agent/chat/state.d.ts +13 -25
  28. package/dist/agent/chat/state.d.ts.map +1 -1
  29. package/dist/agent/chat/state.js +10 -60
  30. package/dist/agent/chat/utils.d.ts +5 -5
  31. package/dist/agent/chat/utils.d.ts.map +1 -1
  32. package/dist/agent/cli.d.ts +2 -2
  33. package/dist/agent/cli.d.ts.map +1 -1
  34. package/dist/agent/cli.js +17 -31
  35. package/dist/agent/code-review/index.d.ts +5 -4
  36. package/dist/agent/code-review/index.d.ts.map +1 -1
  37. package/dist/agent/code-review/index.js +13 -4
  38. package/dist/agent/code-review/types.d.ts +2 -35
  39. package/dist/agent/code-review/types.d.ts.map +1 -1
  40. package/dist/agent/code-review/types.js +4 -11
  41. package/dist/agent/cua/index.d.ts +1 -1
  42. package/dist/agent/cua/index.d.ts.map +1 -1
  43. package/dist/agent/cua/index.js +13 -5
  44. package/dist/agent/cua/pw-codegen/pw-pause/for-recorder.d.ts.map +1 -1
  45. package/dist/agent/cua/pw-codegen/pw-pause/for-recorder.js +0 -3
  46. package/dist/agent/cua/pw-codegen/pw-pause/index.js +1 -1
  47. package/dist/agent/index.d.ts +1 -5
  48. package/dist/agent/index.d.ts.map +1 -1
  49. package/dist/agent/index.js +1 -11
  50. package/dist/agent/master/element-annotation.d.ts +1 -1
  51. package/dist/agent/master/element-annotation.d.ts.map +1 -1
  52. package/dist/agent/master/next-action.d.ts +1 -1
  53. package/dist/agent/master/next-action.d.ts.map +1 -1
  54. package/dist/agent/master/next-action.js +1 -6
  55. package/dist/agent/master/run.d.ts +3 -2
  56. package/dist/agent/master/run.d.ts.map +1 -1
  57. package/dist/agent/master/run.js +0 -26
  58. package/dist/agent/triage/index.d.ts +4 -3
  59. package/dist/agent/triage/index.d.ts.map +1 -1
  60. package/dist/agent/triage/index.js +35 -29
  61. package/dist/artifacts/index.d.ts +1 -1
  62. package/dist/artifacts/index.d.ts.map +1 -1
  63. package/dist/artifacts/utils.d.ts +1 -1
  64. package/dist/artifacts/utils.d.ts.map +1 -1
  65. package/dist/bin/environments.d.ts +1 -1
  66. package/dist/bin/environments.d.ts.map +1 -1
  67. package/dist/bin/index.js +2 -57
  68. package/dist/bin/setup.d.ts +1 -1
  69. package/dist/bin/setup.d.ts.map +1 -1
  70. package/dist/bin/utils/fs/index.d.ts +1 -1
  71. package/dist/bin/utils/fs/index.d.ts.map +1 -1
  72. package/dist/bin/utils/platform/web/index.d.ts +2 -2
  73. package/dist/bin/utils/platform/web/index.d.ts.map +1 -1
  74. package/dist/bin/utils/platform/web/index.js +1 -1
  75. package/dist/bin/utils/scenarios/index.d.ts +1 -1
  76. package/dist/bin/utils/scenarios/index.d.ts.map +1 -1
  77. package/dist/constants/index.d.ts +0 -4
  78. package/dist/constants/index.d.ts.map +1 -1
  79. package/dist/constants/index.js +0 -6
  80. package/dist/dashboard/client.d.ts +1 -1
  81. package/dist/dashboard/client.d.ts.map +1 -1
  82. package/dist/dashboard/index.d.ts +1 -0
  83. package/dist/dashboard/index.d.ts.map +1 -1
  84. package/dist/dashboard/index.js +4 -1
  85. package/dist/dashboard/tool-response.d.ts +5 -0
  86. package/dist/dashboard/tool-response.d.ts.map +1 -0
  87. package/dist/dashboard/tool-response.js +88 -0
  88. package/dist/dashboard/totp.js +1 -1
  89. package/dist/file/server.d.ts +1 -1
  90. package/dist/file/server.d.ts.map +1 -1
  91. package/dist/file/server.js +2 -1
  92. package/dist/file-info/adapters/file-system/index.d.ts +1 -1
  93. package/dist/file-info/adapters/file-system/index.d.ts.map +1 -1
  94. package/dist/file-info/adapters/file-system/reader.d.ts +1 -1
  95. package/dist/file-info/adapters/file-system/reader.d.ts.map +1 -1
  96. package/dist/file-info/adapters/github/index.d.ts +2 -1
  97. package/dist/file-info/adapters/github/index.d.ts.map +1 -1
  98. package/dist/file-info/adapters/github/reader.d.ts +2 -1
  99. package/dist/file-info/adapters/github/reader.d.ts.map +1 -1
  100. package/dist/recorder/index.d.ts.map +1 -1
  101. package/dist/recorder/index.js +2 -1
  102. package/dist/recorder/upload.d.ts +1 -1
  103. package/dist/recorder/upload.d.ts.map +1 -1
  104. package/dist/tools/analyse-video/index.d.ts +1 -1
  105. package/dist/tools/analyse-video/index.d.ts.map +1 -1
  106. package/dist/tools/analyse-video/index.js +28 -15
  107. package/dist/tools/create-pull-request/index.d.ts +1 -1
  108. package/dist/tools/create-pull-request/index.d.ts.map +1 -1
  109. package/dist/tools/create-pull-request/utils.d.ts +2 -1
  110. package/dist/tools/create-pull-request/utils.d.ts.map +1 -1
  111. package/dist/tools/definitions/analyse-video.d.ts +9 -19
  112. package/dist/tools/definitions/analyse-video.d.ts.map +1 -1
  113. package/dist/tools/definitions/analyse-video.js +13 -26
  114. package/dist/tools/definitions/delete-file.d.ts +9 -1
  115. package/dist/tools/definitions/delete-file.d.ts.map +1 -1
  116. package/dist/tools/definitions/delete-file.js +3 -3
  117. package/dist/tools/definitions/download-build.d.ts +1 -1
  118. package/dist/tools/definitions/download-build.d.ts.map +1 -1
  119. package/dist/tools/definitions/grep.d.ts +1 -1
  120. package/dist/tools/definitions/grep.d.ts.map +1 -1
  121. package/dist/tools/definitions/list-tests-and-projects.d.ts +1 -1
  122. package/dist/tools/definitions/list-tests-and-projects.d.ts.map +1 -1
  123. package/dist/tools/definitions/list-tests-and-projects.js +1 -1
  124. package/dist/tools/definitions/merge-conflicts.d.ts +1 -1
  125. package/dist/tools/definitions/merge-conflicts.d.ts.map +1 -1
  126. package/dist/tools/definitions/merge-conflicts.js +2 -2
  127. package/dist/tools/definitions/rename-file.d.ts +1 -1
  128. package/dist/tools/definitions/rename-file.d.ts.map +1 -1
  129. package/dist/tools/definitions/review-pull-request.d.ts +1 -1
  130. package/dist/tools/definitions/review-pull-request.d.ts.map +1 -1
  131. package/dist/tools/definitions/review-pull-request.js +1 -1
  132. package/dist/tools/definitions/run-test.d.ts +1 -1
  133. package/dist/tools/definitions/run-test.d.ts.map +1 -1
  134. package/dist/tools/definitions/str_replace_editor.d.ts +1 -1
  135. package/dist/tools/definitions/str_replace_editor.d.ts.map +1 -1
  136. package/dist/tools/definitions/test-gen-browser.d.ts +1 -1
  137. package/dist/tools/definitions/test-gen-browser.d.ts.map +1 -1
  138. package/dist/tools/definitions/upgrade-packages.d.ts +1 -1
  139. package/dist/tools/definitions/upgrade-packages.d.ts.map +1 -1
  140. package/dist/tools/definitions/utils.js +1 -1
  141. package/dist/tools/delete-file/index.d.ts +1 -1
  142. package/dist/tools/delete-file/index.d.ts.map +1 -1
  143. package/dist/tools/delete-file/index.js +6 -2
  144. package/dist/tools/diagnosis-fetcher.d.ts +1 -1
  145. package/dist/tools/diagnosis-fetcher.d.ts.map +1 -1
  146. package/dist/tools/diagnosis-fetcher.js +92 -47
  147. package/dist/tools/download-build/index.d.ts +1 -1
  148. package/dist/tools/download-build/index.d.ts.map +1 -1
  149. package/dist/tools/executor/base.d.ts +4 -3
  150. package/dist/tools/executor/base.d.ts.map +1 -1
  151. package/dist/tools/executor/base.js +16 -2
  152. package/dist/tools/executor/index.d.ts +3 -0
  153. package/dist/tools/executor/index.d.ts.map +1 -1
  154. package/dist/tools/executor/index.js +10 -10
  155. package/dist/tools/executor/utils/checkpoint.d.ts.map +1 -1
  156. package/dist/tools/executor/utils/checkpoint.js +0 -4
  157. package/dist/tools/executor/utils/git.d.ts +7 -1
  158. package/dist/tools/executor/utils/git.d.ts.map +1 -1
  159. package/dist/tools/executor/utils/git.js +10 -3
  160. package/dist/tools/executor/utils/index.d.ts +4 -3
  161. package/dist/tools/executor/utils/index.d.ts.map +1 -1
  162. package/dist/tools/executor/utils/index.js +2 -1
  163. package/dist/tools/executor/utils/pr-description.d.ts +1 -1
  164. package/dist/tools/executor/utils/pr-description.d.ts.map +1 -1
  165. package/dist/tools/fetch-file/index.d.ts +1 -1
  166. package/dist/tools/fetch-file/index.d.ts.map +1 -1
  167. package/dist/tools/fetch-file/index.js +53 -13
  168. package/dist/tools/fetch-file/utils.d.ts +3 -0
  169. package/dist/tools/fetch-file/utils.d.ts.map +1 -0
  170. package/dist/tools/fetch-file/utils.js +136 -0
  171. package/dist/tools/fetch-session-diff/index.d.ts +1 -1
  172. package/dist/tools/fetch-session-diff/index.d.ts.map +1 -1
  173. package/dist/tools/fetch-session-diff/index.js +26 -2
  174. package/dist/tools/file-operations/create.d.ts +1 -1
  175. package/dist/tools/file-operations/create.d.ts.map +1 -1
  176. package/dist/tools/file-operations/index.d.ts +2 -1
  177. package/dist/tools/file-operations/index.d.ts.map +1 -1
  178. package/dist/tools/file-operations/insert.d.ts +1 -1
  179. package/dist/tools/file-operations/insert.d.ts.map +1 -1
  180. package/dist/tools/file-operations/replace.d.ts +1 -1
  181. package/dist/tools/file-operations/replace.d.ts.map +1 -1
  182. package/dist/tools/file-operations/replace.js +20 -22
  183. package/dist/tools/file-operations/shared/helpers.d.ts +3 -5
  184. package/dist/tools/file-operations/shared/helpers.d.ts.map +1 -1
  185. package/dist/tools/file-operations/shared/helpers.js +1 -5
  186. package/dist/tools/file-operations/view/index.d.ts +2 -1
  187. package/dist/tools/file-operations/view/index.d.ts.map +1 -1
  188. package/dist/tools/grep/index.d.ts +1 -1
  189. package/dist/tools/grep/index.d.ts.map +1 -1
  190. package/dist/tools/grep/index.js +15 -12
  191. package/dist/tools/index.d.ts +3 -24
  192. package/dist/tools/index.d.ts.map +1 -1
  193. package/dist/tools/index.js +13 -42
  194. package/dist/tools/issues-v1/create-issue.d.ts +3 -0
  195. package/dist/tools/issues-v1/create-issue.d.ts.map +1 -0
  196. package/dist/tools/{issues → issues-v1}/create-issue.js +5 -9
  197. package/dist/tools/issues-v1/index.d.ts.map +1 -0
  198. package/dist/tools/issues-v1/list-issues.d.ts +3 -0
  199. package/dist/tools/issues-v1/list-issues.d.ts.map +1 -0
  200. package/dist/tools/issues-v1/update-issue.d.ts +3 -0
  201. package/dist/tools/issues-v1/update-issue.d.ts.map +1 -0
  202. package/dist/tools/{issues → issues-v1}/update-issue.js +1 -9
  203. package/dist/tools/{issues → issues-v1}/utils.d.ts +2 -1
  204. package/dist/tools/issues-v1/utils.d.ts.map +1 -0
  205. package/dist/tools/issues-v2/create-issue.d.ts +3 -0
  206. package/dist/tools/issues-v2/create-issue.d.ts.map +1 -0
  207. package/dist/tools/issues-v2/create-issue.js +86 -0
  208. package/dist/tools/issues-v2/update-issue.d.ts +3 -0
  209. package/dist/tools/issues-v2/update-issue.d.ts.map +1 -0
  210. package/dist/tools/issues-v2/update-issue.js +87 -0
  211. package/dist/tools/list-environments.d.ts +1 -1
  212. package/dist/tools/list-environments.d.ts.map +1 -1
  213. package/dist/tools/list-tests-and-projects/index.d.ts +1 -1
  214. package/dist/tools/list-tests-and-projects/index.d.ts.map +1 -1
  215. package/dist/tools/list-tests-and-projects/index.js +14 -4
  216. package/dist/tools/merge-conflicts/index.d.ts +1 -1
  217. package/dist/tools/merge-conflicts/index.d.ts.map +1 -1
  218. package/dist/tools/merge-conflicts/index.js +23 -10
  219. package/dist/tools/rename-file/index.d.ts +1 -1
  220. package/dist/tools/rename-file/index.d.ts.map +1 -1
  221. package/dist/tools/rename-file/index.js +0 -1
  222. package/dist/tools/review-pull-request/index.d.ts +1 -1
  223. package/dist/tools/review-pull-request/index.d.ts.map +1 -1
  224. package/dist/tools/review-pull-request/index.js +9 -15
  225. package/dist/tools/run-test.d.ts +1 -1
  226. package/dist/tools/run-test.d.ts.map +1 -1
  227. package/dist/tools/test-gen-browser.d.ts +1 -1
  228. package/dist/tools/test-gen-browser.d.ts.map +1 -1
  229. package/dist/tools/test-gen-browser.js +55 -19
  230. package/dist/tools/test-run-fetcher/index.d.ts +2 -2
  231. package/dist/tools/test-run-fetcher/index.d.ts.map +1 -1
  232. package/dist/tools/test-run-fetcher/index.js +67 -66
  233. package/dist/tools/trace-dot-zip/index.d.ts +1 -1
  234. package/dist/tools/trace-dot-zip/index.d.ts.map +1 -1
  235. package/dist/tools/trace-dot-zip/utils/network-trace.d.ts.map +1 -1
  236. package/dist/tools/trace-dot-zip/utils/network-trace.js +5 -10
  237. package/dist/tools/triage-summary/index.d.ts +1 -1
  238. package/dist/tools/triage-summary/index.d.ts.map +1 -1
  239. package/dist/tools/triage-summary/index.js +5 -2
  240. package/dist/tools/triage-summary/utils.d.ts +1 -1
  241. package/dist/tools/triage-summary/utils.d.ts.map +1 -1
  242. package/dist/tools/upgrade-packages/index.d.ts +1 -1
  243. package/dist/tools/upgrade-packages/index.d.ts.map +1 -1
  244. package/dist/tools/upgrade-packages/index.js +18 -8
  245. package/dist/tools/upgrade-packages/utils.d.ts +10 -5
  246. package/dist/tools/upgrade-packages/utils.d.ts.map +1 -1
  247. package/dist/tools/upgrade-packages/utils.js +57 -16
  248. package/dist/tools/utils/queue.d.ts +1 -1
  249. package/dist/tools/utils/queue.d.ts.map +1 -1
  250. package/dist/tools/utils/validate-schema.d.ts +3 -0
  251. package/dist/tools/utils/validate-schema.d.ts.map +1 -0
  252. package/dist/tools/utils/validate-schema.js +22 -0
  253. package/dist/trace-utils/index.d.ts +1 -1
  254. package/dist/trace-utils/index.d.ts.map +1 -1
  255. package/dist/trace-utils/index.js +1 -1
  256. package/dist/utils/SQSClient.d.ts +1 -1
  257. package/dist/utils/SQSClient.d.ts.map +1 -1
  258. package/dist/utils/dedup/dedup-image.d.ts +22 -0
  259. package/dist/utils/dedup/dedup-image.d.ts.map +1 -0
  260. package/dist/utils/dedup/dedup-image.js +26 -0
  261. package/dist/utils/dedup/find-threshold.d.ts +2 -0
  262. package/dist/utils/dedup/find-threshold.d.ts.map +1 -0
  263. package/dist/utils/{find-threshold.js → dedup/find-threshold.js} +2 -15
  264. package/dist/utils/model.d.ts +1 -1
  265. package/dist/utils/model.d.ts.map +1 -1
  266. package/dist/utils/model.js +4 -3
  267. package/dist/utils/playwright-report-parser.d.ts +1 -1
  268. package/dist/utils/playwright-report-parser.d.ts.map +1 -1
  269. package/dist/utils/playwright-test-id.d.ts +8 -0
  270. package/dist/utils/playwright-test-id.d.ts.map +1 -0
  271. package/dist/utils/playwright-test-id.js +21 -0
  272. package/dist/utils/repo-tree.d.ts +1 -1
  273. package/dist/utils/repo-tree.d.ts.map +1 -1
  274. package/dist/utils/slug.d.ts.map +1 -1
  275. package/dist/utils/slug.js +15 -4
  276. package/dist/utils/url-validation.d.ts +2 -0
  277. package/dist/utils/url-validation.d.ts.map +1 -0
  278. package/dist/utils/url-validation.js +16 -0
  279. package/dist/video-core/index.d.ts +14 -36
  280. package/dist/video-core/index.d.ts.map +1 -1
  281. package/dist/video-core/index.js +118 -181
  282. package/dist/video-core/model-limits.d.ts +2 -2
  283. package/dist/video-core/model-limits.d.ts.map +1 -1
  284. package/dist/video-core/model-limits.js +16 -20
  285. package/dist/video-core/storage-manager.d.ts +2 -1
  286. package/dist/video-core/storage-manager.d.ts.map +1 -1
  287. package/dist/video-core/storage-manager.js +13 -6
  288. package/dist/video-core/types.d.ts +1 -1
  289. package/dist/video-core/types.d.ts.map +1 -1
  290. package/dist/video-core/utils.d.ts +5 -17
  291. package/dist/video-core/utils.d.ts.map +1 -1
  292. package/dist/video-core/utils.js +39 -149
  293. package/package.json +10 -5
  294. package/tsconfig.tsbuildinfo +1 -1
  295. package/dist/actions/skill.d.ts +0 -21
  296. package/dist/actions/skill.d.ts.map +0 -1
  297. package/dist/actions/skill.js +0 -127
  298. package/dist/agent/chat/filesystem-cache.d.ts +0 -12
  299. package/dist/agent/chat/filesystem-cache.d.ts.map +0 -1
  300. package/dist/agent/chat/filesystem-cache.js +0 -101
  301. package/dist/agent/codegen/create-test-block.d.ts +0 -8
  302. package/dist/agent/codegen/create-test-block.d.ts.map +0 -1
  303. package/dist/agent/codegen/create-test-block.js +0 -47
  304. package/dist/agent/codegen/fix-ts-errors.d.ts +0 -12
  305. package/dist/agent/codegen/fix-ts-errors.d.ts.map +0 -1
  306. package/dist/agent/codegen/fix-ts-errors.js +0 -78
  307. package/dist/agent/codegen/lexical-scoped-vars.d.ts +0 -9
  308. package/dist/agent/codegen/lexical-scoped-vars.d.ts.map +0 -1
  309. package/dist/agent/codegen/lexical-scoped-vars.js +0 -55
  310. package/dist/agent/codegen/skills-retriever.d.ts +0 -26
  311. package/dist/agent/codegen/skills-retriever.d.ts.map +0 -1
  312. package/dist/agent/codegen/skills-retriever.js +0 -93
  313. package/dist/agent/codegen/test-update-feedback.d.ts +0 -12
  314. package/dist/agent/codegen/test-update-feedback.d.ts.map +0 -1
  315. package/dist/agent/codegen/test-update-feedback.js +0 -49
  316. package/dist/agent/codegen/types.d.ts +0 -25
  317. package/dist/agent/codegen/types.d.ts.map +0 -1
  318. package/dist/agent/codegen/types.js +0 -8
  319. package/dist/agent/codegen/update-flow.d.ts +0 -36
  320. package/dist/agent/codegen/update-flow.d.ts.map +0 -1
  321. package/dist/agent/codegen/update-flow.js +0 -259
  322. package/dist/agent/codegen/use-skill.d.ts +0 -11
  323. package/dist/agent/codegen/use-skill.d.ts.map +0 -1
  324. package/dist/agent/codegen/use-skill.js +0 -53
  325. package/dist/agent/codegen/utils.d.ts +0 -110
  326. package/dist/agent/codegen/utils.d.ts.map +0 -1
  327. package/dist/agent/codegen/utils.js +0 -376
  328. package/dist/agent/master/browser-tests/skills.spec.d.ts +0 -2
  329. package/dist/agent/master/browser-tests/skills.spec.d.ts.map +0 -1
  330. package/dist/agent/master/browser-tests/skills.spec.js +0 -112
  331. package/dist/agent/master/execute-skill-action.d.ts +0 -11
  332. package/dist/agent/master/execute-skill-action.d.ts.map +0 -1
  333. package/dist/agent/master/execute-skill-action.js +0 -23
  334. package/dist/agent/video-analysis/executor/index.d.ts +0 -5
  335. package/dist/agent/video-analysis/executor/index.d.ts.map +0 -1
  336. package/dist/agent/video-analysis/executor/index.js +0 -10
  337. package/dist/agent/video-analysis/index.d.ts +0 -7
  338. package/dist/agent/video-analysis/index.d.ts.map +0 -1
  339. package/dist/agent/video-analysis/index.js +0 -60
  340. package/dist/evals/append-create-test-agent.evals.d.ts +0 -4
  341. package/dist/evals/append-create-test-agent.evals.d.ts.map +0 -1
  342. package/dist/evals/append-create-test-agent.evals.js +0 -117
  343. package/dist/evals/fetch-pom-skills-agent.evals.d.ts +0 -4
  344. package/dist/evals/fetch-pom-skills-agent.evals.d.ts.map +0 -1
  345. package/dist/evals/fetch-pom-skills-agent.evals.js +0 -36
  346. package/dist/evals/master-agent.evals.d.ts +0 -4
  347. package/dist/evals/master-agent.evals.d.ts.map +0 -1
  348. package/dist/evals/master-agent.evals.js +0 -35
  349. package/dist/evals/type.d.ts +0 -12
  350. package/dist/evals/type.d.ts.map +0 -1
  351. package/dist/evals/type.js +0 -2
  352. package/dist/evals/update-scenario-agent.evals.d.ts +0 -4
  353. package/dist/evals/update-scenario-agent.evals.d.ts.map +0 -1
  354. package/dist/evals/update-scenario-agent.evals.js +0 -47
  355. package/dist/tools/fetch-last-successful-test-run/index.d.ts +0 -3
  356. package/dist/tools/fetch-last-successful-test-run/index.d.ts.map +0 -1
  357. package/dist/tools/fetch-last-successful-test-run/index.js +0 -60
  358. package/dist/tools/issues/create-issue.d.ts +0 -3
  359. package/dist/tools/issues/create-issue.d.ts.map +0 -1
  360. package/dist/tools/issues/index.d.ts.map +0 -1
  361. package/dist/tools/issues/list-issues.d.ts +0 -3
  362. package/dist/tools/issues/list-issues.d.ts.map +0 -1
  363. package/dist/tools/issues/metadata-schema.d.ts +0 -24
  364. package/dist/tools/issues/metadata-schema.d.ts.map +0 -1
  365. package/dist/tools/issues/metadata-schema.js +0 -22
  366. package/dist/tools/issues/update-issue.d.ts +0 -3
  367. package/dist/tools/issues/update-issue.d.ts.map +0 -1
  368. package/dist/tools/issues/utils.d.ts.map +0 -1
  369. package/dist/tools/utils/urls.d.ts +0 -5
  370. package/dist/tools/utils/urls.d.ts.map +0 -1
  371. package/dist/tools/utils/urls.js +0 -19
  372. package/dist/tools/view-failed-test-run-report/index.d.ts +0 -12
  373. package/dist/tools/view-failed-test-run-report/index.d.ts.map +0 -1
  374. package/dist/tools/view-failed-test-run-report/index.js +0 -151
  375. package/dist/utils/artifact-paths.d.ts +0 -20
  376. package/dist/utils/artifact-paths.d.ts.map +0 -1
  377. package/dist/utils/artifact-paths.js +0 -16
  378. package/dist/utils/dedup-image-fs.d.ts +0 -13
  379. package/dist/utils/dedup-image-fs.d.ts.map +0 -1
  380. package/dist/utils/dedup-image-fs.js +0 -84
  381. package/dist/utils/dedup-image.d.ts +0 -12
  382. package/dist/utils/dedup-image.d.ts.map +0 -1
  383. package/dist/utils/dedup-image.js +0 -25
  384. package/dist/utils/ffmpeg/index.d.ts +0 -26
  385. package/dist/utils/ffmpeg/index.d.ts.map +0 -1
  386. package/dist/utils/ffmpeg/index.js +0 -415
  387. package/dist/utils/find-threshold.d.ts +0 -8
  388. package/dist/utils/find-threshold.d.ts.map +0 -1
  389. package/dist/video-core/agent-orchestrator.d.ts +0 -14
  390. package/dist/video-core/agent-orchestrator.d.ts.map +0 -1
  391. package/dist/video-core/agent-orchestrator.js +0 -78
  392. package/dist/video-core/analysis-server.d.ts +0 -24
  393. package/dist/video-core/analysis-server.d.ts.map +0 -1
  394. package/dist/video-core/analysis-server.js +0 -398
  395. package/dist/video-core/analysis-viewer.html +0 -1374
  396. package/dist/video-core/xml-parser.d.ts +0 -3
  397. package/dist/video-core/xml-parser.d.ts.map +0 -1
  398. package/dist/video-core/xml-parser.js +0 -27
  399. /package/dist/tools/{issues → issues-v1}/index.d.ts +0 -0
  400. /package/dist/tools/{issues → issues-v1}/index.js +0 -0
  401. /package/dist/tools/{issues → issues-v1}/list-issues.js +0 -0
  402. /package/dist/tools/{issues → issues-v1}/utils.js +0 -0
@@ -16,7 +16,7 @@ const scenarios_1 = require("../bin/utils/scenarios");
16
16
  const test_gen_browser_1 = require("./definitions/test-gen-browser");
17
17
  exports.generateTestWithBrowserAgent = {
18
18
  ...test_gen_browser_1.generateTestWithBrowserAgent,
19
- execute: async ({ input, repoPath, trace, collectArtifacts, environmentOverrides = {}, featureFlags, }) => {
19
+ execute: async ({ input, repoPath, trace, collectArtifacts, environmentOverrides = {}, featureFlags, logger, }) => {
20
20
  const { filePath, project } = input;
21
21
  const absoluteFilePath = path_1.default.join(repoPath, filePath);
22
22
  if (!fs_1.default.existsSync(absoluteFilePath)) {
@@ -35,7 +35,7 @@ exports.generateTestWithBrowserAgent = {
35
35
  }
36
36
  }
37
37
  catch (error) {
38
- console.error("Error reading playwright config:", error);
38
+ logger.error("Error reading playwright config:", { error });
39
39
  return {
40
40
  isError: true,
41
41
  result: `Error reading playwright config: ${error}`,
@@ -68,11 +68,16 @@ exports.generateTestWithBrowserAgent = {
68
68
  }
69
69
  try {
70
70
  // Prepare playwright for codegen
71
- console.log("[generateTestWithBrowserAgent] Preparing playwright for codegen");
71
+ logger.info("Preparing playwright for codegen", {
72
+ tool: "generateTestWithBrowserAgent",
73
+ });
72
74
  await (0, pw_pause_1.preparePlaywrightForCodegen)(repoPath);
73
75
  }
74
76
  catch (err) {
75
- console.warn("[generateTestWithBrowserAgent] Error preparing playwright for codegen", err);
77
+ logger.warn("Error preparing playwright for codegen", {
78
+ tool: "generateTestWithBrowserAgent",
79
+ error: err,
80
+ });
76
81
  }
77
82
  let envOverrides = {
78
83
  ...environmentOverrides,
@@ -86,7 +91,11 @@ exports.generateTestWithBrowserAgent = {
86
91
  };
87
92
  }
88
93
  const testGenToken = (0, scenarios_1.buildTokenFromOptions)({ name: testName, file: filePath }, { useComputerUseAgent: true });
89
- console.log("[generateTestWithBrowserAgent] Validations passed, starting agent");
94
+ logger.info("Validations passed, starting agent", {
95
+ tool: "generateTestWithBrowserAgent",
96
+ testName,
97
+ filePath,
98
+ });
90
99
  const agentResult = await (0, run_1.runBrowsingAgent)({
91
100
  testCaseName: testName,
92
101
  testCaseSuites: suites,
@@ -103,15 +112,7 @@ exports.generateTestWithBrowserAgent = {
103
112
  await (0, pw_pause_1.revertToOriginalPwCode)(repoPath);
104
113
  fs_1.default.writeFileSync(absoluteFilePath, fileBackup, "utf-8");
105
114
  const { isError, error, result: toolResult, usage } = agentResult;
106
- if (isError || !toolResult) {
107
- return {
108
- isError,
109
- result: `Browser agent failed to run successfully. Here is the error:
110
- ${error}
111
- `,
112
- };
113
- }
114
- const screenshotArtifacts = toolResult
115
+ const screenshotArtifacts = (toolResult || [])
115
116
  .filter((item) => item.type === "screenshot")
116
117
  .map((item) => item.screenshot)
117
118
  .map((artifact) => ({
@@ -124,6 +125,43 @@ ${error}
124
125
  ...((0, utils_2.findPlaywrightArtifacts)(repoPath) || []),
125
126
  ...screenshotArtifacts,
126
127
  ];
128
+ const artifactUrlMap = new Map();
129
+ const pathToUrlMap = new Map();
130
+ if (collectArtifacts && artifactsInput.length > 0) {
131
+ const uploadedArtifacts = await collectArtifacts(artifactsInput);
132
+ artifactsInput.forEach((input, index) => {
133
+ const uploadedArtifact = uploadedArtifacts[index];
134
+ if (uploadedArtifact?.url) {
135
+ artifactUrlMap.set(input, uploadedArtifact.url);
136
+ if ("path" in input) {
137
+ const relativePath = path_1.default.relative(repoPath, input.path);
138
+ pathToUrlMap.set(relativePath, uploadedArtifact.url);
139
+ }
140
+ }
141
+ });
142
+ }
143
+ if (isError || !toolResult) {
144
+ let errorMessage = `Browser agent failed to run successfully. Here is the error:
145
+ ${error}
146
+ `;
147
+ if (typeof error === "string" && pathToUrlMap.size > 0) {
148
+ for (const [artifactPath, url] of pathToUrlMap.entries()) {
149
+ // Escape special regex characters in the path before using it in RegExp
150
+ const regex = new RegExp(artifactPath.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), "g");
151
+ const matchCount = (errorMessage.match(regex) || []).length;
152
+ if (matchCount === 0) {
153
+ logger.info("No matches found for artifact path", {
154
+ artifactPath,
155
+ });
156
+ }
157
+ errorMessage = errorMessage.replace(regex, url);
158
+ }
159
+ }
160
+ return {
161
+ isError: true,
162
+ result: errorMessage,
163
+ };
164
+ }
127
165
  const summaryResult = `Browser agent has finished running.
128
166
  TODO comment which it worked on: ${todoContent}
129
167
  Summary of actions it took, and the generated Playwright code:`;
@@ -137,8 +175,6 @@ Summary of actions it took, and the generated Playwright code:`;
137
175
  ];
138
176
  return { isError, result, usage };
139
177
  }
140
- const uploadedArtifacts = await collectArtifacts(artifactsInput);
141
- const artifactUrlMap = new Map(uploadedArtifacts.map((a) => [a.name, a.url]));
142
178
  let screenshotIndex = 0;
143
179
  const result = [
144
180
  { type: "text", text: summaryResult },
@@ -147,9 +183,9 @@ Summary of actions it took, and the generated Playwright code:`;
147
183
  return { type: "text", text: item.text };
148
184
  }
149
185
  else if (item.type === "screenshot") {
150
- const screenshotName = screenshotArtifacts[screenshotIndex]?.name;
151
- const url = screenshotName
152
- ? artifactUrlMap.get(screenshotName)
186
+ const screenshotArtifact = screenshotArtifacts[screenshotIndex];
187
+ const url = screenshotArtifact
188
+ ? artifactUrlMap.get(screenshotArtifact)
153
189
  : undefined;
154
190
  screenshotIndex++;
155
191
  return url
@@ -1,4 +1,4 @@
1
- import type { Tool } from "@empiricalrun/shared-types";
1
+ import type { Tool } from "@empiricalrun/shared-types/chat-agent";
2
2
  export declare function extractPathAfterSourceRepo(fullPath: string): string;
3
- export declare const fetchTestRunReportTool: Tool;
3
+ export declare const fetchTestRunDetailsTool: Tool;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/test-run-fetcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAcvD,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOnE;AAED,eAAO,MAAM,sBAAsB,EAAE,IAkHpC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/test-run-fetcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAYlE,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOnE;AAED,eAAO,MAAM,uBAAuB,EAAE,IAgHrC,CAAC"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchTestRunReportTool = void 0;
3
+ exports.fetchTestRunDetailsTool = void 0;
4
4
  exports.extractPathAfterSourceRepo = extractPathAfterSourceRepo;
5
5
  const zod_1 = require("zod");
6
- const urls_1 = require("../utils/urls");
7
6
  const TestRunSchema = zod_1.z.object({
8
- testRunUrl: zod_1.z
9
- .string()
10
- .describe("The full URL of the test run (e.g. https://dash.empirical.run/sortment-tests/test-runs/20269 or with query params like ?status=failed)"),
7
+ testRunId: zod_1.z
8
+ .number()
9
+ .describe("Numeric identifier (e.g. 20269) for a test run"),
10
+ projectSlug: zod_1.z.string().describe("Slug for the project of the test run"),
11
11
  });
12
12
  function extractPathAfterSourceRepo(fullPath) {
13
13
  const parts = fullPath.split("source-repo");
@@ -18,10 +18,24 @@ function extractPathAfterSourceRepo(fullPath) {
18
18
  return parts[1].replace(/^\/|\/$/g, "");
19
19
  }
20
20
  }
21
- exports.fetchTestRunReportTool = {
21
+ exports.fetchTestRunDetailsTool = {
22
22
  schema: {
23
23
  name: "fetchTestRunDetails",
24
- description: "Fetch details about a test run using its URL",
24
+ description: `Fetch details about a test run using its numeric identifier.
25
+ This tool returns the status of the test run, along with information about the environment
26
+ (e.g. "staging") or build that was used for the test run.
27
+
28
+ ## How to use this tool?
29
+
30
+ When you are given a URL like https://dash.empirical.run/<project-slug>/test-runs/20269?query=params
31
+ - "testRunId": Extract the numeric id from the URL - in this case #20269
32
+ - "projectSlug": Extract the project-slug from the URL
33
+
34
+ ## Related tools
35
+
36
+ - To learn more about a particular test case that failed in the test, you can use the fetch diagnosis tool
37
+ with the diagnosis id (which is passed to the test run URL as the ?detail= query parameter)
38
+ `,
25
39
  parameters: TestRunSchema,
26
40
  },
27
41
  needsBrowser: false,
@@ -30,9 +44,11 @@ exports.fetchTestRunReportTool = {
30
44
  if (!apiClient) {
31
45
  throw new Error("Dashboard API client is not available.");
32
46
  }
33
- const { testRunUrl } = input;
47
+ const { testRunId: runId, projectSlug } = input;
34
48
  let data = null;
35
- const { repoName, runId } = (0, urls_1.extractProjectFromUrl)(testRunUrl);
49
+ const repoName = projectSlug.includes("-tests")
50
+ ? projectSlug
51
+ : `${projectSlug}-tests`;
36
52
  try {
37
53
  data = await apiClient.request(`/api/test-runs/${runId}?repo_name=${repoName}`, { method: "GET" });
38
54
  }
@@ -42,79 +58,64 @@ exports.fetchTestRunReportTool = {
42
58
  result: `Failed to fetch test run details: ${error instanceof Error ? error.message : String(error)}`,
43
59
  };
44
60
  }
45
- // To efficiently use input_tokens, we
46
- // 1. Truncate stack trace to last 300 characters
47
- // 2. Remove request/response headers from network metadata
48
- // 3. Focus on failed tests only
49
61
  const testRun = data.data?.test_run;
50
- if (testRun?.flattenedSummaryDetails) {
51
- testRun.flattenedSummaryDetails = testRun.flattenedSummaryDetails.map((detail) => {
52
- // Truncate stack trace to last 300 characters
53
- if (detail.failed_run_metadata?.stack) {
54
- const stack = detail.failed_run_metadata.stack;
55
- // TODO: change to last 10 lines
56
- detail.failed_run_metadata.stack =
57
- stack.length > 300 ? `...${stack.slice(-300)}` : stack;
58
- }
59
- // Remove headers from network metadata
60
- if (detail.network_metadata?.failed_calls) {
61
- detail.network_metadata.failed_calls =
62
- detail.network_metadata.failed_calls.map((call) => ({
63
- ...call,
64
- request: { ...call.request, headers: [] },
65
- response: { ...call.response, headers: [] },
66
- }));
67
- }
68
- if (detail.network_metadata?.failed_calls_within_time_range) {
69
- detail.network_metadata.failed_calls_within_time_range =
70
- detail.network_metadata.failed_calls_within_time_range.map((call) => ({
71
- ...call,
72
- request: { ...call.request, headers: [] },
73
- response: { ...call.response, headers: [] },
74
- }));
75
- }
76
- return detail;
77
- });
62
+ if (!testRun) {
63
+ return {
64
+ isError: true,
65
+ result: `Test run not found.`,
66
+ };
78
67
  }
79
- const failedTests = testRun?.flattenedSummaryDetails.filter((detail) => detail.status === "failed");
80
- const failedTestInMarkdown = failedTests
81
- ?.map((detail) => {
68
+ const buildInfoIfAvailable = testRun.testRun.build_url
69
+ ? `
70
+ ## Build info
71
+ - Build URL: ${testRun.testRun.build_url}
72
+ - Git branch: ${testRun.testRun.build_branch}
73
+ - Git commit: ${testRun.testRun.commit}
74
+ `
75
+ : ``;
76
+ const failedTestsInMarkdown = (testRun.flattenedSummaryDetails || [])
77
+ .filter((detail) => detail.status === "failed")
78
+ .map((detail) => {
82
79
  const { nesting } = detail.failed_run_metadata;
83
80
  return {
84
81
  testName: nesting.slice(1).join(" > "),
85
82
  fileName: extractPathAfterSourceRepo(detail.failed_run_metadata.location.file),
86
83
  project: detail.test_project,
87
- detail,
84
+ diagnosisId: detail.slug,
88
85
  };
89
86
  })
90
- .map((res) => {
87
+ .map((res, idx) => {
91
88
  return `
92
- ### Test name: ${res.testName}
93
- File: ${res.fileName}
94
- Project: ${res.project}
89
+ ### Failed test ${idx + 1}
95
90
 
96
- Failure data below
91
+ Test case name: ${res.testName}
92
+ File: ${res.fileName}
93
+ Project: ${res.project}
94
+ Diagnosis ID: ${res.diagnosisId}
97
95
 
98
- \`\`\`json
99
- ${JSON.stringify(res.detail, null, 2)}
100
- \`\`\`
101
- `;
96
+ `;
102
97
  })
103
- .join("\n\n");
98
+ .join("\n");
104
99
  const markdownResponse = `
105
- # Test run details
100
+ Test run #${testRun.testRun.id}
101
+
102
+ ## Info
103
+ - Run ID: ${runId}
104
+ - Status: ${testRun.testRun.state}
105
+ - Started at: ${testRun.testRun.run_started_at}
106
+ - Ended at: ${testRun.testRun.run_ended_at}
107
+ - Duration: ${testRun.testRun.duration} seconds
108
+
109
+ ## Environment
110
+ - Name: ${testRun?.testRun.environment_name}
111
+ - Slug: ${testRun?.testRun.environment_slug}
112
+
113
+ ${buildInfoIfAvailable}
106
114
 
107
- ## Run info
108
- - Run ID: ${runId}
109
- - Repository: ${repoName}
110
- - Started at: ${testRun?.testRun.run_started_at}
111
- - Ended at: ${testRun?.testRun.run_ended_at}
112
- - Duration: ${testRun?.testRun.duration} seconds
113
- - Environment name: ${testRun?.testRun.environment_name}
115
+ ## Failed tests
114
116
 
115
- ## Failed tests
116
- ${failedTestInMarkdown}
117
- `;
117
+ ${failedTestsInMarkdown.length > 0 ? failedTestsInMarkdown : "None"}
118
+ `;
118
119
  return {
119
120
  result: markdownResponse,
120
121
  isError: false,
@@ -1,3 +1,3 @@
1
- import { Tool } from "@empiricalrun/shared-types";
1
+ import { Tool } from "@empiricalrun/shared-types/chat-agent";
2
2
  export declare const traceDotZipTool: Tool;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/trace-dot-zip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAc,MAAM,4BAA4B,CAAC;AAa9D,eAAO,MAAM,eAAe,EAAE,IAwD7B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/trace-dot-zip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAc,MAAM,uCAAuC,CAAC;AAazE,eAAO,MAAM,eAAe,EAAE,IAwD7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"network-trace.d.ts","sourceRoot":"","sources":["../../../../src/tools/trace-dot-zip/utils/network-trace.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAUlB,KAAK,KAAK,GAAG;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EACJ;YACE,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SAChB,GACD,SAAS,CAAC;KACf,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,8BAIxC,KAAK,KAAG,OAAO,CAAC;IACjB,cAAc,EAAE,sBAAsB,EAAE,CAAC;IACzC,0BAA0B,EAAE,sBAAsB,EAAE,CAAC;CACtD,CA+KA,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAU,UAElD,KAAK,KAAG,OAAO,CAAC;IACjB,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;IAC9C,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;CAC/C,CAyEA,CAAC;AAsBF,eAAO,MAAM,0CAA0C,GACrD,UAAU,sBAAsB,EAAE,KACjC,OAAO,CAAC,sBAAsB,CAAC,EAoBjC,CAAC;AAmCF,eAAO,MAAM,iBAAiB,GAC5B,UAAU,sBAAsB,EAAE,EAClC,QAAQ,MAAM,KACb,OAAO,CAAC,sBAAsB,EAAE,CA+BlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,0CAA0C,sBAAsB,EAAE,KACjE,sBAAsB,EA2BxB,CAAC"}
1
+ {"version":3,"file":"network-trace.d.ts","sourceRoot":"","sources":["../../../../src/tools/trace-dot-zip/utils/network-trace.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAUlB,KAAK,KAAK,GAAG;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,EACJ;YACE,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SAChB,GACD,SAAS,CAAC;KACf,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,8BAIxC,KAAK,KAAG,OAAO,CAAC;IACjB,cAAc,EAAE,sBAAsB,EAAE,CAAC;IACzC,0BAA0B,EAAE,sBAAsB,EAAE,CAAC;CACtD,CA+KA,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAU,UAElD,KAAK,KAAG,OAAO,CAAC;IACjB,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;IAC9C,mBAAmB,EAAE,sBAAsB,EAAE,CAAC;CAC/C,CAkEA,CAAC;AAsBF,eAAO,MAAM,0CAA0C,GACrD,UAAU,sBAAsB,EAAE,KACjC,OAAO,CAAC,sBAAsB,CAAC,EAoBjC,CAAC;AAmCF,eAAO,MAAM,iBAAiB,GAC5B,UAAU,sBAAsB,EAAE,EAClC,QAAQ,MAAM,KACb,OAAO,CAAC,sBAAsB,EAAE,CA+BlC,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,0CAA0C,sBAAsB,EAAE,KACjE,sBAAsB,EA2BxB,CAAC"}
@@ -147,10 +147,10 @@ const generateNetworkTraceFromZipUrl = async ({ url, }) => {
147
147
  const hasValidResponseStatus = !!parsedNetworkTrace?.snapshot?.response?.status;
148
148
  const responseStatus = Number(parsedNetworkTrace?.snapshot?.response?.status);
149
149
  allNetworkCalls.push(parsedNetworkTrace);
150
- // only failures & redirects for detailed analysis
150
+ // only failures for detailed analysis
151
151
  if (hasValidResponseStatus &&
152
- (responseStatus === 308 ||
153
- (400 <= responseStatus && responseStatus < 600))) {
152
+ 400 <= responseStatus &&
153
+ responseStatus < 600) {
154
154
  relevantNetworkCalls.push(parsedNetworkTrace);
155
155
  }
156
156
  });
@@ -165,13 +165,8 @@ const generateNetworkTraceFromZipUrl = async ({ url, }) => {
165
165
  const sequenceCalls = allNetworkCalls.filter((c) => {
166
166
  const hasValidResponseStatus = !!c.snapshot.response.status;
167
167
  const status = Number(c.snapshot.response.status);
168
- return (hasValidResponseStatus &&
169
- ((400 <= status && status < 600) ||
170
- status === 307 ||
171
- status === 308 ||
172
- status === 301 ||
173
- status === 302));
174
- // excluding: 304 (cached), 2xx success
168
+ return hasValidResponseStatus && 400 <= status && status < 600;
169
+ // excluding: 304 (cached), 2xx success, 3xx redirects
175
170
  });
176
171
  const networkCallSequence = (0, exports.buildNetworkCallSequence)(sequenceCalls);
177
172
  const formattedFailedCalls = failedCalls.map(formatNetworkFailure);
@@ -1,3 +1,3 @@
1
- import { Tool } from "@empiricalrun/shared-types";
1
+ import { Tool } from "@empiricalrun/shared-types/chat-agent";
2
2
  export declare const sendTriageSummaryTool: Tool;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/triage-summary/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAc,MAAM,4BAA4B,CAAC;AAmB9D,eAAO,MAAM,qBAAqB,EAAE,IA6CnC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/triage-summary/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,IAAI,EAEL,MAAM,uCAAuC,CAAC;AAmB/C,eAAO,MAAM,qBAAqB,EAAE,IA0DnC,CAAC"}
@@ -19,7 +19,7 @@ exports.sendTriageSummaryTool = {
19
19
  },
20
20
  needsBrowser: false,
21
21
  isInlineTool: true,
22
- execute: async ({ input, apiClient, chatSession }) => {
22
+ execute: async ({ input, apiClient, chatSession, logger, }) => {
23
23
  try {
24
24
  const triagedIssuesList = input.issues;
25
25
  if (!triagedIssuesList) {
@@ -41,7 +41,10 @@ exports.sendTriageSummaryTool = {
41
41
  };
42
42
  }
43
43
  catch (error) {
44
- console.error("Error sending triage summary to slack", error);
44
+ logger.error("Error sending triage summary to slack", {
45
+ tool: "sendTriageSummaryTool",
46
+ error,
47
+ });
45
48
  return {
46
49
  isError: true,
47
50
  result: error instanceof Error ? error.message : String(error),
@@ -1,4 +1,4 @@
1
- import { IDashboardAPIClient } from "@empiricalrun/shared-types";
1
+ import { IDashboardAPIClient } from "@empiricalrun/shared-types/api/base";
2
2
  import { TriagedIssue } from "./types";
3
3
  export declare const triggerSlackMessageWithTriageSummary: (issues: TriagedIssue[], apiClient: IDashboardAPIClient, chatSessionId: number) => Promise<string>;
4
4
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/tools/triage-summary/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,oCAAoC,GAC/C,QAAQ,YAAY,EAAE,EACtB,WAAW,mBAAmB,EAC9B,eAAe,MAAM,KACpB,OAAO,CAAC,MAAM,CAahB,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/tools/triage-summary/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,oCAAoC,GAC/C,QAAQ,YAAY,EAAE,EACtB,WAAW,mBAAmB,EAC9B,eAAe,MAAM,KACpB,OAAO,CAAC,MAAM,CAahB,CAAC"}
@@ -1,3 +1,3 @@
1
- import type { Tool } from "@empiricalrun/shared-types";
1
+ import type { Tool } from "@empiricalrun/shared-types/chat-agent";
2
2
  export declare const upgradePackagesTool: Tool;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/upgrade-packages/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAoBvD,eAAO,MAAM,mBAAmB,EAAE,IAyHjC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/upgrade-packages/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAmBlE,eAAO,MAAM,mBAAmB,EAAE,IAqIjC,CAAC"}
@@ -14,13 +14,13 @@ const pr_description_1 = require("../executor/utils/pr-description");
14
14
  const utils_2 = require("./utils");
15
15
  exports.upgradePackagesTool = {
16
16
  ...upgrade_packages_1.upgradePackagesTool,
17
- execute: async ({ input, repoPath, apiClient, chatSession }) => {
17
+ execute: async ({ input, repoPath, apiClient, chatSession, logger }) => {
18
18
  const { packages: packagesToUpdate } = input;
19
19
  try {
20
- const repoName = path_1.default.basename(repoPath);
21
20
  const branchName = await (0, git_1.getCurrentBranchName)(repoPath);
22
21
  const packageJsonPath = path_1.default.join(repoPath, "package.json");
23
22
  const packageJson = JSON.parse(fs_1.default.readFileSync(packageJsonPath, "utf-8"));
23
+ const repoName = packageJson.name;
24
24
  const changes = [];
25
25
  for (let { name: pkgName, version } of packagesToUpdate) {
26
26
  const isDevDep = !!packageJson.devDependencies?.[pkgName];
@@ -30,11 +30,12 @@ exports.upgradePackagesTool = {
30
30
  pkgName,
31
31
  version,
32
32
  isDevDep,
33
+ logger: logger,
33
34
  });
34
35
  changes.push(updatedPackage);
35
36
  }
36
37
  catch (err) {
37
- console.error(`Failed to upgrade ${pkgName}:`, err);
38
+ logger.error("Failed to upgrade package", { pkgName, error: err });
38
39
  return {
39
40
  result: `Failed to upgrade ${pkgName}: ${err.message}`,
40
41
  isError: true,
@@ -62,6 +63,9 @@ exports.upgradePackagesTool = {
62
63
  let shouldMerge = false;
63
64
  let prNumber = null;
64
65
  let merged = false;
66
+ if (!chatSession) {
67
+ throw new Error("Chat session is not available.");
68
+ }
65
69
  if (!apiClient) {
66
70
  throw new Error("Dashboard API client is not available.");
67
71
  }
@@ -71,6 +75,7 @@ exports.upgradePackagesTool = {
71
75
  repo: repoName,
72
76
  apiClient,
73
77
  branchName,
78
+ base: chatSession?.baseBranchName,
74
79
  title: prTitle,
75
80
  body: (0, pr_description_1.addMetadataToPRDescription)(prBody, chatSession),
76
81
  labels: ["automated"],
@@ -79,9 +84,14 @@ exports.upgradePackagesTool = {
79
84
  if (!pr.number) {
80
85
  throw new Error("Failed to create PR");
81
86
  }
82
- shouldMerge = await (0, utils_2.shouldMergePR)({ repoName, prNumber, apiClient });
87
+ shouldMerge = await (0, utils_2.shouldMergePR)({
88
+ repoName,
89
+ prNumber,
90
+ apiClient,
91
+ logger: logger,
92
+ });
83
93
  if (shouldMerge) {
84
- console.log("All changes are patch updates, proceeding with merge");
94
+ logger.info("All changes are patch updates, proceeding with merge");
85
95
  merged = await (0, git_1.mergePullRequest)({
86
96
  repoName,
87
97
  prNumber,
@@ -89,11 +99,11 @@ exports.upgradePackagesTool = {
89
99
  });
90
100
  }
91
101
  else {
92
- console.log(`PR #${prNumber} created but not merged - contains non-patch updates`);
102
+ logger.info("PR created but not merged - contains non-patch updates", { prNumber });
93
103
  }
94
104
  }
95
105
  catch (error) {
96
- console.error("Failed to handle PR operations:", error);
106
+ logger.error("Failed to handle PR operations", { error });
97
107
  const prLink = prNumber
98
108
  ? ` PR: https://github.com/empirical-run/${repoName}/pull/${prNumber}`
99
109
  : "";
@@ -114,7 +124,7 @@ exports.upgradePackagesTool = {
114
124
  };
115
125
  }
116
126
  catch (error) {
117
- console.error("Failed to upgrade packages:", error);
127
+ logger.error("Failed to upgrade packages", { error });
118
128
  return {
119
129
  result: `Failed to upgrade packages: ${error.message}`,
120
130
  isError: true,
@@ -1,21 +1,26 @@
1
- import { IDashboardAPIClient } from "@empiricalrun/shared-types";
2
- export declare function getLatestVersion(packageName: string): Promise<any>;
3
- export declare function parsePackageJsonDiff({ diff, }: {
1
+ import { IDashboardAPIClient } from "@empiricalrun/shared-types/api/base";
2
+ import { Logger } from "@empiricalrun/shared-types/chat-agent";
3
+ export declare function isPatchUpdate(currentVersion: string | undefined, newVersion: string | undefined): boolean;
4
+ export declare function getLatestVersion(packageName: string, logger: Logger): Promise<any>;
5
+ export declare function parsePackageJsonDiff({ diff, logger, }: {
4
6
  diff: string;
7
+ logger: Logger;
5
8
  }): Record<string, {
6
9
  old?: string;
7
10
  new?: string;
8
11
  }>;
9
- export declare function shouldMergePR({ repoName, prNumber, apiClient, }: {
12
+ export declare function shouldMergePR({ repoName, prNumber, apiClient, logger, }: {
10
13
  repoName: string;
11
14
  prNumber: number;
12
15
  apiClient: IDashboardAPIClient;
16
+ logger: Logger;
13
17
  }): Promise<boolean>;
14
- export declare function upgradeAndStagePackage({ repoPath, pkgName, version, isDevDep, }: {
18
+ export declare function upgradeAndStagePackage({ repoPath, pkgName, version, isDevDep, logger, }: {
15
19
  repoPath: string;
16
20
  pkgName: string;
17
21
  version?: string;
18
22
  isDevDep: boolean;
23
+ logger: Logger;
19
24
  }): Promise<{
20
25
  name: string;
21
26
  version: any;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/tools/upgrade-packages/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAmBjE,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,gBAkBzD;AA4BD,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,GACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuBjD;AAED,wBAAsB,aAAa,CAAC,EAClC,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,mBAAmB,CAAC;CAChC,oBA8BA;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,QAAQ,EACR,OAAO,EACP,OAAO,EACP,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;;;GAcA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/tools/upgrade-packages/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAG/D,wBAAgB,aAAa,CAC3B,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAWT;AAED,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,gBA0BzE;AAkCD,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,MAAM,GACP,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BjD;AAED,wBAAsB,aAAa,CAAC,EAClC,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB,oBAkDA;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,QAAQ,EACR,OAAO,EACP,OAAO,EACP,QAAQ,EACR,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;;;GAqBA"}