@skyramp/mcp 0.4.1 → 0.4.2-rc.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.
- package/build/adapters/jestAdapter.js +23 -5
- package/build/adapters/mochaAdapter.js +7 -1
- package/build/adapters/playwrightAdapter.js +3 -1
- package/build/adapters/pytestAdapter.js +14 -3
- package/build/commands/localDevTestChangesCommand.js +1 -0
- package/build/commands/recommendTestsAndExecuteCommand.js +5 -6
- package/build/commands/testThisEndpointCommand.js +16 -4
- package/build/index.js +34 -4
- package/build/playwright/blueprintDigest.js +28 -7
- package/build/playwright/registerPlaywrightTools.js +33 -28
- package/build/playwright/traceRecordingPrompt.js +9 -2
- package/build/prompts/code-reuse.js +95 -29
- package/build/prompts/fix-error-prompt.d.ts +9 -1
- package/build/prompts/fix-error-prompt.js +31 -28
- package/build/prompts/local-dev/local-dev-plan.d.ts +3 -0
- package/build/prompts/local-dev/local-dev-plan.js +3 -1
- package/build/prompts/local-dev/local-dev-prompts.d.ts +1 -1
- package/build/prompts/local-dev/local-dev-prompts.js +30 -3
- package/build/prompts/modularization/integration-test-modularization.js +13 -6
- package/build/prompts/modularization/ui-test-modularization.js +1 -1
- package/build/prompts/personas.js +1 -1
- package/build/prompts/pom-aware-code-reuse.js +7 -9
- package/build/prompts/reuse-hand-off.d.ts +64 -0
- package/build/prompts/reuse-hand-off.js +130 -0
- package/build/prompts/shared-helper-policy.d.ts +88 -2
- package/build/prompts/shared-helper-policy.js +145 -11
- package/build/prompts/sut-setup/modes/adaptWorkflowPrompt.js +1 -1
- package/build/prompts/sut-setup/modes/dockerComposePrompt.js +1 -1
- package/build/prompts/sut-setup/shared.d.ts +4 -1
- package/build/prompts/sut-setup/shared.js +2 -2
- package/build/prompts/test-maintenance/actionsInstructions.d.ts +19 -11
- package/build/prompts/test-maintenance/actionsInstructions.js +47 -26
- package/build/prompts/test-maintenance/drift-analysis-prompt.js +3 -2
- package/build/prompts/test-maintenance/driftAnalysisSections.js +5 -3
- package/build/prompts/test-maintenance/driftAnalysisShared.js +4 -2
- package/build/prompts/test-maintenance/uiDriftAnalysisSections.js +7 -4
- package/build/prompts/test-recommendation/recommendationSections.js +19 -8
- package/build/prompts/test-recommendation/registerRecommendTestsPrompt.js +5 -2
- package/build/prompts/test-recommendation/test-recommendation-prompt.js +10 -7
- package/build/prompts/testbot/testbot-prompts.js +123 -55
- package/build/recommendation/answers.js +18 -9
- package/build/recommendation/pullRequestText.js +1 -1
- package/build/recommendation/registerPlan.js +31 -17
- package/build/recommendation/subjectStep.d.ts +8 -10
- package/build/recommendation/subjectStep.js +17 -16
- package/build/recommendation/types.d.ts +71 -17
- package/build/recommendation/types.js +9 -15
- package/build/recommendation/verifierContracts.d.ts +7 -3
- package/build/recommendation/verifierContracts.js +8 -4
- package/build/recommendation/verifiers/changedFile.js +11 -13
- package/build/recommendation/verifiers/citedPath.d.ts +8 -0
- package/build/recommendation/verifiers/citedPath.js +16 -2
- package/build/recommendation/verifiers/coverage.d.ts +2 -2
- package/build/recommendation/verifiers/coverage.js +190 -134
- package/build/recommendation/verifiers/defects.js +56 -16
- package/build/recommendation/verifiers/deliveredMatchesPlan.d.ts +7 -1
- package/build/recommendation/verifiers/deliveredMatchesPlan.js +28 -14
- package/build/recommendation/verifiers/endpointGrounded.js +14 -8
- package/build/recommendation/verifiers/existingCoverage.d.ts +6 -0
- package/build/recommendation/verifiers/existingCoverage.js +30 -21
- package/build/recommendation/verifiers/expectedOutcome.js +17 -8
- package/build/recommendation/verifiers/expectedValueSourced.js +54 -43
- package/build/recommendation/verifiers/issueTraceability.d.ts +5 -0
- package/build/recommendation/verifiers/issueTraceability.js +64 -7
- package/build/recommendation/verifiers/removedElementGuarded.js +19 -11
- package/build/recommendation/verifiers/reportedCategory.js +9 -4
- package/build/recommendation/verifiers/requirementSourced.js +34 -21
- package/build/recommendation/verifiers/screenRoute.js +15 -10
- package/build/recommendation/verifiers/statedDifference.js +15 -8
- package/build/recommendation/verifiers/uiElementGrounded.js +50 -16
- package/build/resources/analysisResources.js +7 -3
- package/build/resources/progressResource.js +4 -2
- package/build/resources/sutSetupResource.js +20 -2
- package/build/resources/testbotResource.js +19 -1
- package/build/services/AnalyticsService.js +3 -1
- package/build/services/ScenarioGenerationService.js +5 -5
- package/build/services/TestDiscoveryService.js +21 -5
- package/build/services/TestExecutionService.js +63 -21
- package/build/services/TestGenerationService.d.ts +1 -1
- package/build/services/TestGenerationService.js +43 -24
- package/build/skills/enhanceAssertionsSkill.d.ts +45 -0
- package/build/skills/enhanceAssertionsSkill.js +103 -0
- package/build/skills/fixTestImportErrorsSkill.d.ts +2 -2
- package/build/skills/fixTestImportErrorsSkill.js +2 -2
- package/build/skills/skillFiles.d.ts +38 -0
- package/build/skills/skillFiles.js +94 -0
- package/build/skills/validateAssertionAlignmentSkill.d.ts +34 -0
- package/build/skills/validateAssertionAlignmentSkill.js +59 -0
- package/build/tool-phases.js +4 -0
- package/build/tools/auth/loginTool.js +3 -1
- package/build/tools/auth/logoutTool.js +3 -1
- package/build/tools/code-refactor/alignAssertionsTool.d.ts +2 -0
- package/build/tools/code-refactor/alignAssertionsTool.js +51 -0
- package/build/tools/code-refactor/assertion-state.d.ts +1 -1
- package/build/tools/code-refactor/assertion-state.js +1 -1
- package/build/tools/code-refactor/assertionOperations.d.ts +44 -0
- package/build/tools/code-refactor/assertionOperations.js +82 -0
- package/build/tools/code-refactor/assertionSkillTools.d.ts +3 -0
- package/build/tools/code-refactor/assertionSkillTools.js +86 -0
- package/build/tools/code-refactor/codeReuseTool.js +27 -3
- package/build/tools/code-refactor/enhanceAssertionsTool.js +19 -83
- package/build/tools/code-refactor/gate-markers.d.ts +51 -0
- package/build/tools/code-refactor/gate-markers.js +95 -0
- package/build/tools/code-refactor/retrofit-state.d.ts +3 -1
- package/build/tools/code-refactor/retrofit-state.js +44 -2
- package/build/tools/code-refactor/reuse-outcome.d.ts +23 -1
- package/build/tools/code-refactor/reuse-outcome.js +36 -13
- package/build/tools/code-refactor/reuse-state.d.ts +90 -16
- package/build/tools/code-refactor/reuse-state.js +191 -61
- package/build/tools/code-refactor/utils-verify-gates.d.ts +4 -0
- package/build/tools/code-refactor/utils-verify-gates.js +252 -27
- package/build/tools/code-refactor/verify-gates.d.ts +15 -1
- package/build/tools/code-refactor/verify-gates.js +36 -4
- package/build/tools/enrichTestWithMocksTool.d.ts +1 -1
- package/build/tools/enrichTestWithMocksTool.js +9 -5
- package/build/tools/executeSkyrampTestTool.d.ts +22 -1
- package/build/tools/executeSkyrampTestTool.js +571 -271
- package/build/tools/execution-video-state.js +1 -1
- package/build/tools/fixErrorTool.js +5 -6
- package/build/tools/generate-tests/batchMockGenerationTool.js +1 -1
- package/build/tools/generate-tests/generateBatchScenarioRestTool.js +114 -73
- package/build/tools/generate-tests/generateContractRestTool.js +34 -16
- package/build/tools/generate-tests/generateE2ERestTool.d.ts +1 -0
- package/build/tools/generate-tests/generateE2ERestTool.js +9 -1
- package/build/tools/generate-tests/generateIntegrationRestTool.js +22 -7
- package/build/tools/generate-tests/generateMockRestTool.js +3 -1
- package/build/tools/generate-tests/generateUIRestTool.d.ts +2 -0
- package/build/tools/generate-tests/generateUIRestTool.js +11 -2
- package/build/tools/generate-tests/loadTestSchema.js +1 -3
- package/build/tools/generate-tests/planGuard.js +6 -3
- package/build/tools/generate-tests/scenarioFileIdentity.js +4 -1
- package/build/tools/generate-tests/scenarioLint.js +17 -5
- package/build/tools/generate-tests/trace-reuse-guard.js +5 -2
- package/build/tools/generateEnrichedIntegrationTestTool.js +9 -3
- package/build/tools/one-click/oneClickTool.js +3 -1
- package/build/tools/preflightMockCheckTool.js +23 -7
- package/build/tools/runExistingTestsTool.d.ts +1 -1
- package/build/tools/runExistingTestsTool.js +43 -21
- package/build/tools/submitReportTool.d.ts +51 -12
- package/build/tools/submitReportTool.js +860 -161
- package/build/tools/test-management/actionsTool.js +210 -51
- package/build/tools/test-management/analyzeChangesTool.d.ts +4 -5
- package/build/tools/test-management/analyzeChangesTool.js +127 -68
- package/build/tools/test-management/analyzeTestHealthTool.js +35 -13
- package/build/tools/test-management/registerTestPlanTool.d.ts +44 -34
- package/build/tools/test-management/registerTestPlanTool.js +255 -111
- package/build/tools/test-management/resolveScreenTool.js +33 -9
- package/build/tools/trace/startTraceCollectionTool.js +3 -1
- package/build/tools/trace/stopTraceCollectionTool.js +41 -5
- package/build/tools/verifyTestDependenciesTool.d.ts +3 -0
- package/build/tools/verifyTestDependenciesTool.js +54 -0
- package/build/tools/workspace/initScanWorkspaceTool.js +9 -3
- package/build/tools/workspace/initializeWorkspaceTool.js +3 -1
- package/build/types/AssertionOutcome.d.ts +1 -1
- package/build/types/EnhanceType.d.ts +6 -0
- package/build/types/EnhanceType.js +1 -0
- package/build/types/ExternalTestExecution.d.ts +2 -2
- package/build/types/RepositoryAnalysis.d.ts +0 -40
- package/build/types/ReuseOutcome.d.ts +96 -4
- package/build/types/ReuseOutcome.js +16 -0
- package/build/types/StepMethod.js +20 -6
- package/build/types/TestAnalysis.d.ts +10 -2
- package/build/types/TestExecution.d.ts +45 -0
- package/build/types/TestRecommendation.d.ts +1 -1
- package/build/types/TestRecommendation.js +4 -1
- package/build/types/TestTypes.d.ts +13 -0
- package/build/types/TestTypes.js +34 -3
- package/build/types/TestbotPromptOptions.d.ts +9 -1
- package/build/types/TestbotReport.d.ts +45 -9
- package/build/utils/AnalysisStateManager.d.ts +137 -27
- package/build/utils/AnalysisStateManager.js +227 -43
- package/build/utils/assertion-verify/api-shared-lints.js +34 -16
- package/build/utils/assertion-verify/metrics.js +39 -6
- package/build/utils/assertion-verify/ui-lints.js +4 -2
- package/build/utils/branchDiff.js +47 -12
- package/build/utils/canonicalJson.js +3 -1
- package/build/utils/dartRouteExtractor.js +36 -7
- package/build/utils/fixAttempts.d.ts +26 -0
- package/build/utils/fixAttempts.js +109 -0
- package/build/utils/frontendSelectors.js +23 -4
- package/build/utils/generatedTestRecord.d.ts +19 -0
- package/build/utils/generatedTestRecord.js +61 -0
- package/build/utils/gitStaging.js +7 -2
- package/build/utils/initAgent.js +26 -6
- package/build/utils/language-helper.js +39 -45
- package/build/utils/pathMatching.js +2 -1
- package/build/utils/pathSignatures.js +6 -2
- package/build/utils/planMatchKeys.d.ts +2 -2
- package/build/utils/planMatchKeys.js +20 -14
- package/build/utils/pom-catalog-parse.js +7 -2
- package/build/utils/pom-scope/import-expansion.js +6 -1
- package/build/utils/pom-scope/index.js +50 -12
- package/build/utils/pom-scope/scoring.js +13 -3
- package/build/utils/pom-scope/selector-extractor.js +16 -3
- package/build/utils/pom-scope/strip.d.ts +8 -0
- package/build/utils/pom-scope/strip.js +238 -0
- package/build/utils/pom-scope/testIdDiscovery.js +14 -2
- package/build/utils/pom-verify/__fixtures__/af-style/asset-list.page.d.ts +1 -1
- package/build/utils/pom-verify/__fixtures__/af-style/asset-list.page.js +4 -2
- package/build/utils/pom-verify/__fixtures__/af-style/report.iframe.page.js +3 -1
- package/build/utils/pom-verify/__fixtures__/af-style/workflow-footer.page.js +3 -1
- package/build/utils/pom-verify/bindings.js +5 -1
- package/build/utils/pom-verify/calls.js +9 -2
- package/build/utils/pom-verify/verify.js +27 -5
- package/build/utils/pr-comment-parser.js +20 -7
- package/build/utils/proxy-terminal.d.ts +19 -1
- package/build/utils/proxy-terminal.js +346 -21
- package/build/utils/removedUiElements.js +1 -1
- package/build/utils/reportLanguage.js +35 -7
- package/build/utils/reportVerification.d.ts +14 -8
- package/build/utils/reportVerification.js +19 -19
- package/build/utils/repositorySlug.d.ts +32 -0
- package/build/utils/repositorySlug.js +77 -0
- package/build/utils/reuseRouting.js +6 -2
- package/build/utils/runSerialized.d.ts +3 -0
- package/build/utils/runSerialized.js +39 -0
- package/build/utils/screenRoutes.js +74 -18
- package/build/utils/sourceRouteExtractor.js +13 -6
- package/build/utils/telemetry.d.ts +1 -0
- package/build/utils/telemetry.js +8 -5
- package/build/utils/testDependencyPolicy.d.ts +9 -0
- package/build/utils/testDependencyPolicy.js +788 -0
- package/build/utils/testExecutionRecord.d.ts +90 -0
- package/build/utils/testExecutionRecord.js +267 -0
- package/build/utils/testFileClassification.js +3 -1
- package/build/utils/trace-parser.js +62 -14
- package/build/utils/urlPath.js +3 -1
- package/build/utils/utils-verify/action-key.d.ts +4 -0
- package/build/utils/utils-verify/action-key.js +2 -2
- package/build/utils/utils-verify/allow.d.ts +122 -3
- package/build/utils/utils-verify/allow.js +146 -21
- package/build/utils/utils-verify/body-reach.d.ts +120 -0
- package/build/utils/utils-verify/body-reach.js +335 -0
- package/build/utils/utils-verify/call-sites.d.ts +6 -1
- package/build/utils/utils-verify/call-sites.js +72 -8
- package/build/utils/utils-verify/delivered-imports.d.ts +43 -0
- package/build/utils/utils-verify/delivered-imports.js +84 -0
- package/build/utils/utils-verify/fixed-sleep.d.ts +96 -0
- package/build/utils/utils-verify/fixed-sleep.js +461 -0
- package/build/utils/utils-verify/in-house.d.ts +93 -0
- package/build/utils/utils-verify/in-house.js +719 -0
- package/build/utils/utils-verify/incumbent.d.ts +3 -0
- package/build/utils/utils-verify/incumbent.js +75 -0
- package/build/utils/utils-verify/index.d.ts +1 -0
- package/build/utils/utils-verify/index.js +1 -0
- package/build/utils/utils-verify/language-spec.d.ts +26 -10
- package/build/utils/utils-verify/language-spec.js +217 -20
- package/build/utils/utils-verify/locate.d.ts +26 -0
- package/build/utils/utils-verify/locate.js +125 -23
- package/build/utils/utils-verify/module-name.d.ts +40 -0
- package/build/utils/utils-verify/module-name.js +98 -0
- package/build/utils/utils-verify/parse.d.ts +46 -6
- package/build/utils/utils-verify/parse.js +176 -38
- package/build/utils/utils-verify/retrofit-equivalence.d.ts +5 -0
- package/build/utils/utils-verify/retrofit-equivalence.js +4 -2
- package/build/utils/utils-verify/stage.d.ts +5 -0
- package/build/utils/utils-verify/stage.js +47 -2
- package/build/utils/utils-verify/status-once.d.ts +62 -0
- package/build/utils/utils-verify/status-once.js +207 -0
- package/build/utils/utils-verify/typecheck.d.ts +61 -0
- package/build/utils/utils-verify/typecheck.js +338 -0
- package/build/utils/utils-verify/verify.d.ts +76 -1
- package/build/utils/utils-verify/verify.js +516 -44
- package/build/utils/versions.d.ts +3 -3
- package/build/utils/versions.js +1 -1
- package/build/utils/workspaceAuth.js +107 -37
- package/build/workspace/queryParamResolution.js +11 -4
- package/build/workspace/workspace.js +7 -7
- package/node_modules/playwright/ThirdPartyNotices.txt +19 -19
- package/node_modules/playwright/lib/mcp/skyramp/assertTool.js +8 -2
- package/node_modules/playwright/lib/mcp/skyramp/common/cssValue.js +87 -0
- package/node_modules/playwright/lib/mcp/skyramp/loadTraceTool.js +31 -0
- package/node_modules/playwright/lib/mcp/skyramp/skyRampImport.js +3 -0
- package/node_modules/playwright/lib/mcp/skyramp/traceRecordingBackend.js +181 -15
- package/node_modules/playwright/lib/mcp/test/skyRampExport.js +24 -0
- package/node_modules/playwright/lib/transform/babelBundleImpl.js +2353 -190
- package/node_modules/playwright/node_modules/playwright-core/ThirdPartyNotices.txt +62 -34
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/.package-lock.json +72 -41
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/@hono/node-server/dist/serve-static.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/@hono/node-server/dist/serve-static.mjs +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/@hono/node-server/package.json +2 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/README.md +16 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/index.js +4 -20
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/read.js +17 -17
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/types/json.js +60 -32
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/types/raw.js +3 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/types/text.js +3 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/types/urlencoded.js +16 -20
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/lib/utils.js +18 -16
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/README.md +71 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +46 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/dist/index.js +176 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/node_modules/content-type/package.json +52 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/body-parser/package.json +23 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/es-object-atoms/CHANGELOG.md +21 -14
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/es-object-atoms/isObject.d.ts +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/es-object-atoms/package.json +6 -7
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/es-object-atoms/tsconfig.json +1 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/index.js +266 -45
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/lib/schemes.js +9 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/lib/utils.js +396 -92
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/package.json +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/component-safe-serialization.test.js +163 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/equal.test.js +31 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/fixtures/uri-js-parse.json +2 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/ipv6-canonical.test.js +34 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/ipv6-validation.test.js +124 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/malformed-percent.test.js +77 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/malformed-urn.test.js +61 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/parse.test.js +7 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/query-fragment-normalization.test.js +33 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/reserved-path-normalization.test.js +109 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/scheme-validation.test.js +124 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/security-normalization.test.js +101 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/security.test.js +301 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/urn-full-input.test.js +29 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/fast-uri/test/websocket-query-preservation.test.js +24 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hasown/CHANGELOG.md +7 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hasown/index.d.ts +0 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hasown/package.json +4 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/client/client.js +30 -16
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/client/utils.js +4 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/context.js +32 -13
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/accepts/accepts.js +36 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/proxy/index.js +4 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/ssg/ssg.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/ssg/utils.js +30 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/helper/streaming/sse.js +5 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/hono-base.js +10 -8
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/base.js +44 -23
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/components.js +25 -26
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/context.js +5 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/dom/render.js +2 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/dom/server.js +5 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/hooks/index.js +16 -13
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/intrinsic-element/components.js +3 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/jsx/streaming.js +4 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/cache/index.js +103 -8
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/compress/index.js +5 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/cors/index.js +17 -14
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/csrf/index.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/etag/digest.js +47 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/etag/index.js +7 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/jwk/jwk.js +9 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/jwt/jwt.js +9 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/language/language.js +10 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/method-not-allowed/index.js +90 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/pretty-json/index.js +3 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/middleware/secure-headers/secure-headers.js +16 -7
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/request.js +20 -13
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/linear-router/router.js +7 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/pattern-router/router.js +3 -9
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/reg-exp-router/node.js +65 -59
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/reg-exp-router/router.js +71 -128
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/reg-exp-router/trie.js +14 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/trie-router/node.js +47 -70
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/trie-router/router.js +3 -11
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router/utils.js +27 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/router.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/accept.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/body.js +21 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/cookie.js +4 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/ipaddr.js +5 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/stream.js +12 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/cjs/utils/url.js +19 -11
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/client/client.js +30 -16
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/client/utils.js +4 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/context.js +32 -13
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/accepts/accepts.js +36 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/proxy/index.js +4 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/ssg/ssg.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/ssg/utils.js +30 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/helper/streaming/sse.js +5 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/hono-base.js +10 -8
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/base.js +41 -23
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/components.js +26 -27
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/context.js +6 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/dom/render.js +2 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/dom/server.js +5 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/hooks/index.js +16 -13
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/intrinsic-element/components.js +4 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/jsx/streaming.js +5 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/cache/index.js +103 -8
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/compress/index.js +5 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/cors/index.js +17 -14
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/csrf/index.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/etag/digest.js +47 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/etag/index.js +7 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/jwk/jwk.js +9 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/jwt/jwt.js +9 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/language/language.js +10 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/method-not-allowed/index.js +68 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/pretty-json/index.js +3 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/middleware/secure-headers/secure-headers.js +16 -7
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/request.js +21 -14
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/linear-router/router.js +7 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/pattern-router/router.js +3 -9
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/reg-exp-router/node.js +61 -58
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/reg-exp-router/router.js +77 -129
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/reg-exp-router/trie.js +14 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/trie-router/node.js +47 -70
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/trie-router/router.js +3 -11
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router/utils.js +5 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/router.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/adapter/aws-lambda/types.d.ts +9 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/client/types.d.ts +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/context.d.ts +6 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/hono-base.d.ts +4 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/base.d.ts +7 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/dom/index.d.ts +5 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/dom/intrinsic-element/components.d.ts +2 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/dom/server.d.ts +5 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/hooks/index.d.ts +8 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/jsx/index.d.ts +5 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/cache/index.d.ts +6 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/combine/index.d.ts +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/cors/index.d.ts +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/jsx-renderer/index.d.ts +2 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/jwk/jwk.d.ts +2 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/jwt/jwt.d.ts +2 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/method-not-allowed/index.d.ts +49 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/middleware/secure-headers/permissions-policy.d.ts +3 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router/reg-exp-router/node.d.ts +4 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router/reg-exp-router/trie.d.ts +2 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router/trie-router/node.d.ts +1 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router/trie-router/router.d.ts +0 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router/utils.d.ts +1 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/router.d.ts +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/utils/headers.d.ts +2 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/types/utils/url.d.ts +5 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/accept.js +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/body.js +21 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/cookie.js +5 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/ipaddr.js +5 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/stream.js +12 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/dist/utils/url.js +17 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/hono/package.json +11 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/README.md +173 -143
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/address-error.d.ts +11 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/address-error.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/common.d.ts +49 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/common.js +79 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/common.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv4.d.ts +78 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv4.js +119 -24
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv4.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv6.d.ts +151 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv6.js +316 -90
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/ipv6.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v4/constants.d.ts +12 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v4/constants.js +45 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v4/constants.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v6/constants.d.ts +14 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v6/constants.js +50 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/dist/v6/constants.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/ip-address/package.json +6 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/.github/THREAT_MODEL.md +3 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/CHANGELOG.md +26 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/README.md +19 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/dist/qs.js +25 -25
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/eslint.config.mjs +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/lib/parse.js +16 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/lib/stringify.js +23 -8
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/lib/utils.js +57 -11
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/package.json +8 -7
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/test/parse.js +419 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/test/stringify.js +317 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/qs/test/utils.js +206 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/side-channel/CHANGELOG.md +10 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/side-channel/README.md +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/side-channel/index.js +5 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/side-channel/package.json +10 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/side-channel/test/index.js +16 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/index.js +8 -18
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/LICENSE +22 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/README.md +71 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/dist/index.d.ts +46 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/dist/index.js +176 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/dist/index.js.map +1 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/node_modules/content-type/package.json +52 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/node_modules/type-is/package.json +9 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/mcp/package-lock.json +72 -41
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/.package-lock.json +6 -6
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/brace-expansion/README.md +23 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/brace-expansion/index.js +265 -86
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/brace-expansion/package.json +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/README.md +173 -143
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/address-error.d.ts +11 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/address-error.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/common.d.ts +49 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/common.js +79 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/common.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv4.d.ts +78 -5
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv4.js +119 -24
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv4.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv6.d.ts +151 -10
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv6.js +316 -90
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/ipv6.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v4/constants.d.ts +12 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v4/constants.js +45 -2
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v4/constants.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v6/constants.d.ts +14 -0
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v6/constants.js +50 -3
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/dist/v6/constants.js.map +1 -1
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/node_modules/ip-address/package.json +6 -4
- package/node_modules/playwright/node_modules/playwright-core/bundles/utils/package-lock.json +6 -6
- package/node_modules/playwright/node_modules/playwright-core/lib/cli/program.js +18 -9
- package/node_modules/playwright/node_modules/playwright-core/lib/mcpBundleImpl/index.js +47 -47
- package/node_modules/playwright/node_modules/playwright-core/lib/server/codegen/skyramp/jsonlReader.js +3 -0
- package/node_modules/playwright/node_modules/playwright-core/lib/server/recorder/recorderRunner.js +42 -0
- package/node_modules/playwright/node_modules/playwright-core/lib/utilsBundleImpl/index.js +121 -121
- package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/{index.B7KbSQcC.js → index.BAkLd5DX.js} +1 -1
- package/node_modules/playwright/node_modules/playwright-core/lib/vite/traceViewer/index.html +1 -1
- package/node_modules/playwright/node_modules/playwright-core/package.json +1 -1
- package/node_modules/playwright/node_modules/playwright-core/src/cli/program.ts +31 -9
- package/node_modules/playwright/node_modules/playwright-core/src/server/codegen/skyramp/jsonlReader.ts +1 -0
- package/node_modules/playwright/node_modules/playwright-core/src/server/recorder/recorderRunner.ts +57 -1
- package/node_modules/playwright/package.json +2 -2
- package/package.json +7 -6
- package/plugin/prompts/code-reuse/hand-off.md +30 -0
- package/plugin/prompts/generate-tests/generation.md +1 -1
- package/plugin/prompts/plan-tests.md +14 -14
- package/plugin/prompts/testbot-task1.md +4 -2
- package/plugin/skills/enhance-assertions/SKILL.md +25 -0
- package/plugin/skills/enhance-assertions/reference/contract.md +51 -0
- package/plugin/skills/enhance-assertions/reference/integration.md +58 -0
- package/plugin/skills/enhance-assertions/reference/shared-rules.md +220 -0
- package/plugin/skills/enhance-assertions/reference/ui.md +373 -0
- package/plugin/skills/fix-test-import-errors/SKILL.md +44 -50
- package/plugin/skills/validate-assertion-alignment-post-execution/SKILL.md +32 -0
- package/plugin/skills/validate-assertion-alignment-post-execution/reference/checks.md +44 -0
- package/plugin/skills/validate-assertion-alignment-post-execution/reference/evidence.md +47 -0
- package/build/prompts/enhance-assertions/contractProviderAssertionsPrompt.d.ts +0 -2
- package/build/prompts/enhance-assertions/contractProviderAssertionsPrompt.js +0 -29
- package/build/prompts/enhance-assertions/integrationAssertionsPrompt.d.ts +0 -2
- package/build/prompts/enhance-assertions/integrationAssertionsPrompt.js +0 -36
- package/build/prompts/enhance-assertions/sharedAssertionRules.d.ts +0 -16
- package/build/prompts/enhance-assertions/sharedAssertionRules.js +0 -284
- package/build/prompts/enhance-assertions/uiAssertionsPrompt.d.ts +0 -2
- package/build/prompts/enhance-assertions/uiAssertionsPrompt.js +0 -388
- package/node_modules/playwright/node_modules/playwright-core/.DS_Store +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const SKYRAMP_IMAGE_VERSION = "v1.3.
|
|
2
|
-
export declare const EXECUTOR_DOCKER_IMAGE = "skyramp/executor:v1.3.
|
|
3
|
-
export declare const WORKER_DOCKER_IMAGE = "skyramp/worker:v1.3.
|
|
1
|
+
export declare const SKYRAMP_IMAGE_VERSION = "v1.3.46";
|
|
2
|
+
export declare const EXECUTOR_DOCKER_IMAGE = "skyramp/executor:v1.3.46";
|
|
3
|
+
export declare const WORKER_DOCKER_IMAGE = "skyramp/worker:v1.3.46";
|
|
4
4
|
export declare const WORKER_CONTROL_PORT = 35142;
|
package/build/utils/versions.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const SKYRAMP_IMAGE_VERSION = "v1.3.
|
|
1
|
+
export const SKYRAMP_IMAGE_VERSION = "v1.3.46";
|
|
2
2
|
export const EXECUTOR_DOCKER_IMAGE = `skyramp/executor:${SKYRAMP_IMAGE_VERSION}`;
|
|
3
3
|
export const WORKER_DOCKER_IMAGE = `skyramp/worker:${SKYRAMP_IMAGE_VERSION}`;
|
|
4
4
|
// Control port the Skyramp worker listens on (SDK `CONTAINER_PORT`).
|
|
@@ -2,7 +2,7 @@ import * as fs from "fs";
|
|
|
2
2
|
import path from "path";
|
|
3
3
|
import yaml from "js-yaml";
|
|
4
4
|
import { WorkspaceConfigManager } from "../workspace/workspace.js";
|
|
5
|
-
import { normalizeBaseMap, normalizeOverrides } from "../workspace/queryParamResolution.js";
|
|
5
|
+
import { normalizeBaseMap, normalizeOverrides, } from "../workspace/queryParamResolution.js";
|
|
6
6
|
import { logger } from "./logger.js";
|
|
7
7
|
import { getTestsRepoDir } from "./AnalysisStateManager.js";
|
|
8
8
|
/**
|
|
@@ -21,7 +21,7 @@ import { getTestsRepoDir } from "./AnalysisStateManager.js";
|
|
|
21
21
|
*/
|
|
22
22
|
export async function readWorkspaceConfigRaw(workspacePath) {
|
|
23
23
|
const wsMgr = new WorkspaceConfigManager(workspacePath);
|
|
24
|
-
if (!await wsMgr.exists())
|
|
24
|
+
if (!(await wsMgr.exists()))
|
|
25
25
|
return null;
|
|
26
26
|
try {
|
|
27
27
|
return await wsMgr.read();
|
|
@@ -80,11 +80,14 @@ function servicesForTestPath(services, repositoryPath, absTestPath, testRepoPath
|
|
|
80
80
|
let matches = services.filter((s) => {
|
|
81
81
|
// The strict schema rejects a non-string testDirectory, but readWorkspaceConfigRaw
|
|
82
82
|
// falls back to a raw YAML parse and hands one straight through to path.resolve.
|
|
83
|
-
if (typeof s?.testDirectory !== "string" ||
|
|
83
|
+
if (typeof s?.testDirectory !== "string" ||
|
|
84
|
+
!s.testDirectory ||
|
|
85
|
+
!s.api?.baseUrl)
|
|
84
86
|
return false;
|
|
85
87
|
return testDirRoots.some((root) => {
|
|
86
88
|
const absTestDirectory = path.resolve(root, s.testDirectory);
|
|
87
|
-
return absTestPath.startsWith(absTestDirectory + path.sep) ||
|
|
89
|
+
return (absTestPath.startsWith(absTestDirectory + path.sep) ||
|
|
90
|
+
absTestPath === absTestDirectory);
|
|
88
91
|
});
|
|
89
92
|
});
|
|
90
93
|
if (matches.length > 1) {
|
|
@@ -95,7 +98,11 @@ function servicesForTestPath(services, repositoryPath, absTestPath, testRepoPath
|
|
|
95
98
|
return matches;
|
|
96
99
|
}
|
|
97
100
|
export async function getWorkspaceBaseUrl(repositoryPath, testFile, language, testRepoPath) {
|
|
98
|
-
const noMatch = {
|
|
101
|
+
const noMatch = {
|
|
102
|
+
baseUrl: undefined,
|
|
103
|
+
dockerNetwork: undefined,
|
|
104
|
+
candidates: [],
|
|
105
|
+
};
|
|
99
106
|
if (!testFile)
|
|
100
107
|
return noMatch;
|
|
101
108
|
try {
|
|
@@ -195,32 +202,75 @@ export const KNOWN_AUTH_HEADERS = new Set([
|
|
|
195
202
|
*/
|
|
196
203
|
export const AUTH_MIDDLEWARE_PATTERNS = [
|
|
197
204
|
// Python — FastAPI / Starlette
|
|
198
|
-
"HTTPBearer",
|
|
199
|
-
"
|
|
205
|
+
"HTTPBearer",
|
|
206
|
+
"OAuth2PasswordBearer",
|
|
207
|
+
"security.HTTPAuthorizationCredentials",
|
|
208
|
+
"Depends(get_current_user)",
|
|
209
|
+
"Depends(oauth2_scheme)",
|
|
210
|
+
"jwt_required",
|
|
211
|
+
"login_required",
|
|
200
212
|
// Python — Django / DRF
|
|
201
|
-
"IsAuthenticated",
|
|
202
|
-
"
|
|
213
|
+
"IsAuthenticated",
|
|
214
|
+
"authentication_classes",
|
|
215
|
+
"permission_classes",
|
|
216
|
+
"TokenAuthentication",
|
|
217
|
+
"SessionAuthentication",
|
|
218
|
+
"@login_required",
|
|
219
|
+
"@permission_required",
|
|
203
220
|
// Node.js — Express / NestJS / general
|
|
204
|
-
"passport.authenticate",
|
|
205
|
-
"
|
|
206
|
-
"
|
|
221
|
+
"passport.authenticate",
|
|
222
|
+
"passport",
|
|
223
|
+
"jwt.verify",
|
|
224
|
+
"verifyToken",
|
|
225
|
+
"authMiddleware",
|
|
226
|
+
"req.headers.authorization",
|
|
227
|
+
"@UseGuards",
|
|
228
|
+
"@UseGuards(AuthGuard)",
|
|
229
|
+
"EnsureSessionDep",
|
|
230
|
+
"session middleware",
|
|
207
231
|
// Java / Kotlin — Spring Security
|
|
208
|
-
"@PreAuthorize",
|
|
209
|
-
"
|
|
232
|
+
"@PreAuthorize",
|
|
233
|
+
"@Secured",
|
|
234
|
+
"@RolesAllowed",
|
|
235
|
+
"JwtAuthenticationFilter",
|
|
236
|
+
"OncePerRequestFilter",
|
|
237
|
+
"UsernamePasswordAuthenticationToken",
|
|
238
|
+
"SecurityConfig",
|
|
210
239
|
// Go — Gin / Chi / Echo / Fiber / gorilla
|
|
211
|
-
"ValidateToken",
|
|
212
|
-
"
|
|
240
|
+
"ValidateToken",
|
|
241
|
+
"ParseWithClaims",
|
|
242
|
+
'c.GetHeader("Authorization")',
|
|
243
|
+
"gin.BasicAuth",
|
|
244
|
+
"echo.JWT",
|
|
245
|
+
"fiber.Ctx",
|
|
246
|
+
"r.Use(",
|
|
247
|
+
"chi.Middleware",
|
|
213
248
|
// Ruby on Rails
|
|
214
|
-
"before_action :authenticate_user!",
|
|
215
|
-
"
|
|
249
|
+
"before_action :authenticate_user!",
|
|
250
|
+
"authenticate_or_request_with_http_token",
|
|
251
|
+
"current_user",
|
|
252
|
+
"devise",
|
|
216
253
|
// PHP — Laravel / Symfony
|
|
217
|
-
"Auth::user()",
|
|
218
|
-
"
|
|
254
|
+
"Auth::user()",
|
|
255
|
+
"middleware('auth')",
|
|
256
|
+
"auth:sanctum",
|
|
257
|
+
"auth:api",
|
|
258
|
+
"auth()->user()",
|
|
259
|
+
"#[IsGranted]",
|
|
260
|
+
"access_control",
|
|
261
|
+
"security.yaml",
|
|
219
262
|
// Rust — Axum / Actix
|
|
220
|
-
"FromRequestParts",
|
|
263
|
+
"FromRequestParts",
|
|
264
|
+
"extract::TypedHeader",
|
|
265
|
+
"Authorization<Bearer>",
|
|
221
266
|
// C# — ASP.NET Core
|
|
222
|
-
"[Authorize]",
|
|
223
|
-
"
|
|
267
|
+
"[Authorize]",
|
|
268
|
+
"RequireAuthorization()",
|
|
269
|
+
"AddJwtBearer()",
|
|
270
|
+
"services.AddAuthentication()",
|
|
271
|
+
"ClaimsPrincipal",
|
|
272
|
+
"IAuthorizationService",
|
|
273
|
+
"AuthorizationPolicy",
|
|
224
274
|
];
|
|
225
275
|
/** Rendered as a comma-separated string for use in prompts. */
|
|
226
276
|
export const AUTH_MIDDLEWARE_PATTERNS_STR = AUTH_MIDDLEWARE_PATTERNS.join(", ");
|
|
@@ -271,7 +321,7 @@ export function parseWorkspaceAuthType(value) {
|
|
|
271
321
|
oauth2: WorkspaceAuthType.OAuth,
|
|
272
322
|
oidc: WorkspaceAuthType.OAuth, // OpenID Connect tokens are Bearer
|
|
273
323
|
"api-key": WorkspaceAuthType.ApiKey, // hyphenated variant
|
|
274
|
-
|
|
324
|
+
api_key: WorkspaceAuthType.ApiKey, // underscore variant
|
|
275
325
|
apitoken: WorkspaceAuthType.ApiKey,
|
|
276
326
|
"x-api-key": WorkspaceAuthType.ApiKey,
|
|
277
327
|
"session-cookie": WorkspaceAuthType.Cookie,
|
|
@@ -344,10 +394,14 @@ export function getAuthScheme(authType, explicitScheme) {
|
|
|
344
394
|
if (explicitScheme !== undefined)
|
|
345
395
|
return explicitScheme;
|
|
346
396
|
switch (authType) {
|
|
347
|
-
case WorkspaceAuthType.Bearer:
|
|
348
|
-
|
|
349
|
-
case WorkspaceAuthType.
|
|
350
|
-
|
|
397
|
+
case WorkspaceAuthType.Bearer:
|
|
398
|
+
return "Bearer";
|
|
399
|
+
case WorkspaceAuthType.Basic:
|
|
400
|
+
return "Basic";
|
|
401
|
+
case WorkspaceAuthType.Token:
|
|
402
|
+
return "Token"; // Django REST Framework
|
|
403
|
+
case WorkspaceAuthType.OAuth:
|
|
404
|
+
return "Bearer"; // OAuth 2.0 access tokens use Bearer
|
|
351
405
|
default:
|
|
352
406
|
return undefined;
|
|
353
407
|
}
|
|
@@ -358,8 +412,12 @@ export function getAuthScheme(authType, explicitScheme) {
|
|
|
358
412
|
* unified file names `api` once per repository (`src/workspace/workspace.ts`). */
|
|
359
413
|
function servicesByName(rawConfig) {
|
|
360
414
|
const byName = new Map();
|
|
361
|
-
for (const service of Array.isArray(rawConfig?.services)
|
|
362
|
-
|
|
415
|
+
for (const service of Array.isArray(rawConfig?.services)
|
|
416
|
+
? rawConfig.services
|
|
417
|
+
: []) {
|
|
418
|
+
const name = typeof service?.serviceName === "string"
|
|
419
|
+
? service.serviceName.trim()
|
|
420
|
+
: "";
|
|
363
421
|
if (!name)
|
|
364
422
|
continue;
|
|
365
423
|
const group = byName.get(name);
|
|
@@ -437,7 +495,8 @@ export function findWorkspaceAuthDisagreement(primaryConfig, analysedConfig, pri
|
|
|
437
495
|
const field = primaryAuth.authType !== analysedAuth.authType
|
|
438
496
|
? "authType"
|
|
439
497
|
: // A header name is not case-sensitive, so two spellings are one header.
|
|
440
|
-
primaryAuth.authHeader.toLowerCase() !==
|
|
498
|
+
primaryAuth.authHeader.toLowerCase() !==
|
|
499
|
+
analysedAuth.authHeader.toLowerCase()
|
|
441
500
|
? "authHeader"
|
|
442
501
|
: primaryAuth.authScheme !== analysedAuth.authScheme
|
|
443
502
|
? "authScheme"
|
|
@@ -506,7 +565,9 @@ function declaresAuth(service) {
|
|
|
506
565
|
* for all of baseUrl, schemaPath and auth, because a baseUrl from the UI beside the
|
|
507
566
|
* API's header would call the wrong host with the right credentials. */
|
|
508
567
|
export function resolveWorkspaceApiService(rawConfig) {
|
|
509
|
-
const services = Array.isArray(rawConfig?.services)
|
|
568
|
+
const services = Array.isArray(rawConfig?.services)
|
|
569
|
+
? rawConfig.services
|
|
570
|
+
: [];
|
|
510
571
|
return (services.find((service) => declaresAuth(service)) ??
|
|
511
572
|
services.find((service) => service?.api && typeof service.api === "object") ??
|
|
512
573
|
services[0]);
|
|
@@ -535,7 +596,9 @@ export async function getWorkspaceAuthConfig(repositoryPath, testPath) {
|
|
|
535
596
|
const rawConfig = await readWorkspaceConfigRaw(workspaceRoot);
|
|
536
597
|
if (!rawConfig)
|
|
537
598
|
return {};
|
|
538
|
-
const services = Array.isArray(rawConfig.services)
|
|
599
|
+
const services = Array.isArray(rawConfig.services)
|
|
600
|
+
? rawConfig.services
|
|
601
|
+
: [];
|
|
539
602
|
const forTest = testPath
|
|
540
603
|
? servicesForTestPath(services, workspaceRoot, path.resolve(workspaceRoot, testPath),
|
|
541
604
|
// The delivery root when the run configures a test repo: the tests go there
|
|
@@ -602,7 +665,8 @@ export async function getWorkspaceScopedQueryParams(repositoryPath) {
|
|
|
602
665
|
try {
|
|
603
666
|
const raw = fs.readFileSync(wsConfigPath, "utf-8");
|
|
604
667
|
const parsed = yaml.load(raw);
|
|
605
|
-
const declaring = (parsed?.services ?? []).filter((s) => s?.api?.defaultQueryParams !== undefined ||
|
|
668
|
+
const declaring = (parsed?.services ?? []).filter((s) => s?.api?.defaultQueryParams !== undefined ||
|
|
669
|
+
s?.api?.queryParamOverrides !== undefined);
|
|
606
670
|
const svc = declaring[0];
|
|
607
671
|
if (!svc)
|
|
608
672
|
return undefined;
|
|
@@ -647,7 +711,10 @@ export function mergeQueryParamsString(existing, defaults) {
|
|
|
647
711
|
logger.warning("Skipping workspace defaultQueryParams entry with a non-string value", { key });
|
|
648
712
|
continue;
|
|
649
713
|
}
|
|
650
|
-
if (key.includes(",") ||
|
|
714
|
+
if (key.includes(",") ||
|
|
715
|
+
key.includes("=") ||
|
|
716
|
+
value.includes(",") ||
|
|
717
|
+
value.includes("=")) {
|
|
651
718
|
logger.warning("Skipping workspace defaultQueryParams entry with invalid characters", { key });
|
|
652
719
|
continue;
|
|
653
720
|
}
|
|
@@ -669,7 +736,9 @@ export function mergeQueryParamsJson(existingJson, defaults) {
|
|
|
669
736
|
if (existingJson) {
|
|
670
737
|
try {
|
|
671
738
|
const candidate = JSON.parse(existingJson);
|
|
672
|
-
if (!candidate ||
|
|
739
|
+
if (!candidate ||
|
|
740
|
+
typeof candidate !== "object" ||
|
|
741
|
+
Array.isArray(candidate)) {
|
|
673
742
|
return existingJson;
|
|
674
743
|
}
|
|
675
744
|
parsed = candidate;
|
|
@@ -713,7 +782,8 @@ export async function resolveAuthFromWorkspace(repoPath, existingAuthHeader, exi
|
|
|
713
782
|
});
|
|
714
783
|
let authScheme = existingAuthScheme;
|
|
715
784
|
if (isAuthorizationHeaderName(resolvedHeader)) {
|
|
716
|
-
authScheme =
|
|
785
|
+
authScheme =
|
|
786
|
+
authScheme ?? wsAuth.authScheme ?? getAuthScheme(wsAuth.authType);
|
|
717
787
|
}
|
|
718
788
|
return { authHeader: resolvedHeader, authScheme };
|
|
719
789
|
}
|
|
@@ -77,14 +77,19 @@ function isStringMap(v) {
|
|
|
77
77
|
export function normalizeOverrides(raw) {
|
|
78
78
|
if (!Array.isArray(raw)) {
|
|
79
79
|
if (raw !== undefined) {
|
|
80
|
-
logger.warning("Ignoring api.queryParamOverrides — expected a list", {
|
|
80
|
+
logger.warning("Ignoring api.queryParamOverrides — expected a list", {
|
|
81
|
+
got: typeof raw,
|
|
82
|
+
});
|
|
81
83
|
}
|
|
82
84
|
return [];
|
|
83
85
|
}
|
|
84
86
|
const result = [];
|
|
85
87
|
for (const entry of raw) {
|
|
86
88
|
const e = entry;
|
|
87
|
-
if (!e ||
|
|
89
|
+
if (!e ||
|
|
90
|
+
typeof e !== "object" ||
|
|
91
|
+
typeof e.pathPattern !== "string" ||
|
|
92
|
+
e.pathPattern.length === 0) {
|
|
88
93
|
logger.warning("Skipping api.queryParamOverrides entry with a missing or empty pathPattern");
|
|
89
94
|
continue;
|
|
90
95
|
}
|
|
@@ -139,7 +144,8 @@ export function resolveQueryParamsForPath(config, pathname) {
|
|
|
139
144
|
if (matches.length === 0)
|
|
140
145
|
return { ...config.base };
|
|
141
146
|
matches.sort((a, b) => {
|
|
142
|
-
const specDiff = patternSpecificity(b.override.pathPattern) -
|
|
147
|
+
const specDiff = patternSpecificity(b.override.pathPattern) -
|
|
148
|
+
patternSpecificity(a.override.pathPattern);
|
|
143
149
|
if (specDiff !== 0)
|
|
144
150
|
return specDiff;
|
|
145
151
|
// Known limitation (Finding 5, SKYR-4127 final review): at equal literal-
|
|
@@ -155,7 +161,8 @@ export function resolveQueryParamsForPath(config, pathname) {
|
|
|
155
161
|
});
|
|
156
162
|
const [winner, runnerUp] = matches;
|
|
157
163
|
if (runnerUp &&
|
|
158
|
-
patternSpecificity(winner.override.pathPattern) ===
|
|
164
|
+
patternSpecificity(winner.override.pathPattern) ===
|
|
165
|
+
patternSpecificity(runnerUp.override.pathPattern) &&
|
|
159
166
|
winner.override.pathPattern.length === runnerUp.override.pathPattern.length) {
|
|
160
167
|
logger.warning("Ambiguous api.queryParamOverrides — two equally specific patterns match this path; using the first", {
|
|
161
168
|
pathname,
|
|
@@ -16,6 +16,7 @@ import yaml from "js-yaml";
|
|
|
16
16
|
import { z } from "zod";
|
|
17
17
|
import { SUPPORTED_FRAMEWORKS } from "./frameworks.js";
|
|
18
18
|
import { runtimeEnvironmentInputSchema } from "../types/TestTypes.js";
|
|
19
|
+
import { parseOwnerRepo } from "../utils/repositorySlug.js";
|
|
19
20
|
const execFileAsync = promisify(execFile);
|
|
20
21
|
// ---------------------------------------------------------------------------
|
|
21
22
|
// Constants
|
|
@@ -80,10 +81,12 @@ export const serviceSchema = z
|
|
|
80
81
|
* through verbatim and is case-sensitive; a near miss such as
|
|
81
82
|
* `ENV.VAR` is treated as an ordinary literal. */
|
|
82
83
|
queryParamOverrides: z
|
|
83
|
-
.array(z
|
|
84
|
+
.array(z
|
|
85
|
+
.object({
|
|
84
86
|
pathPattern: z.string().min(1),
|
|
85
87
|
values: z.record(z.string()),
|
|
86
|
-
})
|
|
88
|
+
})
|
|
89
|
+
.strict())
|
|
87
90
|
.optional(),
|
|
88
91
|
baseUrl: z.string().optional(),
|
|
89
92
|
/** SUT serves self-signed TLS (e.g. a kind kube-apiserver) — generated
|
|
@@ -261,11 +264,8 @@ async function detectRepoInfo(dirPath, requireGit = true) {
|
|
|
261
264
|
catch {
|
|
262
265
|
// Git repo exists but no remote configured - this is OK
|
|
263
266
|
}
|
|
264
|
-
if (repoUrl)
|
|
265
|
-
|
|
266
|
-
if (match)
|
|
267
|
-
repoName = match[1];
|
|
268
|
-
}
|
|
267
|
+
if (repoUrl)
|
|
268
|
+
repoName = parseOwnerRepo(repoUrl) ?? repoName;
|
|
269
269
|
if (!repoName) {
|
|
270
270
|
repoName = path.basename(cwd);
|
|
271
271
|
}
|
|
@@ -81,12 +81,12 @@ This project incorporates components from the projects listed below. The origina
|
|
|
81
81
|
- ansi-styles@5.2.0 (https://github.com/chalk/ansi-styles)
|
|
82
82
|
- anymatch@3.1.3 (https://github.com/micromatch/anymatch)
|
|
83
83
|
- bail@2.0.2 (https://github.com/wooorm/bail)
|
|
84
|
-
- baseline-browser-mapping@2.
|
|
84
|
+
- baseline-browser-mapping@2.11.21 (https://github.com/web-platform-dx/baseline-browser-mapping)
|
|
85
85
|
- binary-extensions@2.2.0 (https://github.com/sindresorhus/binary-extensions)
|
|
86
86
|
- braces@3.0.3 (https://github.com/micromatch/braces)
|
|
87
|
-
- browserslist@4.28.
|
|
87
|
+
- browserslist@4.28.9 (https://github.com/browserslist/browserslist)
|
|
88
88
|
- buffer-from@1.1.2 (https://github.com/LinusU/buffer-from)
|
|
89
|
-
- caniuse-lite@1.0.
|
|
89
|
+
- caniuse-lite@1.0.30001810 (https://github.com/browserslist/caniuse-lite)
|
|
90
90
|
- chalk@4.1.2 (https://github.com/chalk/chalk)
|
|
91
91
|
- character-entities@2.0.2 (https://github.com/wooorm/character-entities)
|
|
92
92
|
- chokidar@3.6.0 (https://github.com/paulmillr/chokidar)
|
|
@@ -100,7 +100,7 @@ This project incorporates components from the projects listed below. The origina
|
|
|
100
100
|
- decode-named-character-reference@1.2.0 (https://github.com/wooorm/decode-named-character-reference)
|
|
101
101
|
- dequal@2.0.3 (https://github.com/lukeed/dequal)
|
|
102
102
|
- devlop@1.1.0 (https://github.com/wooorm/devlop)
|
|
103
|
-
- electron-to-chromium@1.5.
|
|
103
|
+
- electron-to-chromium@1.5.423 (https://github.com/Kilian/electron-to-chromium)
|
|
104
104
|
- enquirer@2.3.6 (https://github.com/enquirer/enquirer)
|
|
105
105
|
- escalade@3.2.0 (https://github.com/lukeed/escalade)
|
|
106
106
|
- escape-string-regexp@2.0.0 (https://github.com/sindresorhus/escape-string-regexp)
|
|
@@ -152,7 +152,7 @@ This project incorporates components from the projects listed below. The origina
|
|
|
152
152
|
- micromark@4.0.2 (https://github.com/micromark/micromark/tree/main/packages/micromark)
|
|
153
153
|
- micromatch@4.0.8 (https://github.com/micromatch/micromatch)
|
|
154
154
|
- ms@2.1.3 (https://github.com/vercel/ms)
|
|
155
|
-
- node-releases@2.0.
|
|
155
|
+
- node-releases@2.0.54 (https://github.com/chicoxyzzy/node-releases)
|
|
156
156
|
- normalize-path@3.0.0 (https://github.com/jonschlinkert/normalize-path)
|
|
157
157
|
- picocolors@1.1.1 (https://github.com/alexeyraspopov/picocolors)
|
|
158
158
|
- picomatch@2.3.2 (https://github.com/micromatch/picomatch)
|
|
@@ -173,7 +173,7 @@ This project incorporates components from the projects listed below. The origina
|
|
|
173
173
|
- undici-types@7.16.0 (https://github.com/nodejs/undici)
|
|
174
174
|
- unified@11.0.5 (https://github.com/unifiedjs/unified)
|
|
175
175
|
- unist-util-stringify-position@4.0.0 (https://github.com/syntax-tree/unist-util-stringify-position)
|
|
176
|
-
- update-browserslist-db@1.2
|
|
176
|
+
- update-browserslist-db@1.3.2 (https://github.com/browserslist/update-db)
|
|
177
177
|
- vfile-message@4.0.3 (https://github.com/vfile/vfile-message)
|
|
178
178
|
- vfile@6.0.3 (https://github.com/vfile/vfile)
|
|
179
179
|
- yallist@3.1.1 (https://github.com/isaacs/yallist)
|
|
@@ -2198,7 +2198,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
2198
2198
|
=========================================
|
|
2199
2199
|
END OF bail@2.0.2 AND INFORMATION
|
|
2200
2200
|
|
|
2201
|
-
%% baseline-browser-mapping@2.
|
|
2201
|
+
%% baseline-browser-mapping@2.11.21 NOTICES AND INFORMATION BEGIN HERE
|
|
2202
2202
|
=========================================
|
|
2203
2203
|
Apache License
|
|
2204
2204
|
Version 2.0, January 2004
|
|
@@ -2402,7 +2402,7 @@ Apache License
|
|
|
2402
2402
|
See the License for the specific language governing permissions and
|
|
2403
2403
|
limitations under the License.
|
|
2404
2404
|
=========================================
|
|
2405
|
-
END OF baseline-browser-mapping@2.
|
|
2405
|
+
END OF baseline-browser-mapping@2.11.21 AND INFORMATION
|
|
2406
2406
|
|
|
2407
2407
|
%% binary-extensions@2.2.0 NOTICES AND INFORMATION BEGIN HERE
|
|
2408
2408
|
=========================================
|
|
@@ -2444,7 +2444,7 @@ THE SOFTWARE.
|
|
|
2444
2444
|
=========================================
|
|
2445
2445
|
END OF braces@3.0.3 AND INFORMATION
|
|
2446
2446
|
|
|
2447
|
-
%% browserslist@4.28.
|
|
2447
|
+
%% browserslist@4.28.9 NOTICES AND INFORMATION BEGIN HERE
|
|
2448
2448
|
=========================================
|
|
2449
2449
|
The MIT License (MIT)
|
|
2450
2450
|
|
|
@@ -2467,7 +2467,7 @@ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
|
2467
2467
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
2468
2468
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
2469
2469
|
=========================================
|
|
2470
|
-
END OF browserslist@4.28.
|
|
2470
|
+
END OF browserslist@4.28.9 AND INFORMATION
|
|
2471
2471
|
|
|
2472
2472
|
%% buffer-from@1.1.2 NOTICES AND INFORMATION BEGIN HERE
|
|
2473
2473
|
=========================================
|
|
@@ -2495,7 +2495,7 @@ SOFTWARE.
|
|
|
2495
2495
|
=========================================
|
|
2496
2496
|
END OF buffer-from@1.1.2 AND INFORMATION
|
|
2497
2497
|
|
|
2498
|
-
%% caniuse-lite@1.0.
|
|
2498
|
+
%% caniuse-lite@1.0.30001810 NOTICES AND INFORMATION BEGIN HERE
|
|
2499
2499
|
=========================================
|
|
2500
2500
|
Attribution 4.0 International
|
|
2501
2501
|
|
|
@@ -2893,7 +2893,7 @@ public licenses.
|
|
|
2893
2893
|
|
|
2894
2894
|
Creative Commons may be contacted at creativecommons.org.
|
|
2895
2895
|
=========================================
|
|
2896
|
-
END OF caniuse-lite@1.0.
|
|
2896
|
+
END OF caniuse-lite@1.0.30001810 AND INFORMATION
|
|
2897
2897
|
|
|
2898
2898
|
%% chalk@4.1.2 NOTICES AND INFORMATION BEGIN HERE
|
|
2899
2899
|
=========================================
|
|
@@ -3208,7 +3208,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
3208
3208
|
=========================================
|
|
3209
3209
|
END OF devlop@1.1.0 AND INFORMATION
|
|
3210
3210
|
|
|
3211
|
-
%% electron-to-chromium@1.5.
|
|
3211
|
+
%% electron-to-chromium@1.5.423 NOTICES AND INFORMATION BEGIN HERE
|
|
3212
3212
|
=========================================
|
|
3213
3213
|
Copyright 2018 Kilian Valkhof
|
|
3214
3214
|
|
|
@@ -3216,7 +3216,7 @@ Permission to use, copy, modify, and/or distribute this software for any purpose
|
|
|
3216
3216
|
|
|
3217
3217
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
3218
3218
|
=========================================
|
|
3219
|
-
END OF electron-to-chromium@1.5.
|
|
3219
|
+
END OF electron-to-chromium@1.5.423 AND INFORMATION
|
|
3220
3220
|
|
|
3221
3221
|
%% enquirer@2.3.6 NOTICES AND INFORMATION BEGIN HERE
|
|
3222
3222
|
=========================================
|
|
@@ -4472,7 +4472,7 @@ SOFTWARE.
|
|
|
4472
4472
|
=========================================
|
|
4473
4473
|
END OF ms@2.1.3 AND INFORMATION
|
|
4474
4474
|
|
|
4475
|
-
%% node-releases@2.0.
|
|
4475
|
+
%% node-releases@2.0.54 NOTICES AND INFORMATION BEGIN HERE
|
|
4476
4476
|
=========================================
|
|
4477
4477
|
The MIT License
|
|
4478
4478
|
|
|
@@ -4496,7 +4496,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
4496
4496
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
4497
4497
|
THE SOFTWARE.
|
|
4498
4498
|
=========================================
|
|
4499
|
-
END OF node-releases@2.0.
|
|
4499
|
+
END OF node-releases@2.0.54 AND INFORMATION
|
|
4500
4500
|
|
|
4501
4501
|
%% normalize-path@3.0.0 NOTICES AND INFORMATION BEGIN HERE
|
|
4502
4502
|
=========================================
|
|
@@ -4990,11 +4990,11 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
4990
4990
|
=========================================
|
|
4991
4991
|
END OF unist-util-stringify-position@4.0.0 AND INFORMATION
|
|
4992
4992
|
|
|
4993
|
-
%% update-browserslist-db@1.2
|
|
4993
|
+
%% update-browserslist-db@1.3.2 NOTICES AND INFORMATION BEGIN HERE
|
|
4994
4994
|
=========================================
|
|
4995
4995
|
The MIT License (MIT)
|
|
4996
4996
|
|
|
4997
|
-
Copyright 2022 Andrey Sitnik <andrey@sitnik.
|
|
4997
|
+
Copyright 2022 Andrey Sitnik <andrey@sitnik.es> and other contributors
|
|
4998
4998
|
|
|
4999
4999
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
|
5000
5000
|
this software and associated documentation files (the "Software"), to deal in
|
|
@@ -5013,7 +5013,7 @@ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
|
|
5013
5013
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
5014
5014
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
5015
5015
|
=========================================
|
|
5016
|
-
END OF update-browserslist-db@1.2
|
|
5016
|
+
END OF update-browserslist-db@1.3.2 AND INFORMATION
|
|
5017
5017
|
|
|
5018
5018
|
%% vfile-message@4.0.3 NOTICES AND INFORMATION BEGIN HERE
|
|
5019
5019
|
=========================================
|
|
@@ -36,13 +36,19 @@ const assertToolSchema = {
|
|
|
36
36
|
'"visible" checks the element is visible,',
|
|
37
37
|
`"count" counts elements sharing the referenced element's role (or exact text)`,
|
|
38
38
|
"across the page, e.g. ref one option of an open dropdown to assert the number of options.",
|
|
39
|
+
'"css" checks a computed style property (property "background-color", expected "rgb(37, 99, 235)"; a 3- or 6-digit #hex colour is accepted and recorded as the computed rgb),',
|
|
40
|
+
'"class" checks the element carries a class ("expected" = one class name),',
|
|
41
|
+
'"attribute" checks an attribute value ("property" = the attribute name, "expected" = its value).',
|
|
42
|
+
"Use css/class/attribute for a colour, style or class change the PR makes: a screenshot baseline created on this run cannot fail on it.",
|
|
43
|
+
'css/class/attribute are read with the pointer moved OFF the element, so a value that exists only on hover is never recorded; unlike "count", they cannot be asserted on an option of a menu that closes when the pointer leaves it.',
|
|
39
44
|
"To assert an element is absent or not visible, use `browser_assert_hidden`."
|
|
40
45
|
].join(" "),
|
|
41
46
|
inputSchema: import_mcpBundle.z.object({
|
|
42
|
-
type: import_mcpBundle.z.enum(["text", "value", "checked", "disabled", "visible", "count"]).describe(`Type of assertion: "text" for text content, "value" for input field value, "checked" for checkbox/radio state, "disabled" for disabled/enabled state ("false" asserts the element is enabled), "visible" for element visibility, "count" for the number of elements with the referenced element's role`),
|
|
47
|
+
type: import_mcpBundle.z.enum(["text", "value", "checked", "disabled", "visible", "count", "css", "class", "attribute"]).describe(`Type of assertion: "text" for text content, "value" for input field value, "checked" for checkbox/radio state, "disabled" for disabled/enabled state ("false" asserts the element is enabled), "visible" for element visibility, "count" for the number of elements with the referenced element's role, "css" for a computed style property, "class" for a class the element carries, "attribute" for an attribute value`),
|
|
43
48
|
ref: import_mcpBundle.z.string().describe('Element reference from the latest snapshot. For "count", reference one exemplar element (e.g. one option in an open dropdown).'),
|
|
44
49
|
element: import_mcpBundle.z.string().describe("Human-readable description of the element being asserted"),
|
|
45
|
-
|
|
50
|
+
property: import_mcpBundle.z.string().optional().describe('For "css": the CSS property (e.g. "background-color", "flex-direction"). For "attribute": the attribute name (e.g. "aria-expanded", "data-state"). Not used by other types.'),
|
|
51
|
+
expected: import_mcpBundle.z.string().optional().describe('Expected text or value ("text"/"value"), "true"/"false" ("checked"/"disabled", default "true"; "disabled" with "false" asserts enabled), the expected element count ("count"), the computed style value ("css"; a 3- or 6-digit #hex colour is converted to rgb), one class name ("class"), the attribute value ("attribute"). Not used for "visible".'),
|
|
46
52
|
substring: import_mcpBundle.z.boolean().optional().default(true).describe("For text assertions: match as substring (true) or exact match (false)")
|
|
47
53
|
}),
|
|
48
54
|
type: "readOnly"
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var cssValue_exports = {};
|
|
20
|
+
__export(cssValue_exports, {
|
|
21
|
+
normalizeCssValue: () => normalizeCssValue
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(cssValue_exports);
|
|
24
|
+
const CASE_SENSITIVE_IDENT_PROPERTIES = /* @__PURE__ */ new Set([
|
|
25
|
+
"animation",
|
|
26
|
+
"animation-name",
|
|
27
|
+
"animation-timeline",
|
|
28
|
+
"transition",
|
|
29
|
+
"transition-property",
|
|
30
|
+
"will-change",
|
|
31
|
+
"grid",
|
|
32
|
+
"grid-area",
|
|
33
|
+
"grid-row",
|
|
34
|
+
"grid-column",
|
|
35
|
+
"grid-row-start",
|
|
36
|
+
"grid-row-end",
|
|
37
|
+
"grid-column-start",
|
|
38
|
+
"grid-column-end",
|
|
39
|
+
"grid-template-areas",
|
|
40
|
+
"grid-template-rows",
|
|
41
|
+
"grid-template-columns",
|
|
42
|
+
"grid-template",
|
|
43
|
+
"counter-increment",
|
|
44
|
+
"counter-reset",
|
|
45
|
+
"counter-set",
|
|
46
|
+
"list-style",
|
|
47
|
+
"list-style-type",
|
|
48
|
+
"container-name",
|
|
49
|
+
"container",
|
|
50
|
+
"view-transition-name",
|
|
51
|
+
"view-transition-class",
|
|
52
|
+
"anchor-name",
|
|
53
|
+
"position-anchor",
|
|
54
|
+
"position-try",
|
|
55
|
+
"position-try-fallbacks",
|
|
56
|
+
"font-palette",
|
|
57
|
+
"scroll-timeline",
|
|
58
|
+
"scroll-timeline-name",
|
|
59
|
+
"view-timeline",
|
|
60
|
+
"view-timeline-name",
|
|
61
|
+
"timeline-scope",
|
|
62
|
+
"page"
|
|
63
|
+
]);
|
|
64
|
+
function foldCaseKeepingDashedIdents(value) {
|
|
65
|
+
return value.replace(/[^\s,()]+/g, (token) => token.startsWith("--") ? token : token.toLowerCase());
|
|
66
|
+
}
|
|
67
|
+
function normalizeCssValue(value, property) {
|
|
68
|
+
const trimmed = value.trim();
|
|
69
|
+
if (/["']|url\(|var\(/i.test(trimmed))
|
|
70
|
+
return trimmed;
|
|
71
|
+
const prop = property?.trim().toLowerCase();
|
|
72
|
+
if (prop && (prop.startsWith("--") || CASE_SENSITIVE_IDENT_PROPERTIES.has(prop)))
|
|
73
|
+
return trimmed.replace(/\s+/g, " ").replace(/,\s*/g, ", ");
|
|
74
|
+
const v = foldCaseKeepingDashedIdents(trimmed.replace(/\s+/g, " "));
|
|
75
|
+
const hex = v.match(/^#([0-9a-f]{3}|[0-9a-f]{6})$/);
|
|
76
|
+
if (!hex)
|
|
77
|
+
return v.replace(/,\s*/g, ", ");
|
|
78
|
+
const h = hex[1].length === 3 ? hex[1].split("").map((c) => c + c).join("") : hex[1];
|
|
79
|
+
const r = parseInt(h.slice(0, 2), 16);
|
|
80
|
+
const g = parseInt(h.slice(2, 4), 16);
|
|
81
|
+
const b = parseInt(h.slice(4, 6), 16);
|
|
82
|
+
return `rgb(${r}, ${g}, ${b})`;
|
|
83
|
+
}
|
|
84
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
85
|
+
0 && (module.exports = {
|
|
86
|
+
normalizeCssValue
|
|
87
|
+
});
|