@skyramp/mcp 0.3.2-rc.pom-4 → 0.3.3

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 (256) hide show
  1. package/build/adapters/jestAdapter.d.ts +14 -0
  2. package/build/adapters/jestAdapter.js +113 -0
  3. package/build/adapters/mochaAdapter.d.ts +13 -0
  4. package/build/adapters/mochaAdapter.js +87 -0
  5. package/build/adapters/playwrightAdapter.d.ts +17 -0
  6. package/build/adapters/playwrightAdapter.js +182 -0
  7. package/build/adapters/pytestAdapter.d.ts +15 -0
  8. package/build/adapters/pytestAdapter.js +108 -0
  9. package/build/commands/commandLibrary.d.ts +1 -0
  10. package/build/commands/commandLibrary.js +19 -13
  11. package/build/commands/localDevTestChangesCommand.d.ts +15 -0
  12. package/build/commands/localDevTestChangesCommand.js +201 -0
  13. package/build/index.js +129 -8
  14. package/build/playwright/PlaywrightTraceService.d.ts +8 -0
  15. package/build/playwright/PlaywrightTraceService.js +1 -0
  16. package/build/prompts/code-reuse.js +3 -0
  17. package/build/prompts/enhance-assertions/sharedAssertionRules.d.ts +1 -0
  18. package/build/prompts/enhance-assertions/sharedAssertionRules.js +17 -0
  19. package/build/prompts/initialize-workspace/initializeWorkspacePrompt.js +11 -9
  20. package/build/prompts/local-dev/local-dev-plan.d.ts +35 -0
  21. package/build/prompts/local-dev/local-dev-plan.js +429 -0
  22. package/build/prompts/local-dev/local-dev-prompts.d.ts +4 -0
  23. package/build/prompts/local-dev/local-dev-prompts.js +190 -0
  24. package/build/prompts/pom-aware-code-reuse.js +17 -8
  25. package/build/prompts/prompt-utils.d.ts +8 -0
  26. package/build/prompts/prompt-utils.js +33 -0
  27. package/build/prompts/sut-setup/modes/adaptWorkflowPrompt.js +70 -7
  28. package/build/prompts/sut-setup/modes/dockerComposePrompt.js +1 -1
  29. package/build/prompts/sut-setup/shared.js +19 -17
  30. package/build/prompts/test-maintenance/drift-analysis-prompt.d.ts +10 -1
  31. package/build/prompts/test-maintenance/drift-analysis-prompt.js +54 -1
  32. package/build/prompts/test-recommendation/analysisOutputPrompt.js +21 -29
  33. package/build/prompts/test-recommendation/scopeAssessment.d.ts +5 -2
  34. package/build/prompts/test-recommendation/scopeAssessment.js +78 -6
  35. package/build/prompts/test-recommendation/test-recommendation-prompt.js +41 -4
  36. package/build/prompts/testbot/testbot-prompts.d.ts +2 -17
  37. package/build/prompts/testbot/testbot-prompts.js +63 -60
  38. package/build/recommendation/planRanker.d.ts +15 -2
  39. package/build/recommendation/planRanker.js +76 -5
  40. package/build/resources/testbotResource.js +23 -5
  41. package/build/services/AnalyticsService.d.ts +1 -1
  42. package/build/services/TestExecutionService.d.ts +15 -9
  43. package/build/services/TestExecutionService.js +56 -28
  44. package/build/services/TestGenerationService.d.ts +2 -2
  45. package/build/services/TestGenerationService.js +39 -21
  46. package/build/services/containerEnv.js +27 -1
  47. package/build/tool-phases.js +7 -0
  48. package/build/tools/code-refactor/codeReuseTool.js +43 -4
  49. package/build/tools/code-refactor/enhanceAssertionsTool.js +68 -18
  50. package/build/tools/code-refactor/reuse-outcome.d.ts +109 -0
  51. package/build/tools/code-refactor/reuse-outcome.js +158 -0
  52. package/build/tools/code-refactor/reuse-state.d.ts +45 -0
  53. package/build/tools/code-refactor/reuse-state.js +140 -0
  54. package/build/tools/enrichTestWithMocksTool.d.ts +28 -0
  55. package/build/tools/enrichTestWithMocksTool.js +726 -0
  56. package/build/tools/executeSkyrampTestTool.d.ts +11 -0
  57. package/build/tools/executeSkyrampTestTool.js +62 -21
  58. package/build/tools/generate-tests/batchMockGenerationTool.d.ts +106 -0
  59. package/build/tools/generate-tests/batchMockGenerationTool.js +545 -0
  60. package/build/tools/generate-tests/generateBatchScenarioRestTool.js +25 -23
  61. package/build/tools/generate-tests/generateContractRestTool.js +2 -2
  62. package/build/tools/generate-tests/generateE2ERestTool.d.ts +1 -1
  63. package/build/tools/generate-tests/generateE2ERestTool.js +1 -1
  64. package/build/tools/generate-tests/generateLoadRestTool.d.ts +1 -1
  65. package/build/tools/generate-tests/generateLoadRestTool.js +1 -1
  66. package/build/tools/generate-tests/generateMockRestTool.d.ts +179 -6
  67. package/build/tools/generate-tests/generateMockRestTool.js +391 -22
  68. package/build/tools/generate-tests/loadTestSchema.d.ts +1 -1
  69. package/build/tools/generate-tests/planGuard.js +2 -22
  70. package/build/tools/generateEnrichedIntegrationTestTool.d.ts +25 -0
  71. package/build/tools/generateEnrichedIntegrationTestTool.js +235 -0
  72. package/build/tools/localDevWorkerComposeTool.d.ts +24 -0
  73. package/build/tools/localDevWorkerComposeTool.js +264 -0
  74. package/build/tools/one-click/oneClickTool.d.ts +13 -0
  75. package/build/tools/one-click/oneClickTool.js +195 -24
  76. package/build/tools/preflightMockCheckTool.d.ts +2 -0
  77. package/build/tools/preflightMockCheckTool.js +96 -0
  78. package/build/tools/queryProxyMocksTool.d.ts +70 -0
  79. package/build/tools/queryProxyMocksTool.js +521 -0
  80. package/build/tools/runExistingTestsTool.d.ts +138 -0
  81. package/build/tools/runExistingTestsTool.js +644 -0
  82. package/build/tools/submitReportTool.js +40 -2
  83. package/build/tools/test-management/actionsTool.js +12 -2
  84. package/build/tools/test-management/analyzeChangesTool.d.ts +2 -1
  85. package/build/tools/test-management/analyzeChangesTool.js +63 -40
  86. package/build/tools/test-management/analyzeTestHealthTool.d.ts +11 -0
  87. package/build/tools/test-management/analyzeTestHealthTool.js +63 -1
  88. package/build/tools/test-management/registerTestPlanTool.js +55 -7
  89. package/build/tools/trace/startTraceCollectionTool.js +3 -3
  90. package/build/types/ExternalTestExecution.d.ts +67 -0
  91. package/build/types/ExternalTestExecution.js +8 -0
  92. package/build/types/OneClickCommands.d.ts +1 -1
  93. package/build/types/Recommendation.d.ts +20 -0
  94. package/build/types/Recommendation.js +32 -6
  95. package/build/types/RepositoryAnalysis.d.ts +131 -14
  96. package/build/types/RepositoryAnalysis.js +16 -2
  97. package/build/types/ReuseOutcome.d.ts +63 -0
  98. package/build/types/ReuseOutcome.js +33 -0
  99. package/build/types/TestAnalysis.d.ts +7 -3
  100. package/build/types/TestExecution.d.ts +1 -0
  101. package/build/types/TestTypes.d.ts +25 -7
  102. package/build/types/TestTypes.js +25 -7
  103. package/build/types/TestbotPromptOptions.d.ts +35 -0
  104. package/build/types/TestbotPromptOptions.js +1 -0
  105. package/build/types/TestbotReport.d.ts +7 -0
  106. package/build/types/index.d.ts +3 -0
  107. package/build/types/index.js +1 -0
  108. package/build/utils/AnalysisStateManager.d.ts +33 -0
  109. package/build/utils/AnalysisStateManager.js +36 -2
  110. package/build/utils/analyze-openapi.js +18 -1
  111. package/build/utils/branchDiff.d.ts +17 -1
  112. package/build/utils/branchDiff.js +99 -14
  113. package/build/utils/featureFlags.d.ts +31 -0
  114. package/build/utils/featureFlags.js +37 -0
  115. package/build/utils/frontendSelectors.js +0 -1
  116. package/build/utils/gitStaging.d.ts +5 -0
  117. package/build/utils/gitStaging.js +1 -1
  118. package/build/utils/grpcMockValidation.d.ts +1 -0
  119. package/build/utils/grpcMockValidation.js +49 -0
  120. package/build/utils/httpMethodValidation.d.ts +4 -0
  121. package/build/utils/httpMethodValidation.js +15 -0
  122. package/build/utils/logger.js +1 -1
  123. package/build/utils/mockCompatibility.d.ts +49 -0
  124. package/build/utils/mockCompatibility.js +82 -0
  125. package/build/utils/pom-catalog.d.ts +23 -0
  126. package/build/utils/pom-catalog.js +30 -0
  127. package/build/utils/pom-scope/pom-files.d.ts +14 -0
  128. package/build/utils/pom-scope/pom-files.js +32 -6
  129. package/build/utils/pom-scope/testIdDiscovery.d.ts +40 -0
  130. package/build/utils/pom-scope/testIdDiscovery.js +104 -0
  131. package/build/utils/pom-verify/verify.d.ts +5 -0
  132. package/build/utils/pom-verify/verify.js +1 -0
  133. package/build/utils/progress.js +10 -5
  134. package/build/utils/proxy-terminal.js +3 -3
  135. package/build/utils/reportVerification.d.ts +7 -2
  136. package/build/utils/reportVerification.js +9 -3
  137. package/build/utils/routeParsers.d.ts +3 -9
  138. package/build/utils/routeParsers.js +79 -4
  139. package/build/utils/utils.js +2 -2
  140. package/build/utils/versions.d.ts +4 -3
  141. package/build/utils/versions.js +3 -1
  142. package/build/utils/workspaceAuth.d.ts +46 -0
  143. package/build/utils/workspaceAuth.js +156 -1
  144. package/build/workspace/frameworks.d.ts +11 -0
  145. package/build/workspace/frameworks.js +22 -0
  146. package/build/workspace/testSuites.d.ts +20 -0
  147. package/build/workspace/testSuites.js +17 -0
  148. package/build/workspace/workspace.d.ts +206 -24
  149. package/build/workspace/workspace.js +52 -2
  150. package/node_modules/playwright/ThirdPartyNotices.txt +319 -266
  151. package/node_modules/playwright/lib/dom-analyzer/blueprint.js +154 -27
  152. package/node_modules/playwright/lib/dom-analyzer/crawler.js +2 -2
  153. package/node_modules/playwright/lib/mcp/browser/tools/pageBlueprint.js +1 -1
  154. package/node_modules/playwright/lib/mcp/browser/tools/sitemap.js +6 -2
  155. package/node_modules/playwright/lib/mcp/skyramp/loadTraceTool.js +3 -2
  156. package/node_modules/playwright/lib/mcp/skyramp/resultCode.js +4 -3
  157. package/node_modules/playwright/lib/mcp/skyramp/skyRampImport.js +15 -3
  158. package/node_modules/playwright/lib/mcp/skyramp/specImport.js +781 -0
  159. package/node_modules/playwright/lib/mcp/skyramp/traceRecordingBackend.js +14 -3
  160. package/node_modules/playwright/lib/mcp/test/resultCode.test.js +2 -1
  161. package/node_modules/playwright/lib/mcp/test/skyRampExport.js +1 -1
  162. package/node_modules/playwright/lib/mcp/test/skyRampExport.test.js +30 -0
  163. package/node_modules/playwright/lib/transform/babelBundleImpl.js +200 -199
  164. package/node_modules/playwright/node_modules/playwright-core/ThirdPartyNotices.txt +3 -3
  165. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/.package-lock.json +3 -3
  166. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/adapter/aws-lambda/handler.js +16 -25
  167. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/adapter/bun/websocket.js +3 -1
  168. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/adapter/lambda-edge/handler.js +20 -4
  169. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +16 -25
  170. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/adapter/bun/websocket.js +3 -1
  171. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/adapter/lambda-edge/handler.js +20 -4
  172. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/client/client.js +10 -1
  173. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/client/utils.js +1 -1
  174. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/css/common.js +3 -1
  175. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/css/index.js +9 -1
  176. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/base.js +8 -14
  177. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/components.js +41 -21
  178. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/context.js +131 -5
  179. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/streaming.js +9 -7
  180. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/bearer-auth/index.js +1 -1
  181. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/cache/index.js +1 -1
  182. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/compress/index.js +2 -1
  183. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/cors/index.js +2 -5
  184. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/etag/index.js +2 -1
  185. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/language/language.js +10 -32
  186. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/method-override/index.js +5 -3
  187. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/serve-static/index.js +2 -2
  188. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/timing/timing.js +3 -1
  189. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/trie-router/node.js +9 -0
  190. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/body.js +12 -4
  191. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/buffer.js +2 -1
  192. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/ipaddr.js +6 -1
  193. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/validator/validator.js +3 -3
  194. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/client/client.js +10 -1
  195. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/client/utils.js +1 -1
  196. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/css/common.js +3 -1
  197. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/css/index.js +9 -1
  198. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/base.js +15 -15
  199. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/components.js +42 -22
  200. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/context.js +129 -5
  201. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/streaming.js +10 -8
  202. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/bearer-auth/index.js +1 -1
  203. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/cache/index.js +1 -1
  204. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/compress/index.js +2 -1
  205. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/cors/index.js +2 -5
  206. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/etag/index.js +2 -1
  207. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/language/language.js +10 -32
  208. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/method-override/index.js +5 -3
  209. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/serve-static/index.js +2 -2
  210. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/timing/timing.js +3 -1
  211. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/trie-router/node.js +9 -0
  212. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/adapter/aws-lambda/handler.d.ts +1 -1
  213. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/adapter/lambda-edge/handler.d.ts +1 -1
  214. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/helper/websocket/index.d.ts +1 -1
  215. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/base.d.ts +1 -3
  216. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/context.d.ts +39 -0
  217. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/context-storage/index.d.ts +2 -2
  218. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/language/language.d.ts +18 -0
  219. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/utils/body.d.ts +1 -1
  220. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/utils/types.d.ts +1 -1
  221. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/body.js +12 -4
  222. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/buffer.js +2 -1
  223. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/ipaddr.js +6 -1
  224. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/validator/validator.js +3 -3
  225. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/package.json +29 -22
  226. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/package-lock.json +3 -3
  227. package/node_modules/playwright/node_modules/playwright-core/lib/generated/pollingRecorderSource.js +1 -1
  228. package/node_modules/playwright/node_modules/playwright-core/lib/server/codegen/skyramp/jsonlReader.js +5 -1
  229. package/node_modules/playwright/node_modules/playwright-core/lib/server/codegen/skyramp/specReader.js +781 -0
  230. package/node_modules/playwright/node_modules/playwright-core/lib/server/recorder/recorderApp.js +25 -6
  231. package/node_modules/playwright/node_modules/playwright-core/lib/server/recorder/skyramp/replayEngine.js +3 -1
  232. package/node_modules/playwright/node_modules/playwright-core/lib/utils.js +2 -0
  233. package/node_modules/playwright/node_modules/playwright-core/lib/vite/htmlReport/index.html +253 -27
  234. package/node_modules/playwright/node_modules/playwright-core/lib/vite/recorder/assets/{codeMirrorModule-D0BjbCb7.js → codeMirrorModule-DtudTj_v.js} +1 -1
  235. package/node_modules/playwright/node_modules/playwright-core/lib/vite/recorder/assets/index-BpDwp16L.js +422 -0
  236. package/node_modules/playwright/node_modules/playwright-core/lib/vite/recorder/index.html +1 -1
  237. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/assets/{codeMirrorModule-Bzd72-bG.js → codeMirrorModule-FNMuBzX1.js} +1 -1
  238. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-Co9upU5h.js +1035 -0
  239. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/index.DXNIQ_dx.js +2 -0
  240. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/index.html +2 -2
  241. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/uiMode.CIKB3XSv.js +5 -0
  242. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html +2 -2
  243. package/node_modules/playwright/node_modules/playwright-core/package.json +1 -1
  244. package/node_modules/playwright/node_modules/playwright-core/src/generated/pollingRecorderSource.ts +1 -1
  245. package/node_modules/playwright/node_modules/playwright-core/src/server/codegen/skyramp/jsonlReader.ts +4 -0
  246. package/node_modules/playwright/node_modules/playwright-core/src/server/codegen/skyramp/specReader.ts +1028 -0
  247. package/node_modules/playwright/node_modules/playwright-core/src/server/recorder/recorderApp.ts +31 -8
  248. package/node_modules/playwright/node_modules/playwright-core/src/server/recorder/skyramp/replayEngine.ts +1 -0
  249. package/node_modules/playwright/node_modules/playwright-core/src/utils.ts +1 -0
  250. package/node_modules/playwright/package.json +1 -1
  251. package/package.json +12 -6
  252. package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/tsconfig.build.tsbuildinfo +0 -1
  253. package/node_modules/playwright/node_modules/playwright-core/lib/vite/recorder/assets/index-lvTRGFx-.js +0 -193
  254. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-DzxTioTK.js +0 -809
  255. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/index.BGc30U3S.js +0 -2
  256. package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/uiMode.IaDrb29A.js +0 -5
@@ -114,7 +114,9 @@ class TraceRecordingBackend {
114
114
  `--load-extension=${loadExtension.join(",")}`
115
115
  ] : void 0;
116
116
  const headless = loadExtension?.length ? false : this._options.headless ?? (!!process.env.CI || import_os.default.platform() === "linux" && !process.env.DISPLAY);
117
+ const testIdAttribute = process.env.PLAYWRIGHT_MCP_TEST_ID_ATTRIBUTE?.trim() || this._options.testIdAttribute?.trim();
117
118
  const config = await (0, import_config.resolveConfig)({
119
+ ...testIdAttribute ? { testIdAttribute } : {},
118
120
  browser: {
119
121
  isolated: !persistent,
120
122
  ...persistent && userDataDir ? { userDataDir } : {},
@@ -562,8 +564,11 @@ Baseline "${input.filename}" (${params.snapshotType})${targetDesc} recorded; the
562
564
  return { content: [{ type: "text", text: `### Error
563
565
  Pass at most ONE of stopAtStep / stopAtUrl / stopBefore (got ${stopParams.join(", ")}). Omit all three to replay the whole trace.` }], isError: true };
564
566
  let loadedActions;
567
+ let sourceDiagnostics;
565
568
  try {
566
- loadedActions = await (0, import_skyRampImport.actionsFromPath)(params.path);
569
+ const source = await (0, import_skyRampImport.traceSourceFromPath)(params.path);
570
+ loadedActions = source.actions;
571
+ sourceDiagnostics = source.diagnostics;
567
572
  } catch (e) {
568
573
  return { content: [{ type: "text", text: `### Error
569
574
  Failed to load trace from ${params.path}: ${e.message}` }], isError: true };
@@ -571,6 +576,10 @@ Failed to load trace from ${params.path}: ${e.message}` }], isError: true };
571
576
  if (!loadedActions.length)
572
577
  return { content: [{ type: "text", text: `### Error
573
578
  No actions found in ${params.path}.` }], isError: true };
579
+ const diagnosticsNote = sourceDiagnostics.length ? `
580
+
581
+ Note: loaded from a generated test file \u2014 the replayable interaction skeleton was extracted. ${sourceDiagnostics.length} statement(s) were not converted to steps:
582
+ ` + sourceDiagnostics.map((d) => `- line ${d.line}: ${d.text} (${d.reason})`).join("\n") : "";
574
583
  if (params.startAtStep !== void 0 && params.stopAtStep !== void 0 && params.startAtStep > params.stopAtStep)
575
584
  return { content: [{ type: "text", text: `### Error
576
585
  startAtStep (${params.startAtStep}) is after stopAtStep (${params.stopAtStep}).` }], isError: true };
@@ -583,7 +592,7 @@ startAtStep (${params.startAtStep}) is after stopAtStep (${params.stopAtStep}).`
583
592
  ${loadedActions.length} steps in ${params.path}. Nothing was replayed.
584
593
 
585
594
  Steps:
586
- ${stepList}
595
+ ${stepList}${diagnosticsNote}
587
596
 
588
597
  Call skyramp_load_trace again to replay: set startAtStep to skip a stale prefix (e.g. an old login) and/or one of stopAtStep / stopAtUrl / stopBefore to stop early. Omit all to replay the whole trace.`
589
598
  }]
@@ -680,7 +689,7 @@ You can continue recording from this point or fix the issue.` : "";
680
689
  content: [{
681
690
  type: "text",
682
691
  text: `### Trace replayed
683
- ${replayedCount} of ${loadedActions.length} steps replayed from ${params.path}.${skippedNote} ${stoppedNote}${errorNote}
692
+ ${replayedCount} of ${loadedActions.length} steps replayed from ${params.path}.${skippedNote} ${stoppedNote}${errorNote}${diagnosticsNote}
684
693
 
685
694
  Remaining steps (NOT replayed):
686
695
  ${remaining}
@@ -1650,6 +1659,8 @@ Cell row ${params.row}, column ${params.column} has "${actual}", expected "${par
1650
1659
  if (recId && mcpId && recId !== mcpId)
1651
1660
  continue;
1652
1661
  ri++;
1662
+ if (rec.action?.name === "fill" && rec.action.isPassword)
1663
+ ta.isPassword = true;
1653
1664
  const rebuilt = this._rebuildCodeFromRecorder(rec, ta.code);
1654
1665
  if (rebuilt) {
1655
1666
  traceDebug(`[consume] ${ta.toolName} -> ${rebuilt}`);
@@ -24,9 +24,10 @@ function bigSnapshot(chars) {
24
24
  (0, import_vitest.expect)(out).toContain(snapshot);
25
25
  (0, import_vitest.expect)(out).toContain("```yaml");
26
26
  });
27
- (0, import_vitest.it)("also handles a ```javascript fence", () => {
27
+ (0, import_vitest.it)("falls back to line replacement for a non-```js fence (only ```js is spliced)", () => {
28
28
  const out = (0, import_resultCode.rewriteResultCodeText)(clickResult(bigSnapshot(500), "javascript"), NEW_CODE);
29
29
  (0, import_vitest.expect)(out).toContain(NEW_CODE);
30
+ (0, import_vitest.expect)(out).not.toContain('await page.getByRole("button", { name: "TextBlock" }).click();');
30
31
  });
31
32
  (0, import_vitest.it)("falls back to line replacement when there is no fenced code block", () => {
32
33
  const text = '### Result\nawait page.getByRole("button").click();\n\n### Page state\n' + bigSnapshot(500);
@@ -325,7 +325,7 @@ function trackedActionToJsonl(action, pageGuid, timestamp) {
325
325
  if (toolName === "browser_type" || toolName === "browser_press_sequentially") {
326
326
  const text = args.text ?? extractFillText(code);
327
327
  const name = toolName === "browser_press_sequentially" || args.slowly ? "pressSequentially" : "fill";
328
- return JSON.stringify({ name, selector, text, locator: locatorObj, ...base });
328
+ return JSON.stringify({ name, selector, text, isPassword: action.isPassword || void 0, locator: locatorObj, ...base });
329
329
  }
330
330
  if (toolName === "browser_fill_form") {
331
331
  return null;
@@ -42,3 +42,33 @@ function jsonlFor(action) {
42
42
  (0, import_vitest.expect)(entry.state).toBe("hidden");
43
43
  });
44
44
  });
45
+ (0, import_vitest.describe)("browser_type \u2192 isPassword flag", () => {
46
+ function typeAction(extra = {}) {
47
+ return {
48
+ toolName: "browser_type",
49
+ args: { text: "s3cret" },
50
+ code: `await page.locator('#login-password').fill('s3cret');`,
51
+ timestamp: 1e3,
52
+ ...extra
53
+ };
54
+ }
55
+ (0, import_vitest.it)("marks a fill correlated to a password input", () => {
56
+ const entry = jsonlFor(typeAction({ isPassword: true }));
57
+ (0, import_vitest.expect)(entry.name).toBe("fill");
58
+ (0, import_vitest.expect)(entry.isPassword).toBe(true);
59
+ });
60
+ (0, import_vitest.it)("omits the key entirely when not a password", () => {
61
+ const line = (0, import_skyRampExport.trackedActionToJsonl)(typeAction(), "guid-1", 1e3);
62
+ (0, import_vitest.expect)(JSON.parse(line).isPassword).toBeUndefined();
63
+ (0, import_vitest.expect)(line).not.toContain("isPassword");
64
+ });
65
+ (0, import_vitest.it)("omits the key when correlation reported false", () => {
66
+ const line = (0, import_skyRampExport.trackedActionToJsonl)(typeAction({ isPassword: false }), "guid-1", 1e3);
67
+ (0, import_vitest.expect)(line).not.toContain("isPassword");
68
+ });
69
+ (0, import_vitest.it)("carries the flag through pressSequentially too", () => {
70
+ const entry = jsonlFor(typeAction({ args: { text: "s3cret", slowly: true }, isPassword: true }));
71
+ (0, import_vitest.expect)(entry.name).toBe("pressSequentially");
72
+ (0, import_vitest.expect)(entry.isPassword).toBe(true);
73
+ });
74
+ });