@gfdelarue/testkit 0.3.0
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/LICENSE +68 -0
- package/README.md +1125 -0
- package/bin/testkit-windows-owner-arm64.exe +0 -0
- package/bin/testkit-windows-owner-x64.exe +0 -0
- package/bin/testkit.mjs +60 -0
- package/dist/app/cleanup/index.d.ts +52 -0
- package/dist/app/cleanup/index.js +1 -0
- package/dist/app/cloud/campaigns.d.ts +6 -0
- package/dist/app/cloud/campaigns.js +1 -0
- package/dist/app/cloud/control-actions.d.ts +12 -0
- package/dist/app/cloud/control-actions.js +2 -0
- package/dist/app/cloud/control-links.d.ts +5 -0
- package/dist/app/cloud/control-links.js +1 -0
- package/dist/app/cloud/control-read.d.ts +24 -0
- package/dist/app/cloud/control-read.js +1 -0
- package/dist/app/cloud/control-resources.d.ts +3 -0
- package/dist/app/cloud/control-resources.js +1 -0
- package/dist/app/cloud/control.d.ts +34 -0
- package/dist/app/cloud/control.js +5 -0
- package/dist/app/cloud/credentials.d.ts +11 -0
- package/dist/app/cloud/credentials.js +2 -0
- package/dist/app/cloud/index.d.ts +22 -0
- package/dist/app/cloud/index.js +2 -0
- package/dist/app/cloud/login.d.ts +63 -0
- package/dist/app/cloud/login.js +2 -0
- package/dist/app/cloud/migration/archive.d.ts +13 -0
- package/dist/app/cloud/migration/archive.js +1 -0
- package/dist/app/cloud/migration/commands.d.ts +8 -0
- package/dist/app/cloud/migration/commands.js +1 -0
- package/dist/app/cloud/migration/evidence.d.ts +13 -0
- package/dist/app/cloud/migration/evidence.js +2 -0
- package/dist/app/cloud/migration/files.d.ts +16 -0
- package/dist/app/cloud/migration/files.js +2 -0
- package/dist/app/cloud/migration/index.d.ts +6 -0
- package/dist/app/cloud/migration/index.js +1 -0
- package/dist/app/cloud/migration/journal.d.ts +64 -0
- package/dist/app/cloud/migration/journal.js +1 -0
- package/dist/app/cloud/migration/mapping-dispositions.d.ts +3 -0
- package/dist/app/cloud/migration/mapping-dispositions.js +1 -0
- package/dist/app/cloud/migration/mapping.d.ts +11 -0
- package/dist/app/cloud/migration/mapping.js +2 -0
- package/dist/app/cloud/migration/model.d.ts +175 -0
- package/dist/app/cloud/migration/model.js +1 -0
- package/dist/app/cloud/migration/plan.d.ts +7 -0
- package/dist/app/cloud/migration/plan.js +1 -0
- package/dist/app/cloud/migration/progress.d.ts +19 -0
- package/dist/app/cloud/migration/progress.js +1 -0
- package/dist/app/cloud/migration/reconcile.d.ts +22 -0
- package/dist/app/cloud/migration/reconcile.js +1 -0
- package/dist/app/cloud/migration/reconciliation-spool.d.ts +4 -0
- package/dist/app/cloud/migration/reconciliation-spool.js +1 -0
- package/dist/app/cloud/migration/state.d.ts +15 -0
- package/dist/app/cloud/migration/state.js +1 -0
- package/dist/app/cloud/migration/transfer.d.ts +6 -0
- package/dist/app/cloud/migration/transfer.js +1 -0
- package/dist/app/db-schema/prepare.d.ts +11 -0
- package/dist/app/db-schema/prepare.js +1 -0
- package/dist/app/db-schema/refresh.d.ts +17 -0
- package/dist/app/db-schema/refresh.js +1 -0
- package/dist/app/db-schema/verify.d.ts +11 -0
- package/dist/app/db-schema/verify.js +1 -0
- package/dist/app/destroy/index.d.ts +16 -0
- package/dist/app/destroy/index.js +1 -0
- package/dist/app/discover/index.d.ts +8 -0
- package/dist/app/discover/index.js +2 -0
- package/dist/app/doctor/index.d.ts +17 -0
- package/dist/app/doctor/index.js +1 -0
- package/dist/app/file-selection.d.ts +1 -0
- package/dist/app/file-selection.js +1 -0
- package/dist/app/inspect/artifacts.d.ts +29 -0
- package/dist/app/inspect/artifacts.js +1 -0
- package/dist/app/inspect/index.d.ts +112 -0
- package/dist/app/inspect/index.js +1 -0
- package/dist/app/lint/index.d.ts +28 -0
- package/dist/app/lint/index.js +2 -0
- package/dist/app/lint/native.d.ts +10 -0
- package/dist/app/lint/native.js +1 -0
- package/dist/app/lint/options.d.ts +67 -0
- package/dist/app/lint/options.js +1 -0
- package/dist/app/lint/policy.d.ts +21 -0
- package/dist/app/lint/policy.js +1 -0
- package/dist/app/lint/rules/data.d.ts +3 -0
- package/dist/app/lint/rules/data.js +1 -0
- package/dist/app/lint/rules/engine-imports.d.ts +3 -0
- package/dist/app/lint/rules/engine-imports.js +1 -0
- package/dist/app/lint/rules/syntax.d.ts +4 -0
- package/dist/app/lint/rules/syntax.js +1 -0
- package/dist/app/lint/rules/unit.d.ts +3 -0
- package/dist/app/lint/rules/unit.js +1 -0
- package/dist/app/lint/shared.d.ts +36 -0
- package/dist/app/lint/shared.js +1 -0
- package/dist/app/package-inspection.d.ts +20 -0
- package/dist/app/package-inspection.js +1 -0
- package/dist/app/run/endpoint-readiness.d.ts +43 -0
- package/dist/app/run/endpoint-readiness.js +1 -0
- package/dist/app/run/engine-evidence-persistence.d.ts +39 -0
- package/dist/app/run/engine-evidence-persistence.js +1 -0
- package/dist/app/run/engine-execution-cleanup.d.ts +8 -0
- package/dist/app/run/engine-execution-cleanup.js +1 -0
- package/dist/app/run/engine-execution-failures.d.ts +41 -0
- package/dist/app/run/engine-execution-failures.js +1 -0
- package/dist/app/run/engine-execution-observer.d.ts +21 -0
- package/dist/app/run/engine-execution-observer.js +1 -0
- package/dist/app/run/engine-execution-reporting.d.ts +17 -0
- package/dist/app/run/engine-execution-reporting.js +1 -0
- package/dist/app/run/engine-execution.d.ts +60 -0
- package/dist/app/run/engine-execution.js +1 -0
- package/dist/app/run/engine-orchestration.d.ts +49 -0
- package/dist/app/run/engine-orchestration.js +1 -0
- package/dist/app/run/failure-details.d.ts +36 -0
- package/dist/app/run/failure-details.js +1 -0
- package/dist/app/run/live-run.d.ts +27 -0
- package/dist/app/run/live-run.js +1 -0
- package/dist/app/run/operation-progress.d.ts +13 -0
- package/dist/app/run/operation-progress.js +1 -0
- package/dist/app/run/orchestrator.d.ts +68 -0
- package/dist/app/run/orchestrator.js +1 -0
- package/dist/app/run/planning-types.d.ts +68 -0
- package/dist/app/run/planning-types.js +1 -0
- package/dist/app/run/planning.d.ts +15 -0
- package/dist/app/run/planning.js +1 -0
- package/dist/app/run/playwright-configuration.d.ts +2 -0
- package/dist/app/run/playwright-configuration.js +1 -0
- package/dist/app/run/request.d.ts +30 -0
- package/dist/app/run/request.js +1 -0
- package/dist/app/run/results.d.ts +161 -0
- package/dist/app/run/results.js +1 -0
- package/dist/app/run/run-events.d.ts +144 -0
- package/dist/app/run/run-events.js +1 -0
- package/dist/app/run/run-finalization.d.ts +52 -0
- package/dist/app/run/run-finalization.js +1 -0
- package/dist/app/run/run-guards.d.ts +3 -0
- package/dist/app/run/run-guards.js +3 -0
- package/dist/app/run/runtime-failures.d.ts +18 -0
- package/dist/app/run/runtime-failures.js +1 -0
- package/dist/app/run/runtime-fixtures.d.ts +2 -0
- package/dist/app/run/runtime-fixtures.js +1 -0
- package/dist/app/run/runtime-task-types.d.ts +20 -0
- package/dist/app/run/runtime-task-types.js +1 -0
- package/dist/app/run/scheduler/estimates.d.ts +32 -0
- package/dist/app/run/scheduler/estimates.js +1 -0
- package/dist/app/run/scheduler/identity.d.ts +9 -0
- package/dist/app/run/scheduler/identity.js +1 -0
- package/dist/app/run/scheduler/index.d.ts +124 -0
- package/dist/app/run/scheduler/index.js +1 -0
- package/dist/app/run/scheduler/observations.d.ts +20 -0
- package/dist/app/run/scheduler/observations.js +1 -0
- package/dist/app/run/selection.d.ts +10 -0
- package/dist/app/run/selection.js +1 -0
- package/dist/app/run/setup/runtime-node-setup-errors.d.ts +13 -0
- package/dist/app/run/setup/runtime-node-setup-errors.js +1 -0
- package/dist/app/run/setup/runtime-node-setup-protocol.d.ts +85 -0
- package/dist/app/run/setup/runtime-node-setup-protocol.js +1 -0
- package/dist/app/run/setup/runtime-node-setup-worker.d.ts +1 -0
- package/dist/app/run/setup/runtime-node-setup-worker.js +1 -0
- package/dist/app/run/setup/runtime-node-setup.d.ts +48 -0
- package/dist/app/run/setup/runtime-node-setup.js +3 -0
- package/dist/app/run/task-batches.d.ts +23 -0
- package/dist/app/run/task-batches.js +1 -0
- package/dist/app/run/worker-loop.d.ts +57 -0
- package/dist/app/run/worker-loop.js +1 -0
- package/dist/app/setup/playwright.d.ts +22 -0
- package/dist/app/setup/playwright.js +1 -0
- package/dist/app/status/index.d.ts +7 -0
- package/dist/app/status/index.js +1 -0
- package/dist/app/status/model.d.ts +29 -0
- package/dist/app/status/model.js +1 -0
- package/dist/app/status/runs.d.ts +99 -0
- package/dist/app/status/runs.js +1 -0
- package/dist/app/stop/index.d.ts +14 -0
- package/dist/app/stop/index.js +1 -0
- package/dist/app/typecheck/index.d.ts +61 -0
- package/dist/app/typecheck/index.js +4 -0
- package/dist/app/typecheck/unavailable.d.ts +1 -0
- package/dist/app/typecheck/unavailable.js +1 -0
- package/dist/cli/cloud-apply-help.d.ts +1 -0
- package/dist/cli/cloud-apply-help.js +56 -0
- package/dist/cli/cloud-selection.d.ts +2 -0
- package/dist/cli/cloud-selection.js +3 -0
- package/dist/cli/command-catalog.d.ts +238 -0
- package/dist/cli/command-catalog.js +1 -0
- package/dist/cli/command-flags.d.ts +19 -0
- package/dist/cli/command-flags.js +1 -0
- package/dist/cli/command-registry.d.ts +2 -0
- package/dist/cli/command-registry.js +1 -0
- package/dist/cli/commands/artifacts.d.ts +48 -0
- package/dist/cli/commands/artifacts.js +3 -0
- package/dist/cli/commands/cleanup.d.ts +13 -0
- package/dist/cli/commands/cleanup.js +1 -0
- package/dist/cli/commands/cloud/apply.d.ts +5 -0
- package/dist/cli/commands/cloud/apply.js +1 -0
- package/dist/cli/commands/cloud/campaign/create.d.ts +5 -0
- package/dist/cli/commands/cloud/campaign/create.js +1 -0
- package/dist/cli/commands/cloud/download.d.ts +5 -0
- package/dist/cli/commands/cloud/download.js +1 -0
- package/dist/cli/commands/cloud/list.d.ts +5 -0
- package/dist/cli/commands/cloud/list.js +1 -0
- package/dist/cli/commands/cloud/login.d.ts +13 -0
- package/dist/cli/commands/cloud/login.js +2 -0
- package/dist/cli/commands/cloud/logout.d.ts +7 -0
- package/dist/cli/commands/cloud/logout.js +1 -0
- package/dist/cli/commands/cloud/migrate/apply.d.ts +2 -0
- package/dist/cli/commands/cloud/migrate/apply.js +1 -0
- package/dist/cli/commands/cloud/migrate/plan.d.ts +7 -0
- package/dist/cli/commands/cloud/migrate/plan.js +1 -0
- package/dist/cli/commands/cloud/migrate/progress.d.ts +2 -0
- package/dist/cli/commands/cloud/migrate/progress.js +2 -0
- package/dist/cli/commands/cloud/migrate/reconcile.d.ts +2 -0
- package/dist/cli/commands/cloud/migrate/reconcile.js +1 -0
- package/dist/cli/commands/cloud/policy/preview.d.ts +5 -0
- package/dist/cli/commands/cloud/policy/preview.js +1 -0
- package/dist/cli/commands/cloud/project/create.d.ts +5 -0
- package/dist/cli/commands/cloud/project/create.js +1 -0
- package/dist/cli/commands/cloud/publish.d.ts +7 -0
- package/dist/cli/commands/cloud/publish.js +1 -0
- package/dist/cli/commands/cloud/session/revoke.d.ts +8 -0
- package/dist/cli/commands/cloud/session/revoke.js +1 -0
- package/dist/cli/commands/cloud/show.d.ts +5 -0
- package/dist/cli/commands/cloud/show.js +1 -0
- package/dist/cli/commands/cloud/snapshot.d.ts +5 -0
- package/dist/cli/commands/cloud/snapshot.js +1 -0
- package/dist/cli/commands/cloud/status.d.ts +33 -0
- package/dist/cli/commands/cloud/status.js +1 -0
- package/dist/cli/commands/db/schema/refresh.d.ts +2 -0
- package/dist/cli/commands/db/schema/refresh.js +1 -0
- package/dist/cli/commands/db/schema/verify.d.ts +2 -0
- package/dist/cli/commands/db/schema/verify.js +1 -0
- package/dist/cli/commands/destroy.d.ts +9 -0
- package/dist/cli/commands/destroy.js +1 -0
- package/dist/cli/commands/discover.d.ts +2 -0
- package/dist/cli/commands/discover.js +1 -0
- package/dist/cli/commands/doctor.d.ts +2 -0
- package/dist/cli/commands/doctor.js +1 -0
- package/dist/cli/commands/guard/unsafe-entrypoint.d.ts +2 -0
- package/dist/cli/commands/guard/unsafe-entrypoint.js +2 -0
- package/dist/cli/commands/lint.d.ts +2 -0
- package/dist/cli/commands/lint.js +1 -0
- package/dist/cli/commands/run/status.d.ts +5 -0
- package/dist/cli/commands/run/status.js +1 -0
- package/dist/cli/commands/run/stop.d.ts +7 -0
- package/dist/cli/commands/run/stop.js +1 -0
- package/dist/cli/commands/run.d.ts +9 -0
- package/dist/cli/commands/run.js +1 -0
- package/dist/cli/commands/setup/playwright.d.ts +2 -0
- package/dist/cli/commands/setup/playwright.js +1 -0
- package/dist/cli/commands/status.d.ts +5 -0
- package/dist/cli/commands/status.js +1 -0
- package/dist/cli/commands/stop.d.ts +12 -0
- package/dist/cli/commands/stop.js +1 -0
- package/dist/cli/commands/typecheck.d.ts +2 -0
- package/dist/cli/commands/typecheck.js +1 -0
- package/dist/cli/commands/workspace.d.ts +2 -0
- package/dist/cli/commands/workspace.js +1 -0
- package/dist/cli/entrypoint.d.ts +1 -0
- package/dist/cli/entrypoint.js +1 -0
- package/dist/cli/framework/command.d.ts +21 -0
- package/dist/cli/framework/command.js +1 -0
- package/dist/cli/framework/definitions.d.ts +100 -0
- package/dist/cli/framework/definitions.js +1 -0
- package/dist/cli/framework/errors.d.ts +6 -0
- package/dist/cli/framework/errors.js +1 -0
- package/dist/cli/framework/execute.d.ts +13 -0
- package/dist/cli/framework/execute.js +6 -0
- package/dist/cli/framework/help.d.ts +11 -0
- package/dist/cli/framework/help.js +8 -0
- package/dist/cli/framework/index.d.ts +3 -0
- package/dist/cli/framework/index.js +1 -0
- package/dist/cli/framework/parser.d.ts +6 -0
- package/dist/cli/framework/parser.js +1 -0
- package/dist/cli/index.d.ts +4 -0
- package/dist/cli/index.js +1 -0
- package/dist/cli/json-errors.d.ts +3 -0
- package/dist/cli/json-errors.js +1 -0
- package/dist/cli/operations/db/schema/refresh/operation.d.ts +6 -0
- package/dist/cli/operations/db/schema/refresh/operation.js +1 -0
- package/dist/cli/operations/db/schema/verify/operation.d.ts +6 -0
- package/dist/cli/operations/db/schema/verify/operation.js +1 -0
- package/dist/cli/operations/run/operation.d.ts +24 -0
- package/dist/cli/operations/run/operation.js +2 -0
- package/dist/cli/process-signal.d.ts +1 -0
- package/dist/cli/process-signal.js +1 -0
- package/dist/cli/renderers/artifact-preview.d.ts +4 -0
- package/dist/cli/renderers/artifact-preview.js +1 -0
- package/dist/cli/renderers/cleanup/format.d.ts +14 -0
- package/dist/cli/renderers/cleanup/format.js +1 -0
- package/dist/cli/renderers/db-schema/text.d.ts +4 -0
- package/dist/cli/renderers/db-schema/text.js +1 -0
- package/dist/cli/renderers/destroy/text.d.ts +4 -0
- package/dist/cli/renderers/destroy/text.js +1 -0
- package/dist/cli/renderers/discover/report.d.ts +7 -0
- package/dist/cli/renderers/discover/report.js +1 -0
- package/dist/cli/renderers/discover/text.d.ts +3 -0
- package/dist/cli/renderers/discover/text.js +1 -0
- package/dist/cli/renderers/doctor/text.d.ts +2 -0
- package/dist/cli/renderers/doctor/text.js +1 -0
- package/dist/cli/renderers/lint/text.d.ts +2 -0
- package/dist/cli/renderers/lint/text.js +1 -0
- package/dist/cli/renderers/run/events.d.ts +8 -0
- package/dist/cli/renderers/run/events.js +2 -0
- package/dist/cli/renderers/run/failure.d.ts +8 -0
- package/dist/cli/renderers/run/failure.js +1 -0
- package/dist/cli/renderers/run/formatting.d.ts +79 -0
- package/dist/cli/renderers/run/formatting.js +1 -0
- package/dist/cli/renderers/run/status.d.ts +6 -0
- package/dist/cli/renderers/run/status.js +1 -0
- package/dist/cli/renderers/run/text-reporter.d.ts +19 -0
- package/dist/cli/renderers/run/text-reporter.js +23 -0
- package/dist/cli/renderers/status/text.d.ts +2 -0
- package/dist/cli/renderers/status/text.js +1 -0
- package/dist/cli/renderers/stop/text.d.ts +7 -0
- package/dist/cli/renderers/stop/text.js +1 -0
- package/dist/cli/renderers/typecheck/text.d.ts +2 -0
- package/dist/cli/renderers/typecheck/text.js +1 -0
- package/dist/cli/terminal/colors.d.ts +10 -0
- package/dist/cli/terminal/colors.js +1 -0
- package/dist/cli/terminal/layout.d.ts +11 -0
- package/dist/cli/terminal/layout.js +2 -0
- package/dist/cli/version-drift.d.ts +25 -0
- package/dist/cli/version-drift.js +7 -0
- package/dist/cloud/account.d.ts +34 -0
- package/dist/cloud/account.js +1 -0
- package/dist/cloud/archive-contract.d.ts +1 -0
- package/dist/cloud/archive-contract.js +1 -0
- package/dist/cloud/archive.d.ts +12 -0
- package/dist/cloud/archive.js +1 -0
- package/dist/cloud/campaigns.d.ts +200 -0
- package/dist/cloud/campaigns.js +2 -0
- package/dist/cloud/client.d.ts +68 -0
- package/dist/cloud/client.js +4 -0
- package/dist/cloud/download.d.ts +5 -0
- package/dist/cloud/download.js +1 -0
- package/dist/cloud/historical-contract.d.ts +224 -0
- package/dist/cloud/historical-contract.js +1 -0
- package/dist/cloud/historical-json.d.ts +16 -0
- package/dist/cloud/historical-json.js +1 -0
- package/dist/cloud/historical.d.ts +69 -0
- package/dist/cloud/historical.js +1 -0
- package/dist/cloud/pagination.d.ts +5 -0
- package/dist/cloud/pagination.js +1 -0
- package/dist/cloud/transport.d.ts +18 -0
- package/dist/cloud/transport.js +1 -0
- package/dist/config/authoring/build-config-contract.d.ts +27 -0
- package/dist/config/authoring/build-config-contract.js +1 -0
- package/dist/config/authoring/configured-step-contract.d.ts +18 -0
- package/dist/config/authoring/configured-step-contract.js +1 -0
- package/dist/config/authoring/http-execution-contract.d.ts +70 -0
- package/dist/config/authoring/http-execution-contract.js +1 -0
- package/dist/config/authoring/http-methods.d.ts +18 -0
- package/dist/config/authoring/http-methods.js +1 -0
- package/dist/config/authoring/index.d.ts +376 -0
- package/dist/config/authoring/index.js +1 -0
- package/dist/config/authoring/preset-env.d.ts +19 -0
- package/dist/config/authoring/preset-env.js +1 -0
- package/dist/config/authoring/runtime.d.ts +64 -0
- package/dist/config/authoring/runtime.js +1 -0
- package/dist/config/loader/cloud.d.ts +2 -0
- package/dist/config/loader/cloud.js +1 -0
- package/dist/config/loader/config-loader.d.ts +9 -0
- package/dist/config/loader/config-loader.js +1 -0
- package/dist/config/loader/database-materialization.d.ts +19 -0
- package/dist/config/loader/database-materialization.js +1 -0
- package/dist/config/loader/database-roles.d.ts +2 -0
- package/dist/config/loader/database-roles.js +1 -0
- package/dist/config/loader/database.d.ts +55 -0
- package/dist/config/loader/database.js +1 -0
- package/dist/config/loader/decode-discovery.d.ts +5 -0
- package/dist/config/loader/decode-discovery.js +1 -0
- package/dist/config/loader/decode-execution.d.ts +9 -0
- package/dist/config/loader/decode-execution.js +1 -0
- package/dist/config/loader/dependencies.d.ts +7 -0
- package/dist/config/loader/dependencies.js +1 -0
- package/dist/config/loader/discover-tests.d.ts +101 -0
- package/dist/config/loader/discover-tests.js +1 -0
- package/dist/config/loader/discovery-summary.d.ts +29 -0
- package/dist/config/loader/discovery-summary.js +1 -0
- package/dist/config/loader/discovery.d.ts +54 -0
- package/dist/config/loader/discovery.js +2 -0
- package/dist/config/loader/env.d.ts +4 -0
- package/dist/config/loader/env.js +1 -0
- package/dist/config/loader/execution-model.d.ts +16 -0
- package/dist/config/loader/execution-model.js +1 -0
- package/dist/config/loader/file-metadata.d.ts +19 -0
- package/dist/config/loader/file-metadata.js +1 -0
- package/dist/config/loader/index.d.ts +10 -0
- package/dist/config/loader/index.js +1 -0
- package/dist/config/loader/load.d.ts +89 -0
- package/dist/config/loader/load.js +1 -0
- package/dist/config/loader/managed-configs.d.ts +21 -0
- package/dist/config/loader/managed-configs.js +1 -0
- package/dist/config/loader/path-policy.d.ts +9 -0
- package/dist/config/loader/path-policy.js +1 -0
- package/dist/config/loader/paths.d.ts +5 -0
- package/dist/config/loader/paths.js +1 -0
- package/dist/config/loader/runtime-isolation.d.ts +44 -0
- package/dist/config/loader/runtime-isolation.js +1 -0
- package/dist/config/loader/runtime.d.ts +25 -0
- package/dist/config/loader/runtime.js +1 -0
- package/dist/config/loader/skip-config.d.ts +44 -0
- package/dist/config/loader/skip-config.js +1 -0
- package/dist/config/loader/validation.d.ts +16 -0
- package/dist/config/loader/validation.js +1 -0
- package/dist/config/loader/values.d.ts +4 -0
- package/dist/config/loader/values.js +1 -0
- package/dist/config/runtime/build-assets.d.ts +6 -0
- package/dist/config/runtime/build-assets.js +1 -0
- package/dist/config/runtime/env/index.d.ts +35 -0
- package/dist/config/runtime/env/index.js +1 -0
- package/dist/config/runtime/next-runtime-tsconfig.d.ts +6 -0
- package/dist/config/runtime/next-runtime-tsconfig.js +2 -0
- package/dist/database/activity-gate.d.ts +22 -0
- package/dist/database/activity-gate.js +1 -0
- package/dist/database/admin.d.ts +31 -0
- package/dist/database/admin.js +2 -0
- package/dist/database/cleanup.d.ts +36 -0
- package/dist/database/cleanup.js +1 -0
- package/dist/database/configured-steps.d.ts +27 -0
- package/dist/database/configured-steps.js +1 -0
- package/dist/database/constants.d.ts +11 -0
- package/dist/database/constants.js +1 -0
- package/dist/database/docker.d.ts +65 -0
- package/dist/database/docker.js +5 -0
- package/dist/database/drizzle/index.d.ts +13 -0
- package/dist/database/drizzle/index.js +1 -0
- package/dist/database/fingerprint.d.ts +12 -0
- package/dist/database/fingerprint.js +1 -0
- package/dist/database/index.d.ts +41 -0
- package/dist/database/index.js +1 -0
- package/dist/database/local-postgres.d.ts +71 -0
- package/dist/database/local-postgres.js +2 -0
- package/dist/database/naming.d.ts +17 -0
- package/dist/database/naming.js +1 -0
- package/dist/database/postgres/index.d.ts +71 -0
- package/dist/database/postgres/index.js +2 -0
- package/dist/database/progress.d.ts +6 -0
- package/dist/database/progress.js +1 -0
- package/dist/database/roles.d.ts +19 -0
- package/dist/database/roles.js +41 -0
- package/dist/database/runtime-config.d.ts +16 -0
- package/dist/database/runtime-config.js +1 -0
- package/dist/database/runtime-reservations.d.ts +19 -0
- package/dist/database/runtime-reservations.js +1 -0
- package/dist/database/schema-operations.d.ts +18 -0
- package/dist/database/schema-operations.js +1 -0
- package/dist/database/schema-source.d.ts +93 -0
- package/dist/database/schema-source.js +3 -0
- package/dist/database/source-refresh-lock.d.ts +8 -0
- package/dist/database/source-refresh-lock.js +1 -0
- package/dist/database/source-url.d.ts +22 -0
- package/dist/database/source-url.js +2 -0
- package/dist/database/state-files.d.ts +13 -0
- package/dist/database/state-files.js +1 -0
- package/dist/database/state.d.ts +26 -0
- package/dist/database/state.js +1 -0
- package/dist/database/steps.d.ts +16 -0
- package/dist/database/steps.js +4 -0
- package/dist/database/template-steps.d.ts +35 -0
- package/dist/database/template-steps.js +4 -0
- package/dist/domain/file-timeout.d.ts +28 -0
- package/dist/domain/file-timeout.js +1 -0
- package/dist/domain/identifiers.d.ts +9 -0
- package/dist/domain/identifiers.js +1 -0
- package/dist/domain/operation-display.d.ts +10 -0
- package/dist/domain/operation-display.js +1 -0
- package/dist/domain/operation-reason.d.ts +5 -0
- package/dist/domain/operation-reason.js +1 -0
- package/dist/domain/postgres-route.d.ts +4 -0
- package/dist/domain/postgres-route.js +1 -0
- package/dist/domain/runtime-identity.d.ts +1 -0
- package/dist/domain/runtime-identity.js +1 -0
- package/dist/domain/runtime-isolation-contract.d.ts +5 -0
- package/dist/domain/runtime-isolation-contract.js +1 -0
- package/dist/domain/service-name.d.ts +2 -0
- package/dist/domain/service-name.js +1 -0
- package/dist/domain/suite-selection.d.ts +20 -0
- package/dist/domain/suite-selection.js +1 -0
- package/dist/domain/test-outcomes.d.ts +3 -0
- package/dist/domain/test-outcomes.js +1 -0
- package/dist/domain/test-types.d.ts +16 -0
- package/dist/domain/test-types.js +1 -0
- package/dist/engines/adapters/evidence-files.d.ts +32 -0
- package/dist/engines/adapters/evidence-files.js +1 -0
- package/dist/engines/adapters/evidence-identity.d.ts +12 -0
- package/dist/engines/adapters/evidence-identity.js +1 -0
- package/dist/engines/adapters/execution.d.ts +38 -0
- package/dist/engines/adapters/execution.js +1 -0
- package/dist/engines/adapters/native-report.d.ts +25 -0
- package/dist/engines/adapters/native-report.js +1 -0
- package/dist/engines/adapters/workspace.d.ts +4 -0
- package/dist/engines/adapters/workspace.js +1 -0
- package/dist/engines/api/capabilities.d.ts +31 -0
- package/dist/engines/api/capabilities.js +1 -0
- package/dist/engines/api/evidence.d.ts +38 -0
- package/dist/engines/api/evidence.js +1 -0
- package/dist/engines/api/execution-observer.d.ts +8 -0
- package/dist/engines/api/execution-observer.js +1 -0
- package/dist/engines/api/execution-scope.d.ts +17 -0
- package/dist/engines/api/execution-scope.js +1 -0
- package/dist/engines/api/execution.d.ts +99 -0
- package/dist/engines/api/execution.js +1 -0
- package/dist/engines/api/index.d.ts +5 -0
- package/dist/engines/api/index.js +1 -0
- package/dist/engines/api/k6-runtime-input.d.ts +26 -0
- package/dist/engines/api/k6-runtime-input.js +1 -0
- package/dist/engines/api/runtime-artifact.d.ts +19 -0
- package/dist/engines/api/runtime-artifact.js +1 -0
- package/dist/engines/bundle-cache.d.ts +32 -0
- package/dist/engines/bundle-cache.js +1 -0
- package/dist/engines/catalog.d.ts +32 -0
- package/dist/engines/catalog.js +1 -0
- package/dist/engines/contracts/fixture-manifest.d.ts +34 -0
- package/dist/engines/contracts/fixture-manifest.js +1 -0
- package/dist/engines/contracts/json-bounds.d.ts +36 -0
- package/dist/engines/contracts/json-bounds.js +2 -0
- package/dist/engines/contracts/k6-repository-configuration.d.ts +12 -0
- package/dist/engines/contracts/k6-repository-configuration.js +1 -0
- package/dist/engines/contracts/test-context.d.ts +15 -0
- package/dist/engines/contracts/test-context.js +1 -0
- package/dist/engines/definitions.d.ts +15 -0
- package/dist/engines/definitions.js +1 -0
- package/dist/engines/factory.d.ts +6 -0
- package/dist/engines/factory.js +1 -0
- package/dist/engines/installation-catalog.d.ts +27 -0
- package/dist/engines/installation-catalog.js +1 -0
- package/dist/engines/installations/k6.d.ts +98 -0
- package/dist/engines/installations/k6.js +1 -0
- package/dist/engines/installations/node-vitest.d.ts +47 -0
- package/dist/engines/installations/node-vitest.js +1 -0
- package/dist/engines/installations/package-resolution.d.ts +51 -0
- package/dist/engines/installations/package-resolution.js +1 -0
- package/dist/engines/installations/playwright-resolution-child.d.ts +1 -0
- package/dist/engines/installations/playwright-resolution-child.js +2 -0
- package/dist/engines/installations/playwright.d.ts +85 -0
- package/dist/engines/installations/playwright.js +1 -0
- package/dist/engines/installations/types.d.ts +10 -0
- package/dist/engines/installations/types.js +1 -0
- package/dist/engines/k6/adapter/bundle.d.ts +25 -0
- package/dist/engines/k6/adapter/bundle.js +112 -0
- package/dist/engines/k6/adapter/evidence.d.ts +15 -0
- package/dist/engines/k6/adapter/evidence.js +4 -0
- package/dist/engines/k6/adapter/executor.d.ts +13 -0
- package/dist/engines/k6/adapter/executor.js +1 -0
- package/dist/engines/k6/adapter/index.d.ts +1 -0
- package/dist/engines/k6/adapter/index.js +1 -0
- package/dist/engines/k6/adapter/input.d.ts +21 -0
- package/dist/engines/k6/adapter/input.js +1 -0
- package/dist/engines/k6/adapter/native-summary.d.ts +11 -0
- package/dist/engines/k6/adapter/native-summary.js +1 -0
- package/dist/engines/k6/adapter/repository-configuration.d.ts +2 -0
- package/dist/engines/k6/adapter/repository-configuration.js +1 -0
- package/dist/engines/k6/authoring-type-paths.d.ts +3 -0
- package/dist/engines/k6/authoring-type-paths.js +1 -0
- package/dist/engines/k6/runtime/ambient-types/bundle-manifest.json +146 -0
- package/dist/engines/k6/runtime/ambient-types/k6/LICENSE +21 -0
- package/dist/engines/k6/runtime/ambient-types/k6/browser/index.d.ts +6332 -0
- package/dist/engines/k6/runtime/ambient-types/k6/crypto/index.d.ts +218 -0
- package/dist/engines/k6/runtime/ambient-types/k6/data/index.d.ts +16 -0
- package/dist/engines/k6/runtime/ambient-types/k6/encoding/index.d.ts +46 -0
- package/dist/engines/k6/runtime/ambient-types/k6/execution/index.d.ts +127 -0
- package/dist/engines/k6/runtime/ambient-types/k6/experimental/csv/index.d.ts +96 -0
- package/dist/engines/k6/runtime/ambient-types/k6/experimental/fs/index.d.ts +104 -0
- package/dist/engines/k6/runtime/ambient-types/k6/experimental/redis/index.d.ts +821 -0
- package/dist/engines/k6/runtime/ambient-types/k6/experimental/streams/index.d.ts +198 -0
- package/dist/engines/k6/runtime/ambient-types/k6/global.d.ts +83 -0
- package/dist/engines/k6/runtime/ambient-types/k6/html/index.d.ts +1325 -0
- package/dist/engines/k6/runtime/ambient-types/k6/http/index.d.ts +806 -0
- package/dist/engines/k6/runtime/ambient-types/k6/index.d.ts +126 -0
- package/dist/engines/k6/runtime/ambient-types/k6/metrics/index.d.ts +66 -0
- package/dist/engines/k6/runtime/ambient-types/k6/net/grpc/index.d.ts +247 -0
- package/dist/engines/k6/runtime/ambient-types/k6/options/index.d.ts +459 -0
- package/dist/engines/k6/runtime/ambient-types/k6/package.json +79 -0
- package/dist/engines/k6/runtime/ambient-types/k6/secrets/index.d.ts +36 -0
- package/dist/engines/k6/runtime/ambient-types/k6/timers/index.d.ts +47 -0
- package/dist/engines/k6/runtime/ambient-types/k6/websockets/index.d.ts +324 -0
- package/dist/engines/k6/runtime/ambient-types/k6/ws/index.d.ts +283 -0
- package/dist/engines/k6/runtime/ambient-types/xk6-sql/LICENSE +201 -0
- package/dist/engines/k6/runtime/ambient-types/xk6-sql/index.d.ts +397 -0
- package/dist/engines/k6/runtime/ambient-types/xk6-sql/package.json +15 -0
- package/dist/engines/k6/runtime/artifacts.d.ts +2 -0
- package/dist/engines/k6/runtime/artifacts.js +1 -0
- package/dist/engines/k6/runtime/checks.d.ts +17 -0
- package/dist/engines/k6/runtime/checks.js +1 -0
- package/dist/engines/k6/runtime/dal-fixtures.d.ts +24 -0
- package/dist/engines/k6/runtime/dal-fixtures.js +1 -0
- package/dist/engines/k6/runtime/dal-suite.d.ts +24 -0
- package/dist/engines/k6/runtime/dal-suite.js +1 -0
- package/dist/engines/k6/runtime/dal.d.ts +10 -0
- package/dist/engines/k6/runtime/dal.js +1 -0
- package/dist/engines/k6/runtime/fixtures.d.ts +3 -0
- package/dist/engines/k6/runtime/fixtures.js +1 -0
- package/dist/engines/k6/runtime/http-assertions.d.ts +19 -0
- package/dist/engines/k6/runtime/http-assertions.js +1 -0
- package/dist/engines/k6/runtime/http-checks.d.ts +19 -0
- package/dist/engines/k6/runtime/http-checks.js +1 -0
- package/dist/engines/k6/runtime/http-suite-runtime.d.ts +103 -0
- package/dist/engines/k6/runtime/http-suite-runtime.js +1 -0
- package/dist/engines/k6/runtime/http.d.ts +15 -0
- package/dist/engines/k6/runtime/http.js +1 -0
- package/dist/engines/k6/runtime/index.d.ts +11 -0
- package/dist/engines/k6/runtime/index.js +1 -0
- package/dist/engines/k6/runtime/input.d.ts +3 -0
- package/dist/engines/k6/runtime/input.js +1 -0
- package/dist/engines/k6/runtime/k6-repository-configuration.d.ts +9 -0
- package/dist/engines/k6/runtime/k6-repository-configuration.js +1 -0
- package/dist/engines/k6/runtime/node-setup.d.ts +13 -0
- package/dist/engines/k6/runtime/node-setup.js +1 -0
- package/dist/engines/k6/runtime/runtime-globals.d.ts +10 -0
- package/dist/engines/k6/runtime/runtime-globals.js +1 -0
- package/dist/engines/k6/runtime/runtime.d.ts +54 -0
- package/dist/engines/k6/runtime/runtime.js +1 -0
- package/dist/engines/k6/runtime/shared/assertion-details.d.ts +19 -0
- package/dist/engines/k6/runtime/shared/assertion-details.js +2 -0
- package/dist/engines/k6/runtime/shared/db-normalization.d.ts +19 -0
- package/dist/engines/k6/runtime/shared/db-normalization.js +1 -0
- package/dist/engines/k6/runtime/shared/error-body.d.ts +3 -0
- package/dist/engines/k6/runtime/shared/error-body.js +1 -0
- package/dist/engines/k6/runtime/shared/file-data.d.ts +1 -0
- package/dist/engines/k6/runtime/shared/file-data.js +1 -0
- package/dist/engines/k6/runtime/shared/fixture-engine.d.ts +8 -0
- package/dist/engines/k6/runtime/shared/fixture-engine.js +2 -0
- package/dist/engines/k6/runtime/shared/http-check-plan.d.ts +29 -0
- package/dist/engines/k6/runtime/shared/http-check-plan.js +1 -0
- package/dist/engines/k6/runtime/shared/http-parsing.d.ts +10 -0
- package/dist/engines/k6/runtime/shared/http-parsing.js +3 -0
- package/dist/engines/k6/runtime/shared/ordering.d.ts +2 -0
- package/dist/engines/k6/runtime/shared/ordering.js +1 -0
- package/dist/engines/k6/runtime/shared/properties.d.ts +1 -0
- package/dist/engines/k6/runtime/shared/properties.js +1 -0
- package/dist/engines/k6/runtime/suite.d.ts +4 -0
- package/dist/engines/k6/runtime/suite.js +1 -0
- package/dist/engines/k6/runtime/types.d.ts +242 -0
- package/dist/engines/k6/runtime/types.js +1 -0
- package/dist/engines/k6/runtime/xk6-sql-driver-postgres.d.ts +7 -0
- package/dist/engines/k6/runtime/xk6-sql-driver-postgres.js +1 -0
- package/dist/engines/managed-module-resolution-policy-input.d.ts +9 -0
- package/dist/engines/managed-module-resolution-policy-input.js +1 -0
- package/dist/engines/managed-module-resolution-policy.d.ts +25 -0
- package/dist/engines/managed-module-resolution-policy.js +1 -0
- package/dist/engines/managed-module-resolution.d.ts +13 -0
- package/dist/engines/managed-module-resolution.js +697 -0
- package/dist/engines/manager.d.ts +24 -0
- package/dist/engines/manager.js +1 -0
- package/dist/engines/node-vitest/adapter/adapter.d.ts +16 -0
- package/dist/engines/node-vitest/adapter/adapter.js +1 -0
- package/dist/engines/node-vitest/adapter/consumer-typescript-paths.d.ts +17 -0
- package/dist/engines/node-vitest/adapter/consumer-typescript-paths.js +3 -0
- package/dist/engines/node-vitest/adapter/evidence.d.ts +33 -0
- package/dist/engines/node-vitest/adapter/evidence.js +2 -0
- package/dist/engines/node-vitest/adapter/failure-details.d.ts +2 -0
- package/dist/engines/node-vitest/adapter/failure-details.js +2 -0
- package/dist/engines/node-vitest/adapter/index.d.ts +1 -0
- package/dist/engines/node-vitest/adapter/index.js +1 -0
- package/dist/engines/node-vitest/adapter/reporter.d.ts +7 -0
- package/dist/engines/node-vitest/adapter/reporter.js +1 -0
- package/dist/engines/node-vitest/adapter/resolution.d.ts +12 -0
- package/dist/engines/node-vitest/adapter/resolution.js +1 -0
- package/dist/engines/node-vitest/adapter/workspace.d.ts +19 -0
- package/dist/engines/node-vitest/adapter/workspace.js +177 -0
- package/dist/engines/node-vitest/runtime/contract/index.d.ts +64 -0
- package/dist/engines/node-vitest/runtime/contract/index.js +1 -0
- package/dist/engines/node-vitest/runtime/data/http.d.ts +4 -0
- package/dist/engines/node-vitest/runtime/data/http.js +1 -0
- package/dist/engines/node-vitest/runtime/data/index.d.ts +8 -0
- package/dist/engines/node-vitest/runtime/data/index.js +1 -0
- package/dist/engines/node-vitest/runtime/data/primitives.d.ts +1 -0
- package/dist/engines/node-vitest/runtime/data/primitives.js +1 -0
- package/dist/engines/node-vitest/runtime/data/report.d.ts +3 -0
- package/dist/engines/node-vitest/runtime/data/report.js +6 -0
- package/dist/engines/node-vitest/runtime/data/runner.d.ts +4 -0
- package/dist/engines/node-vitest/runtime/data/runner.js +1 -0
- package/dist/engines/node-vitest/runtime/data/scenario.d.ts +12 -0
- package/dist/engines/node-vitest/runtime/data/scenario.js +2 -0
- package/dist/engines/node-vitest/runtime/data/types.d.ts +412 -0
- package/dist/engines/node-vitest/runtime/data/types.js +1 -0
- package/dist/engines/node-vitest/runtime/runtime-input.d.ts +63 -0
- package/dist/engines/node-vitest/runtime/runtime-input.js +1 -0
- package/dist/engines/playwright/adapter/adapter.d.ts +18 -0
- package/dist/engines/playwright/adapter/adapter.js +1 -0
- package/dist/engines/playwright/adapter/attachments.d.ts +25 -0
- package/dist/engines/playwright/adapter/attachments.js +1 -0
- package/dist/engines/playwright/adapter/config.d.ts +45 -0
- package/dist/engines/playwright/adapter/config.js +167 -0
- package/dist/engines/playwright/adapter/evidence-validation.d.ts +12 -0
- package/dist/engines/playwright/adapter/evidence-validation.js +1 -0
- package/dist/engines/playwright/adapter/evidence.d.ts +32 -0
- package/dist/engines/playwright/adapter/evidence.js +1 -0
- package/dist/engines/playwright/adapter/failure-details.d.ts +2 -0
- package/dist/engines/playwright/adapter/failure-details.js +2 -0
- package/dist/engines/playwright/adapter/index.d.ts +3 -0
- package/dist/engines/playwright/adapter/index.js +1 -0
- package/dist/engines/playwright/adapter/reporter.d.ts +12 -0
- package/dist/engines/playwright/adapter/reporter.js +1 -0
- package/dist/engines/playwright/runtime/config-file.d.ts +2 -0
- package/dist/engines/playwright/runtime/config-file.js +1 -0
- package/dist/engines/playwright/runtime/config.d.ts +24 -0
- package/dist/engines/playwright/runtime/config.js +1 -0
- package/dist/engines/playwright/runtime/index.d.ts +4 -0
- package/dist/engines/playwright/runtime/index.js +1 -0
- package/dist/engines/playwright/runtime/runtime-input.d.ts +36 -0
- package/dist/engines/playwright/runtime/runtime-input.js +151 -0
- package/dist/engines/playwright/runtime/sandbox.d.ts +84 -0
- package/dist/engines/playwright/runtime/sandbox.js +1 -0
- package/dist/engines/runtime-input-file.d.ts +25 -0
- package/dist/engines/runtime-input-file.js +1 -0
- package/dist/environment/lifecycle-artifacts.d.ts +7 -0
- package/dist/environment/lifecycle-artifacts.js +1 -0
- package/dist/environment/lifecycle-controller.d.ts +71 -0
- package/dist/environment/lifecycle-controller.js +1 -0
- package/dist/environment/lifecycle.d.ts +29 -0
- package/dist/environment/lifecycle.js +1 -0
- package/dist/environment/maintenance.d.ts +68 -0
- package/dist/environment/maintenance.js +1 -0
- package/dist/environment/planning-types.d.ts +35 -0
- package/dist/environment/planning-types.js +1 -0
- package/dist/environment/readiness.d.ts +12 -0
- package/dist/environment/readiness.js +1 -0
- package/dist/environment/ready-environment.d.ts +17 -0
- package/dist/environment/ready-environment.js +1 -0
- package/dist/environment/run-environment.d.ts +38 -0
- package/dist/environment/run-environment.js +1 -0
- package/dist/environment/run-stopping.d.ts +13 -0
- package/dist/environment/run-stopping.js +1 -0
- package/dist/environment/runtime-contexts.d.ts +32 -0
- package/dist/environment/runtime-contexts.js +1 -0
- package/dist/environment/runtime-manager.d.ts +95 -0
- package/dist/environment/runtime-manager.js +1 -0
- package/dist/environment/runtime-planning.d.ts +16 -0
- package/dist/environment/runtime-planning.js +1 -0
- package/dist/environment/runtime-preparation.d.ts +30 -0
- package/dist/environment/runtime-preparation.js +1 -0
- package/dist/environment/runtime-service.d.ts +18 -0
- package/dist/environment/runtime-service.js +1 -0
- package/dist/environment/services.d.ts +48 -0
- package/dist/environment/services.js +1 -0
- package/dist/environment/state.d.ts +18 -0
- package/dist/environment/state.js +1 -0
- package/dist/environment/status-runtime.d.ts +53 -0
- package/dist/environment/status-runtime.js +1 -0
- package/dist/environment/template.d.ts +180 -0
- package/dist/environment/template.js +1 -0
- package/dist/evidence/artifact-config.d.ts +14 -0
- package/dist/evidence/artifact-config.js +1 -0
- package/dist/evidence/artifact-validation.d.ts +5 -0
- package/dist/evidence/artifact-validation.js +1 -0
- package/dist/evidence/artifacts.d.ts +75 -0
- package/dist/evidence/artifacts.js +2 -0
- package/dist/evidence/bundles.d.ts +28 -0
- package/dist/evidence/bundles.js +1 -0
- package/dist/evidence/ci-provenance.d.ts +9 -0
- package/dist/evidence/ci-provenance.js +1 -0
- package/dist/evidence/contracts.d.ts +162 -0
- package/dist/evidence/contracts.js +1 -0
- package/dist/evidence/file-evidence.d.ts +23 -0
- package/dist/evidence/file-evidence.js +1 -0
- package/dist/evidence/finalization.d.ts +9 -0
- package/dist/evidence/finalization.js +1 -0
- package/dist/evidence/index.d.ts +8 -0
- package/dist/evidence/index.js +1 -0
- package/dist/evidence/logs.d.ts +31 -0
- package/dist/evidence/logs.js +2 -0
- package/dist/evidence/operation-timings.d.ts +60 -0
- package/dist/evidence/operation-timings.js +1 -0
- package/dist/evidence/read-bundle.d.ts +4 -0
- package/dist/evidence/read-bundle.js +1 -0
- package/dist/evidence/read-fields.d.ts +22 -0
- package/dist/evidence/read-fields.js +1 -0
- package/dist/evidence/read-provenance.d.ts +2 -0
- package/dist/evidence/read-provenance.js +1 -0
- package/dist/evidence/read-redaction.d.ts +2 -0
- package/dist/evidence/read-redaction.js +1 -0
- package/dist/evidence/read-retention.d.ts +2 -0
- package/dist/evidence/read-retention.js +1 -0
- package/dist/evidence/read-run.d.ts +2 -0
- package/dist/evidence/read-run.js +1 -0
- package/dist/evidence/reading.d.ts +28 -0
- package/dist/evidence/reading.js +1 -0
- package/dist/evidence/reporting-types.d.ts +330 -0
- package/dist/evidence/reporting-types.js +1 -0
- package/dist/evidence/reporting.d.ts +3 -0
- package/dist/evidence/reporting.js +1 -0
- package/dist/evidence/secure-file-copy.d.ts +24 -0
- package/dist/evidence/secure-file-copy.js +1 -0
- package/dist/evidence/setup-progress.d.ts +63 -0
- package/dist/evidence/setup-progress.js +1 -0
- package/dist/evidence/step-output.d.ts +16 -0
- package/dist/evidence/step-output.js +6 -0
- package/dist/evidence/storage-inventory.d.ts +27 -0
- package/dist/evidence/storage-inventory.js +1 -0
- package/dist/evidence/storage.d.ts +27 -0
- package/dist/evidence/storage.js +2 -0
- package/dist/evidence/timing.d.ts +23 -0
- package/dist/evidence/timing.js +1 -0
- package/dist/file.d.ts +11 -0
- package/dist/file.js +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1 -0
- package/dist/kernel/error-serialization.d.ts +38 -0
- package/dist/kernel/error-serialization.js +1 -0
- package/dist/kernel/redaction.d.ts +1 -0
- package/dist/kernel/redaction.js +1 -0
- package/dist/kernel/unknown-values.d.ts +6 -0
- package/dist/kernel/unknown-values.js +1 -0
- package/dist/process/capture-output.d.ts +7 -0
- package/dist/process/capture-output.js +1 -0
- package/dist/process/command-shell.d.ts +1 -0
- package/dist/process/command-shell.js +1 -0
- package/dist/process/environment-overlay.d.ts +17 -0
- package/dist/process/environment-overlay.js +1 -0
- package/dist/process/environment.d.ts +33 -0
- package/dist/process/environment.js +1 -0
- package/dist/process/files/contained-path.d.ts +8 -0
- package/dist/process/files/contained-path.js +1 -0
- package/dist/process/files/directory-status.d.ts +14 -0
- package/dist/process/files/directory-status.js +1 -0
- package/dist/process/files/dotenv.d.ts +2 -0
- package/dist/process/files/dotenv.js +1 -0
- package/dist/process/files/file-snapshot.d.ts +34 -0
- package/dist/process/files/file-snapshot.js +1 -0
- package/dist/process/files/json-file.d.ts +11 -0
- package/dist/process/files/json-file.js +1 -0
- package/dist/process/files/paths.d.ts +1 -0
- package/dist/process/files/paths.js +1 -0
- package/dist/process/files/temp-dir.d.ts +11 -0
- package/dist/process/files/temp-dir.js +1 -0
- package/dist/process/host/metadata.d.ts +6 -0
- package/dist/process/host/metadata.js +1 -0
- package/dist/process/host/platform.d.ts +57 -0
- package/dist/process/host/platform.js +1 -0
- package/dist/process/host-command.d.ts +4 -0
- package/dist/process/host-command.js +3 -0
- package/dist/process/host-inspection-command.d.ts +13 -0
- package/dist/process/host-inspection-command.js +1 -0
- package/dist/process/host-process.d.ts +14 -0
- package/dist/process/host-process.js +1 -0
- package/dist/process/index.d.ts +9 -0
- package/dist/process/index.js +1 -0
- package/dist/process/lifecycle-fence.d.ts +11 -0
- package/dist/process/lifecycle-fence.js +1 -0
- package/dist/process/locks.d.ts +28 -0
- package/dist/process/locks.js +4 -0
- package/dist/process/process-contracts.d.ts +70 -0
- package/dist/process/process-contracts.js +1 -0
- package/dist/process/process-group.d.ts +12 -0
- package/dist/process/process-group.js +1 -0
- package/dist/process/process-identity.d.ts +27 -0
- package/dist/process/process-identity.js +1 -0
- package/dist/process/process-limits.d.ts +6 -0
- package/dist/process/process-limits.js +1 -0
- package/dist/process/process.d.ts +11 -0
- package/dist/process/process.js +1 -0
- package/dist/process/readiness.d.ts +37 -0
- package/dist/process/readiness.js +1 -0
- package/dist/process/recovery.d.ts +3 -0
- package/dist/process/recovery.js +1 -0
- package/dist/process/runs/manifest.d.ts +85 -0
- package/dist/process/runs/manifest.js +1 -0
- package/dist/process/runs/ownership.d.ts +11 -0
- package/dist/process/runs/ownership.js +1 -0
- package/dist/process/runs/product-state.d.ts +2 -0
- package/dist/process/runs/product-state.js +1 -0
- package/dist/process/runs/schema.d.ts +3 -0
- package/dist/process/runs/schema.js +1 -0
- package/dist/process/runs/stop.d.ts +19 -0
- package/dist/process/runs/stop.js +1 -0
- package/dist/process/runtime-socket.d.ts +4 -0
- package/dist/process/runtime-socket.js +1 -0
- package/dist/process/service-processes.d.ts +13 -0
- package/dist/process/service-processes.js +1 -0
- package/dist/process/shutdown.d.ts +10 -0
- package/dist/process/shutdown.js +1 -0
- package/dist/process/windows-cli-owner.d.ts +2 -0
- package/dist/process/windows-cli-owner.js +3 -0
- package/dist/process/windows-native.d.ts +6 -0
- package/dist/process/windows-native.js +1 -0
- package/dist/process/windows-process-identity.d.ts +4 -0
- package/dist/process/windows-process-identity.js +1 -0
- package/dist/repo/ci-environment.d.ts +7 -0
- package/dist/repo/ci-environment.js +1 -0
- package/dist/repo/fingerprint-policy.d.ts +15 -0
- package/dist/repo/fingerprint-policy.js +1 -0
- package/dist/repo/git-path.d.ts +2 -0
- package/dist/repo/git-path.js +1 -0
- package/dist/repo/managed-git.d.ts +10 -0
- package/dist/repo/managed-git.js +1 -0
- package/dist/repo/metadata.d.ts +3 -0
- package/dist/repo/metadata.js +1 -0
- package/dist/repo/physical-tree.d.ts +37 -0
- package/dist/repo/physical-tree.js +1 -0
- package/dist/repo/remote.d.ts +6 -0
- package/dist/repo/remote.js +1 -0
- package/dist/repo/state.d.ts +25 -0
- package/dist/repo/state.js +5 -0
- package/dist/steps/build-config.d.ts +35 -0
- package/dist/steps/build-config.js +1 -0
- package/dist/steps/configured-step-testkit-modules.d.ts +19 -0
- package/dist/steps/configured-step-testkit-modules.js +1 -0
- package/dist/steps/configured-steps.d.ts +51 -0
- package/dist/steps/configured-steps.js +1 -0
- package/dist/steps/environment.d.ts +78 -0
- package/dist/steps/environment.js +1 -0
- package/dist/steps/index.d.ts +2 -0
- package/dist/steps/index.js +1 -0
- package/dist/steps/module-runner.d.ts +1 -0
- package/dist/steps/module-runner.js +1 -0
- package/dist/steps/run.d.ts +36 -0
- package/dist/steps/run.js +3 -0
- package/dist/toolchains/archive.d.ts +53 -0
- package/dist/toolchains/archive.js +1 -0
- package/dist/toolchains/esbuild.d.ts +9 -0
- package/dist/toolchains/esbuild.js +1 -0
- package/dist/toolchains/host-node-support.d.ts +3 -0
- package/dist/toolchains/host-node-support.js +1 -0
- package/dist/toolchains/index.d.ts +114 -0
- package/dist/toolchains/index.js +4 -0
- package/dist/toolchains/managed-node-releases.d.ts +28 -0
- package/dist/toolchains/managed-node-releases.js +1 -0
- package/dist/toolchains/node-cache.d.ts +20 -0
- package/dist/toolchains/node-cache.js +1 -0
- package/dist/toolchains/node-integrity.d.ts +16 -0
- package/dist/toolchains/node-integrity.js +1 -0
- package/dist/toolchains/node-provisioning.d.ts +29 -0
- package/dist/toolchains/node-provisioning.js +2 -0
- package/dist/toolchains/semver.d.ts +13 -0
- package/dist/toolchains/semver.js +1 -0
- package/dist/toolchains/shared-operation.d.ts +11 -0
- package/dist/toolchains/shared-operation.js +1 -0
- package/dist/toolchains/timeouts.d.ts +1 -0
- package/dist/toolchains/timeouts.js +1 -0
- package/dist/toolchains/vitest/index.d.ts +13 -0
- package/dist/toolchains/vitest/index.js +1 -0
- package/docs/cloud-control.md +105 -0
- package/docs/engine-architecture.md +631 -0
- package/docs/test-types.md +120 -0
- package/docs/testkit-cloud-boundary.md +640 -0
- package/node_modules/@isaacs/fs-minipass/LICENSE +15 -0
- package/node_modules/@isaacs/fs-minipass/README.md +71 -0
- package/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts +118 -0
- package/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +430 -0
- package/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map +1 -0
- package/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +3 -0
- package/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts +118 -0
- package/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map +1 -0
- package/node_modules/@isaacs/fs-minipass/dist/esm/index.js +420 -0
- package/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map +1 -0
- package/node_modules/@isaacs/fs-minipass/dist/esm/package.json +3 -0
- package/node_modules/@isaacs/fs-minipass/package.json +72 -0
- package/node_modules/buffer-crc32/LICENSE +19 -0
- package/node_modules/buffer-crc32/README.md +55 -0
- package/node_modules/buffer-crc32/dist/index.cjs +306 -0
- package/node_modules/buffer-crc32/dist/index.d.cts +35 -0
- package/node_modules/buffer-crc32/dist/index.d.mts +35 -0
- package/node_modules/buffer-crc32/dist/index.mjs +304 -0
- package/node_modules/buffer-crc32/index.d.ts +35 -0
- package/node_modules/buffer-crc32/package.json +54 -0
- package/node_modules/chownr/LICENSE.md +63 -0
- package/node_modules/chownr/README.md +3 -0
- package/node_modules/chownr/dist/commonjs/index.d.ts +3 -0
- package/node_modules/chownr/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/chownr/dist/commonjs/index.js +93 -0
- package/node_modules/chownr/dist/commonjs/index.js.map +1 -0
- package/node_modules/chownr/dist/commonjs/package.json +3 -0
- package/node_modules/chownr/dist/esm/index.d.ts +3 -0
- package/node_modules/chownr/dist/esm/index.d.ts.map +1 -0
- package/node_modules/chownr/dist/esm/index.js +85 -0
- package/node_modules/chownr/dist/esm/index.js.map +1 -0
- package/node_modules/chownr/dist/esm/package.json +3 -0
- package/node_modules/chownr/package.json +69 -0
- package/node_modules/diff/CONTRIBUTING.md +28 -0
- package/node_modules/diff/LICENSE +29 -0
- package/node_modules/diff/README.md +468 -0
- package/node_modules/diff/dist/diff.js +2313 -0
- package/node_modules/diff/dist/diff.min.js +1 -0
- package/node_modules/diff/eslint.config.mjs +182 -0
- package/node_modules/diff/libcjs/convert/dmp.d.ts +8 -0
- package/node_modules/diff/libcjs/convert/dmp.d.ts.map +1 -0
- package/node_modules/diff/libcjs/convert/dmp.js +24 -0
- package/node_modules/diff/libcjs/convert/xml.d.ts +6 -0
- package/node_modules/diff/libcjs/convert/xml.d.ts.map +1 -0
- package/node_modules/diff/libcjs/convert/xml.js +34 -0
- package/node_modules/diff/libcjs/diff/array.d.ts +19 -0
- package/node_modules/diff/libcjs/diff/array.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/array.js +23 -0
- package/node_modules/diff/libcjs/diff/base.d.ts +20 -0
- package/node_modules/diff/libcjs/diff/base.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/base.js +256 -0
- package/node_modules/diff/libcjs/diff/character.d.ts +19 -0
- package/node_modules/diff/libcjs/diff/character.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/character.js +14 -0
- package/node_modules/diff/libcjs/diff/css.d.ts +18 -0
- package/node_modules/diff/libcjs/diff/css.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/css.js +17 -0
- package/node_modules/diff/libcjs/diff/json.d.ts +24 -0
- package/node_modules/diff/libcjs/diff/json.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/json.js +86 -0
- package/node_modules/diff/libcjs/diff/line.d.ts +24 -0
- package/node_modules/diff/libcjs/diff/line.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/line.js +74 -0
- package/node_modules/diff/libcjs/diff/sentence.d.ts +21 -0
- package/node_modules/diff/libcjs/diff/sentence.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/sentence.js +50 -0
- package/node_modules/diff/libcjs/diff/word.d.ts +35 -0
- package/node_modules/diff/libcjs/diff/word.d.ts.map +1 -0
- package/node_modules/diff/libcjs/diff/word.js +289 -0
- package/node_modules/diff/libcjs/index.d.ts +20 -0
- package/node_modules/diff/libcjs/index.d.ts.map +1 -0
- package/node_modules/diff/libcjs/index.js +67 -0
- package/node_modules/diff/libcjs/package.json +1 -0
- package/node_modules/diff/libcjs/patch/apply.d.ts +62 -0
- package/node_modules/diff/libcjs/patch/apply.d.ts.map +1 -0
- package/node_modules/diff/libcjs/patch/apply.js +264 -0
- package/node_modules/diff/libcjs/patch/create.d.ts +131 -0
- package/node_modules/diff/libcjs/patch/create.d.ts.map +1 -0
- package/node_modules/diff/libcjs/patch/create.js +364 -0
- package/node_modules/diff/libcjs/patch/line-endings.d.ts +17 -0
- package/node_modules/diff/libcjs/patch/line-endings.d.ts.map +1 -0
- package/node_modules/diff/libcjs/patch/line-endings.js +50 -0
- package/node_modules/diff/libcjs/patch/parse.d.ts +16 -0
- package/node_modules/diff/libcjs/patch/parse.d.ts.map +1 -0
- package/node_modules/diff/libcjs/patch/parse.js +515 -0
- package/node_modules/diff/libcjs/patch/reverse.d.ts +22 -0
- package/node_modules/diff/libcjs/patch/reverse.d.ts.map +1 -0
- package/node_modules/diff/libcjs/patch/reverse.js +63 -0
- package/node_modules/diff/libcjs/types.d.ts +260 -0
- package/node_modules/diff/libcjs/types.d.ts.map +1 -0
- package/node_modules/diff/libcjs/types.js +2 -0
- package/node_modules/diff/libcjs/util/array.d.ts +3 -0
- package/node_modules/diff/libcjs/util/array.d.ts.map +1 -0
- package/node_modules/diff/libcjs/util/array.js +21 -0
- package/node_modules/diff/libcjs/util/distance-iterator.d.ts +2 -0
- package/node_modules/diff/libcjs/util/distance-iterator.d.ts.map +1 -0
- package/node_modules/diff/libcjs/util/distance-iterator.js +40 -0
- package/node_modules/diff/libcjs/util/params.d.ts +4 -0
- package/node_modules/diff/libcjs/util/params.d.ts.map +1 -0
- package/node_modules/diff/libcjs/util/params.js +17 -0
- package/node_modules/diff/libcjs/util/string.d.ts +30 -0
- package/node_modules/diff/libcjs/util/string.d.ts.map +1 -0
- package/node_modules/diff/libcjs/util/string.js +199 -0
- package/node_modules/diff/libesm/convert/dmp.d.ts +8 -0
- package/node_modules/diff/libesm/convert/dmp.d.ts.map +1 -0
- package/node_modules/diff/libesm/convert/dmp.js +21 -0
- package/node_modules/diff/libesm/convert/xml.d.ts +6 -0
- package/node_modules/diff/libesm/convert/xml.d.ts.map +1 -0
- package/node_modules/diff/libesm/convert/xml.js +31 -0
- package/node_modules/diff/libesm/diff/array.d.ts +19 -0
- package/node_modules/diff/libesm/diff/array.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/array.js +16 -0
- package/node_modules/diff/libesm/diff/base.d.ts +20 -0
- package/node_modules/diff/libesm/diff/base.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/base.js +253 -0
- package/node_modules/diff/libesm/diff/character.d.ts +19 -0
- package/node_modules/diff/libesm/diff/character.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/character.js +7 -0
- package/node_modules/diff/libesm/diff/css.d.ts +18 -0
- package/node_modules/diff/libesm/diff/css.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/css.js +10 -0
- package/node_modules/diff/libesm/diff/json.d.ts +24 -0
- package/node_modules/diff/libesm/diff/json.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/json.js +78 -0
- package/node_modules/diff/libesm/diff/line.d.ts +24 -0
- package/node_modules/diff/libesm/diff/line.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/line.js +65 -0
- package/node_modules/diff/libesm/diff/sentence.d.ts +21 -0
- package/node_modules/diff/libesm/diff/sentence.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/sentence.js +43 -0
- package/node_modules/diff/libesm/diff/word.d.ts +35 -0
- package/node_modules/diff/libesm/diff/word.d.ts.map +1 -0
- package/node_modules/diff/libesm/diff/word.js +281 -0
- package/node_modules/diff/libesm/index.d.ts +20 -0
- package/node_modules/diff/libesm/index.d.ts.map +1 -0
- package/node_modules/diff/libesm/index.js +30 -0
- package/node_modules/diff/libesm/package.json +1 -0
- package/node_modules/diff/libesm/patch/apply.d.ts +62 -0
- package/node_modules/diff/libesm/patch/apply.d.ts.map +1 -0
- package/node_modules/diff/libesm/patch/apply.js +257 -0
- package/node_modules/diff/libesm/patch/create.d.ts +131 -0
- package/node_modules/diff/libesm/patch/create.d.ts.map +1 -0
- package/node_modules/diff/libesm/patch/create.js +357 -0
- package/node_modules/diff/libesm/patch/line-endings.d.ts +17 -0
- package/node_modules/diff/libesm/patch/line-endings.d.ts.map +1 -0
- package/node_modules/diff/libesm/patch/line-endings.js +44 -0
- package/node_modules/diff/libesm/patch/parse.d.ts +16 -0
- package/node_modules/diff/libesm/patch/parse.d.ts.map +1 -0
- package/node_modules/diff/libesm/patch/parse.js +512 -0
- package/node_modules/diff/libesm/patch/reverse.d.ts +22 -0
- package/node_modules/diff/libesm/patch/reverse.d.ts.map +1 -0
- package/node_modules/diff/libesm/patch/reverse.js +60 -0
- package/node_modules/diff/libesm/types.d.ts +260 -0
- package/node_modules/diff/libesm/types.d.ts.map +1 -0
- package/node_modules/diff/libesm/types.js +1 -0
- package/node_modules/diff/libesm/util/array.d.ts +3 -0
- package/node_modules/diff/libesm/util/array.d.ts.map +1 -0
- package/node_modules/diff/libesm/util/array.js +17 -0
- package/node_modules/diff/libesm/util/distance-iterator.d.ts +2 -0
- package/node_modules/diff/libesm/util/distance-iterator.d.ts.map +1 -0
- package/node_modules/diff/libesm/util/distance-iterator.js +37 -0
- package/node_modules/diff/libesm/util/params.d.ts +4 -0
- package/node_modules/diff/libesm/util/params.d.ts.map +1 -0
- package/node_modules/diff/libesm/util/params.js +14 -0
- package/node_modules/diff/libesm/util/string.d.ts +30 -0
- package/node_modules/diff/libesm/util/string.d.ts.map +1 -0
- package/node_modules/diff/libesm/util/string.js +184 -0
- package/node_modules/diff/package.json +130 -0
- package/node_modules/diff/release-notes.md +474 -0
- package/node_modules/minipass/LICENSE.md +55 -0
- package/node_modules/minipass/README.md +825 -0
- package/node_modules/minipass/dist/commonjs/index.d.ts +545 -0
- package/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/minipass/dist/commonjs/index.js +1038 -0
- package/node_modules/minipass/dist/commonjs/index.js.map +1 -0
- package/node_modules/minipass/dist/commonjs/package.json +3 -0
- package/node_modules/minipass/dist/esm/index.d.ts +545 -0
- package/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
- package/node_modules/minipass/dist/esm/index.js +1020 -0
- package/node_modules/minipass/dist/esm/index.js.map +1 -0
- package/node_modules/minipass/dist/esm/package.json +3 -0
- package/node_modules/minipass/package.json +77 -0
- package/node_modules/minizlib/LICENSE +26 -0
- package/node_modules/minizlib/README.md +64 -0
- package/node_modules/minizlib/dist/commonjs/constants.d.ts +2 -0
- package/node_modules/minizlib/dist/commonjs/constants.d.ts.map +1 -0
- package/node_modules/minizlib/dist/commonjs/constants.js +123 -0
- package/node_modules/minizlib/dist/commonjs/constants.js.map +1 -0
- package/node_modules/minizlib/dist/commonjs/index.d.ts +99 -0
- package/node_modules/minizlib/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/minizlib/dist/commonjs/index.js +416 -0
- package/node_modules/minizlib/dist/commonjs/index.js.map +1 -0
- package/node_modules/minizlib/dist/commonjs/package.json +3 -0
- package/node_modules/minizlib/dist/esm/constants.d.ts +2 -0
- package/node_modules/minizlib/dist/esm/constants.d.ts.map +1 -0
- package/node_modules/minizlib/dist/esm/constants.js +117 -0
- package/node_modules/minizlib/dist/esm/constants.js.map +1 -0
- package/node_modules/minizlib/dist/esm/index.d.ts +99 -0
- package/node_modules/minizlib/dist/esm/index.d.ts.map +1 -0
- package/node_modules/minizlib/dist/esm/index.js +363 -0
- package/node_modules/minizlib/dist/esm/index.js.map +1 -0
- package/node_modules/minizlib/dist/esm/package.json +3 -0
- package/node_modules/minizlib/package.json +80 -0
- package/node_modules/pend/LICENSE +23 -0
- package/node_modules/pend/README.md +41 -0
- package/node_modules/pend/index.js +55 -0
- package/node_modules/pend/package.json +18 -0
- package/node_modules/pend/test.js +137 -0
- package/node_modules/tar/LICENSE.md +55 -0
- package/node_modules/tar/README.md +1233 -0
- package/node_modules/tar/dist/commonjs/create.d.ts +3 -0
- package/node_modules/tar/dist/commonjs/create.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/create.js +82 -0
- package/node_modules/tar/dist/commonjs/create.js.map +1 -0
- package/node_modules/tar/dist/commonjs/cwd-error.d.ts +8 -0
- package/node_modules/tar/dist/commonjs/cwd-error.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/cwd-error.js +18 -0
- package/node_modules/tar/dist/commonjs/cwd-error.js.map +1 -0
- package/node_modules/tar/dist/commonjs/extract.d.ts +3 -0
- package/node_modules/tar/dist/commonjs/extract.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/extract.js +88 -0
- package/node_modules/tar/dist/commonjs/extract.js.map +1 -0
- package/node_modules/tar/dist/commonjs/get-write-flag.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/get-write-flag.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/get-write-flag.js +32 -0
- package/node_modules/tar/dist/commonjs/get-write-flag.js.map +1 -0
- package/node_modules/tar/dist/commonjs/header.d.ts +53 -0
- package/node_modules/tar/dist/commonjs/header.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/header.js +348 -0
- package/node_modules/tar/dist/commonjs/header.js.map +1 -0
- package/node_modules/tar/dist/commonjs/index.d.ts +20 -0
- package/node_modules/tar/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/index.js +64 -0
- package/node_modules/tar/dist/commonjs/index.js.map +1 -0
- package/node_modules/tar/dist/commonjs/index.min.js +4 -0
- package/node_modules/tar/dist/commonjs/index.min.js.map +7 -0
- package/node_modules/tar/dist/commonjs/large-numbers.d.ts +3 -0
- package/node_modules/tar/dist/commonjs/large-numbers.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/large-numbers.js +99 -0
- package/node_modules/tar/dist/commonjs/large-numbers.js.map +1 -0
- package/node_modules/tar/dist/commonjs/list.d.ts +7 -0
- package/node_modules/tar/dist/commonjs/list.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/list.js +153 -0
- package/node_modules/tar/dist/commonjs/list.js.map +1 -0
- package/node_modules/tar/dist/commonjs/make-command.d.ts +49 -0
- package/node_modules/tar/dist/commonjs/make-command.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/make-command.js +52 -0
- package/node_modules/tar/dist/commonjs/make-command.js.map +1 -0
- package/node_modules/tar/dist/commonjs/mkdir.d.ts +25 -0
- package/node_modules/tar/dist/commonjs/mkdir.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/mkdir.js +187 -0
- package/node_modules/tar/dist/commonjs/mkdir.js.map +1 -0
- package/node_modules/tar/dist/commonjs/mode-fix.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/mode-fix.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/mode-fix.js +29 -0
- package/node_modules/tar/dist/commonjs/mode-fix.js.map +1 -0
- package/node_modules/tar/dist/commonjs/normalize-unicode.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/normalize-unicode.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/normalize-unicode.js +38 -0
- package/node_modules/tar/dist/commonjs/normalize-unicode.js.map +1 -0
- package/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/normalize-windows-path.js +12 -0
- package/node_modules/tar/dist/commonjs/normalize-windows-path.js.map +1 -0
- package/node_modules/tar/dist/commonjs/options.d.ts +604 -0
- package/node_modules/tar/dist/commonjs/options.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/options.js +66 -0
- package/node_modules/tar/dist/commonjs/options.js.map +1 -0
- package/node_modules/tar/dist/commonjs/pack.d.ts +105 -0
- package/node_modules/tar/dist/commonjs/pack.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/pack.js +544 -0
- package/node_modules/tar/dist/commonjs/pack.js.map +1 -0
- package/node_modules/tar/dist/commonjs/package.json +3 -0
- package/node_modules/tar/dist/commonjs/parse.d.ts +92 -0
- package/node_modules/tar/dist/commonjs/parse.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/parse.js +655 -0
- package/node_modules/tar/dist/commonjs/parse.js.map +1 -0
- package/node_modules/tar/dist/commonjs/path-reservations.d.ts +11 -0
- package/node_modules/tar/dist/commonjs/path-reservations.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/path-reservations.js +170 -0
- package/node_modules/tar/dist/commonjs/path-reservations.js.map +1 -0
- package/node_modules/tar/dist/commonjs/pax.d.ts +26 -0
- package/node_modules/tar/dist/commonjs/pax.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/pax.js +182 -0
- package/node_modules/tar/dist/commonjs/pax.js.map +1 -0
- package/node_modules/tar/dist/commonjs/process-umask.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/process-umask.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/process-umask.js +7 -0
- package/node_modules/tar/dist/commonjs/process-umask.js.map +1 -0
- package/node_modules/tar/dist/commonjs/read-entry.d.ts +36 -0
- package/node_modules/tar/dist/commonjs/read-entry.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/read-entry.js +136 -0
- package/node_modules/tar/dist/commonjs/read-entry.js.map +1 -0
- package/node_modules/tar/dist/commonjs/replace.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/replace.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/replace.js +227 -0
- package/node_modules/tar/dist/commonjs/replace.js.map +1 -0
- package/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/strip-absolute-path.js +29 -0
- package/node_modules/tar/dist/commonjs/strip-absolute-path.js.map +1 -0
- package/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +18 -0
- package/node_modules/tar/dist/commonjs/strip-trailing-slashes.js.map +1 -0
- package/node_modules/tar/dist/commonjs/symlink-error.d.ts +9 -0
- package/node_modules/tar/dist/commonjs/symlink-error.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/symlink-error.js +19 -0
- package/node_modules/tar/dist/commonjs/symlink-error.js.map +1 -0
- package/node_modules/tar/dist/commonjs/types.d.ts +16 -0
- package/node_modules/tar/dist/commonjs/types.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/types.js +70 -0
- package/node_modules/tar/dist/commonjs/types.js.map +1 -0
- package/node_modules/tar/dist/commonjs/unpack.d.ts +101 -0
- package/node_modules/tar/dist/commonjs/unpack.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/unpack.js +932 -0
- package/node_modules/tar/dist/commonjs/unpack.js.map +1 -0
- package/node_modules/tar/dist/commonjs/update.d.ts +2 -0
- package/node_modules/tar/dist/commonjs/update.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/update.js +33 -0
- package/node_modules/tar/dist/commonjs/update.js.map +1 -0
- package/node_modules/tar/dist/commonjs/warn-method.d.ts +24 -0
- package/node_modules/tar/dist/commonjs/warn-method.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/warn-method.js +31 -0
- package/node_modules/tar/dist/commonjs/warn-method.js.map +1 -0
- package/node_modules/tar/dist/commonjs/winchars.d.ts +3 -0
- package/node_modules/tar/dist/commonjs/winchars.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/winchars.js +14 -0
- package/node_modules/tar/dist/commonjs/winchars.js.map +1 -0
- package/node_modules/tar/dist/commonjs/write-entry.d.ts +129 -0
- package/node_modules/tar/dist/commonjs/write-entry.d.ts.map +1 -0
- package/node_modules/tar/dist/commonjs/write-entry.js +698 -0
- package/node_modules/tar/dist/commonjs/write-entry.js.map +1 -0
- package/node_modules/tar/dist/esm/create.d.ts +3 -0
- package/node_modules/tar/dist/esm/create.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/create.js +76 -0
- package/node_modules/tar/dist/esm/create.js.map +1 -0
- package/node_modules/tar/dist/esm/cwd-error.d.ts +8 -0
- package/node_modules/tar/dist/esm/cwd-error.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/cwd-error.js +14 -0
- package/node_modules/tar/dist/esm/cwd-error.js.map +1 -0
- package/node_modules/tar/dist/esm/extract.d.ts +3 -0
- package/node_modules/tar/dist/esm/extract.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/extract.js +49 -0
- package/node_modules/tar/dist/esm/extract.js.map +1 -0
- package/node_modules/tar/dist/esm/get-write-flag.d.ts +2 -0
- package/node_modules/tar/dist/esm/get-write-flag.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/get-write-flag.js +26 -0
- package/node_modules/tar/dist/esm/get-write-flag.js.map +1 -0
- package/node_modules/tar/dist/esm/header.d.ts +53 -0
- package/node_modules/tar/dist/esm/header.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/header.js +311 -0
- package/node_modules/tar/dist/esm/header.js.map +1 -0
- package/node_modules/tar/dist/esm/index.d.ts +20 -0
- package/node_modules/tar/dist/esm/index.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/index.js +20 -0
- package/node_modules/tar/dist/esm/index.js.map +1 -0
- package/node_modules/tar/dist/esm/index.min.js +4 -0
- package/node_modules/tar/dist/esm/index.min.js.map +7 -0
- package/node_modules/tar/dist/esm/large-numbers.d.ts +3 -0
- package/node_modules/tar/dist/esm/large-numbers.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/large-numbers.js +94 -0
- package/node_modules/tar/dist/esm/large-numbers.js.map +1 -0
- package/node_modules/tar/dist/esm/list.d.ts +7 -0
- package/node_modules/tar/dist/esm/list.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/list.js +113 -0
- package/node_modules/tar/dist/esm/list.js.map +1 -0
- package/node_modules/tar/dist/esm/make-command.d.ts +49 -0
- package/node_modules/tar/dist/esm/make-command.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/make-command.js +48 -0
- package/node_modules/tar/dist/esm/make-command.js.map +1 -0
- package/node_modules/tar/dist/esm/mkdir.d.ts +25 -0
- package/node_modules/tar/dist/esm/mkdir.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/mkdir.js +179 -0
- package/node_modules/tar/dist/esm/mkdir.js.map +1 -0
- package/node_modules/tar/dist/esm/mode-fix.d.ts +2 -0
- package/node_modules/tar/dist/esm/mode-fix.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/mode-fix.js +25 -0
- package/node_modules/tar/dist/esm/mode-fix.js.map +1 -0
- package/node_modules/tar/dist/esm/normalize-unicode.d.ts +2 -0
- package/node_modules/tar/dist/esm/normalize-unicode.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/normalize-unicode.js +34 -0
- package/node_modules/tar/dist/esm/normalize-unicode.js.map +1 -0
- package/node_modules/tar/dist/esm/normalize-windows-path.d.ts +2 -0
- package/node_modules/tar/dist/esm/normalize-windows-path.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/normalize-windows-path.js +9 -0
- package/node_modules/tar/dist/esm/normalize-windows-path.js.map +1 -0
- package/node_modules/tar/dist/esm/options.d.ts +604 -0
- package/node_modules/tar/dist/esm/options.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/options.js +54 -0
- package/node_modules/tar/dist/esm/options.js.map +1 -0
- package/node_modules/tar/dist/esm/pack.d.ts +105 -0
- package/node_modules/tar/dist/esm/pack.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/pack.js +502 -0
- package/node_modules/tar/dist/esm/pack.js.map +1 -0
- package/node_modules/tar/dist/esm/package.json +3 -0
- package/node_modules/tar/dist/esm/parse.d.ts +92 -0
- package/node_modules/tar/dist/esm/parse.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/parse.js +651 -0
- package/node_modules/tar/dist/esm/parse.js.map +1 -0
- package/node_modules/tar/dist/esm/path-reservations.d.ts +11 -0
- package/node_modules/tar/dist/esm/path-reservations.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/path-reservations.js +166 -0
- package/node_modules/tar/dist/esm/path-reservations.js.map +1 -0
- package/node_modules/tar/dist/esm/pax.d.ts +26 -0
- package/node_modules/tar/dist/esm/pax.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/pax.js +178 -0
- package/node_modules/tar/dist/esm/pax.js.map +1 -0
- package/node_modules/tar/dist/esm/process-umask.d.ts +2 -0
- package/node_modules/tar/dist/esm/process-umask.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/process-umask.js +3 -0
- package/node_modules/tar/dist/esm/process-umask.js.map +1 -0
- package/node_modules/tar/dist/esm/read-entry.d.ts +36 -0
- package/node_modules/tar/dist/esm/read-entry.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/read-entry.js +132 -0
- package/node_modules/tar/dist/esm/read-entry.js.map +1 -0
- package/node_modules/tar/dist/esm/replace.d.ts +2 -0
- package/node_modules/tar/dist/esm/replace.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/replace.js +221 -0
- package/node_modules/tar/dist/esm/replace.js.map +1 -0
- package/node_modules/tar/dist/esm/strip-absolute-path.d.ts +2 -0
- package/node_modules/tar/dist/esm/strip-absolute-path.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/strip-absolute-path.js +25 -0
- package/node_modules/tar/dist/esm/strip-absolute-path.js.map +1 -0
- package/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts +2 -0
- package/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/strip-trailing-slashes.js +14 -0
- package/node_modules/tar/dist/esm/strip-trailing-slashes.js.map +1 -0
- package/node_modules/tar/dist/esm/symlink-error.d.ts +9 -0
- package/node_modules/tar/dist/esm/symlink-error.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/symlink-error.js +15 -0
- package/node_modules/tar/dist/esm/symlink-error.js.map +1 -0
- package/node_modules/tar/dist/esm/types.d.ts +16 -0
- package/node_modules/tar/dist/esm/types.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/types.js +65 -0
- package/node_modules/tar/dist/esm/types.js.map +1 -0
- package/node_modules/tar/dist/esm/unpack.d.ts +101 -0
- package/node_modules/tar/dist/esm/unpack.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/unpack.js +891 -0
- package/node_modules/tar/dist/esm/unpack.js.map +1 -0
- package/node_modules/tar/dist/esm/update.d.ts +2 -0
- package/node_modules/tar/dist/esm/update.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/update.js +30 -0
- package/node_modules/tar/dist/esm/update.js.map +1 -0
- package/node_modules/tar/dist/esm/warn-method.d.ts +24 -0
- package/node_modules/tar/dist/esm/warn-method.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/warn-method.js +27 -0
- package/node_modules/tar/dist/esm/warn-method.js.map +1 -0
- package/node_modules/tar/dist/esm/winchars.d.ts +3 -0
- package/node_modules/tar/dist/esm/winchars.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/winchars.js +9 -0
- package/node_modules/tar/dist/esm/winchars.js.map +1 -0
- package/node_modules/tar/dist/esm/write-entry.d.ts +129 -0
- package/node_modules/tar/dist/esm/write-entry.d.ts.map +1 -0
- package/node_modules/tar/dist/esm/write-entry.js +656 -0
- package/node_modules/tar/dist/esm/write-entry.js.map +1 -0
- package/node_modules/tar/package.json +298 -0
- package/node_modules/typescript/LICENSE.txt +55 -0
- package/node_modules/typescript/README.md +50 -0
- package/node_modules/typescript/SECURITY.md +41 -0
- package/node_modules/typescript/ThirdPartyNoticeText.txt +193 -0
- package/node_modules/typescript/bin/tsc +2 -0
- package/node_modules/typescript/bin/tsserver +2 -0
- package/node_modules/typescript/lib/_tsc.js +133818 -0
- package/node_modules/typescript/lib/_tsserver.js +659 -0
- package/node_modules/typescript/lib/_typingsInstaller.js +222 -0
- package/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/de/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/es/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/it/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/lib.d.ts +22 -0
- package/node_modules/typescript/lib/lib.decorators.d.ts +384 -0
- package/node_modules/typescript/lib/lib.decorators.legacy.d.ts +22 -0
- package/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +41 -0
- package/node_modules/typescript/lib/lib.dom.d.ts +39429 -0
- package/node_modules/typescript/lib/lib.dom.iterable.d.ts +571 -0
- package/node_modules/typescript/lib/lib.es2015.collection.d.ts +147 -0
- package/node_modules/typescript/lib/lib.es2015.core.d.ts +597 -0
- package/node_modules/typescript/lib/lib.es2015.d.ts +28 -0
- package/node_modules/typescript/lib/lib.es2015.generator.d.ts +77 -0
- package/node_modules/typescript/lib/lib.es2015.iterable.d.ts +605 -0
- package/node_modules/typescript/lib/lib.es2015.promise.d.ts +81 -0
- package/node_modules/typescript/lib/lib.es2015.proxy.d.ts +128 -0
- package/node_modules/typescript/lib/lib.es2015.reflect.d.ts +144 -0
- package/node_modules/typescript/lib/lib.es2015.symbol.d.ts +46 -0
- package/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +326 -0
- package/node_modules/typescript/lib/lib.es2016.array.include.d.ts +116 -0
- package/node_modules/typescript/lib/lib.es2016.d.ts +21 -0
- package/node_modules/typescript/lib/lib.es2016.full.d.ts +23 -0
- package/node_modules/typescript/lib/lib.es2016.intl.d.ts +31 -0
- package/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +21 -0
- package/node_modules/typescript/lib/lib.es2017.d.ts +26 -0
- package/node_modules/typescript/lib/lib.es2017.date.d.ts +31 -0
- package/node_modules/typescript/lib/lib.es2017.full.d.ts +23 -0
- package/node_modules/typescript/lib/lib.es2017.intl.d.ts +44 -0
- package/node_modules/typescript/lib/lib.es2017.object.d.ts +49 -0
- package/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +135 -0
- package/node_modules/typescript/lib/lib.es2017.string.d.ts +45 -0
- package/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +53 -0
- package/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +77 -0
- package/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +53 -0
- package/node_modules/typescript/lib/lib.es2018.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2018.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2018.intl.d.ts +83 -0
- package/node_modules/typescript/lib/lib.es2018.promise.d.ts +30 -0
- package/node_modules/typescript/lib/lib.es2018.regexp.d.ts +37 -0
- package/node_modules/typescript/lib/lib.es2019.array.d.ts +79 -0
- package/node_modules/typescript/lib/lib.es2019.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2019.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2019.intl.d.ts +23 -0
- package/node_modules/typescript/lib/lib.es2019.object.d.ts +33 -0
- package/node_modules/typescript/lib/lib.es2019.string.d.ts +37 -0
- package/node_modules/typescript/lib/lib.es2019.symbol.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2020.bigint.d.ts +765 -0
- package/node_modules/typescript/lib/lib.es2020.d.ts +27 -0
- package/node_modules/typescript/lib/lib.es2020.date.d.ts +42 -0
- package/node_modules/typescript/lib/lib.es2020.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2020.intl.d.ts +474 -0
- package/node_modules/typescript/lib/lib.es2020.number.d.ts +28 -0
- package/node_modules/typescript/lib/lib.es2020.promise.d.ts +47 -0
- package/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +99 -0
- package/node_modules/typescript/lib/lib.es2020.string.d.ts +44 -0
- package/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +41 -0
- package/node_modules/typescript/lib/lib.es2021.d.ts +23 -0
- package/node_modules/typescript/lib/lib.es2021.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2021.intl.d.ts +166 -0
- package/node_modules/typescript/lib/lib.es2021.promise.d.ts +48 -0
- package/node_modules/typescript/lib/lib.es2021.string.d.ts +33 -0
- package/node_modules/typescript/lib/lib.es2021.weakref.d.ts +78 -0
- package/node_modules/typescript/lib/lib.es2022.array.d.ts +121 -0
- package/node_modules/typescript/lib/lib.es2022.d.ts +25 -0
- package/node_modules/typescript/lib/lib.es2022.error.d.ts +75 -0
- package/node_modules/typescript/lib/lib.es2022.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2022.intl.d.ts +145 -0
- package/node_modules/typescript/lib/lib.es2022.object.d.ts +26 -0
- package/node_modules/typescript/lib/lib.es2022.regexp.d.ts +39 -0
- package/node_modules/typescript/lib/lib.es2022.string.d.ts +25 -0
- package/node_modules/typescript/lib/lib.es2023.array.d.ts +924 -0
- package/node_modules/typescript/lib/lib.es2023.collection.d.ts +21 -0
- package/node_modules/typescript/lib/lib.es2023.d.ts +22 -0
- package/node_modules/typescript/lib/lib.es2023.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2023.intl.d.ts +56 -0
- package/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +65 -0
- package/node_modules/typescript/lib/lib.es2024.collection.d.ts +29 -0
- package/node_modules/typescript/lib/lib.es2024.d.ts +26 -0
- package/node_modules/typescript/lib/lib.es2024.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.es2024.object.d.ts +29 -0
- package/node_modules/typescript/lib/lib.es2024.promise.d.ts +35 -0
- package/node_modules/typescript/lib/lib.es2024.regexp.d.ts +25 -0
- package/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +68 -0
- package/node_modules/typescript/lib/lib.es2024.string.d.ts +29 -0
- package/node_modules/typescript/lib/lib.es5.d.ts +4601 -0
- package/node_modules/typescript/lib/lib.es6.d.ts +23 -0
- package/node_modules/typescript/lib/lib.esnext.array.d.ts +35 -0
- package/node_modules/typescript/lib/lib.esnext.collection.d.ts +96 -0
- package/node_modules/typescript/lib/lib.esnext.d.ts +29 -0
- package/node_modules/typescript/lib/lib.esnext.decorators.d.ts +28 -0
- package/node_modules/typescript/lib/lib.esnext.disposable.d.ts +193 -0
- package/node_modules/typescript/lib/lib.esnext.error.d.ts +24 -0
- package/node_modules/typescript/lib/lib.esnext.float16.d.ts +445 -0
- package/node_modules/typescript/lib/lib.esnext.full.d.ts +24 -0
- package/node_modules/typescript/lib/lib.esnext.intl.d.ts +21 -0
- package/node_modules/typescript/lib/lib.esnext.iterator.d.ts +148 -0
- package/node_modules/typescript/lib/lib.esnext.promise.d.ts +34 -0
- package/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +25 -0
- package/node_modules/typescript/lib/lib.scripthost.d.ts +322 -0
- package/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +41 -0
- package/node_modules/typescript/lib/lib.webworker.d.ts +13150 -0
- package/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +23 -0
- package/node_modules/typescript/lib/lib.webworker.iterable.d.ts +340 -0
- package/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/tsc.js +8 -0
- package/node_modules/typescript/lib/tsserver.js +8 -0
- package/node_modules/typescript/lib/tsserverlibrary.d.ts +17 -0
- package/node_modules/typescript/lib/tsserverlibrary.js +21 -0
- package/node_modules/typescript/lib/typesMap.json +497 -0
- package/node_modules/typescript/lib/typescript.d.ts +11437 -0
- package/node_modules/typescript/lib/typescript.js +200276 -0
- package/node_modules/typescript/lib/typingsInstaller.js +8 -0
- package/node_modules/typescript/lib/watchGuard.js +53 -0
- package/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +2122 -0
- package/node_modules/typescript/package.json +120 -0
- package/node_modules/yallist/LICENSE.md +63 -0
- package/node_modules/yallist/README.md +205 -0
- package/node_modules/yallist/dist/commonjs/index.d.ts +39 -0
- package/node_modules/yallist/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/yallist/dist/commonjs/index.js +384 -0
- package/node_modules/yallist/dist/commonjs/index.js.map +1 -0
- package/node_modules/yallist/dist/commonjs/package.json +3 -0
- package/node_modules/yallist/dist/esm/index.d.ts +39 -0
- package/node_modules/yallist/dist/esm/index.d.ts.map +1 -0
- package/node_modules/yallist/dist/esm/index.js +379 -0
- package/node_modules/yallist/dist/esm/index.js.map +1 -0
- package/node_modules/yallist/dist/esm/package.json +3 -0
- package/node_modules/yallist/package.json +68 -0
- package/node_modules/yauzl/LICENSE +21 -0
- package/node_modules/yauzl/README.md +1015 -0
- package/node_modules/yauzl/crc32.js +45 -0
- package/node_modules/yauzl/fd-slicer.js +188 -0
- package/node_modules/yauzl/index.js +1096 -0
- package/node_modules/yauzl/package.json +40 -0
- package/node_modules/yazl/LICENSE +21 -0
- package/node_modules/yazl/README.md +457 -0
- package/node_modules/yazl/index.js +826 -0
- package/node_modules/yazl/package.json +34 -0
- package/package.json +163 -0
- package/testkit-config-schema.md +718 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { RunnerProfileDescriptor } from "./api/index.js";
|
|
2
|
+
import type { EngineId } from "../domain/identifiers.js";
|
|
3
|
+
import type { InternalEngineRegistrationById } from "./installation-catalog.js";
|
|
4
|
+
export type EndpointReadinessOwner = "adapter" | "orchestrator-http";
|
|
5
|
+
export interface BuiltInRunnerProfile<Id extends EngineId = EngineId> extends RunnerProfileDescriptor<Id> {
|
|
6
|
+
readonly endpointReadinessOwner: EndpointReadinessOwner;
|
|
7
|
+
}
|
|
8
|
+
type BuiltInDefinitions = {
|
|
9
|
+
readonly [Id in EngineId]: InternalEngineRegistrationById[Id] & {
|
|
10
|
+
readonly profiles: readonly BuiltInRunnerProfile<Id>[];
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export declare const BUILT_IN_ENGINE_DEFINITIONS: BuiltInDefinitions;
|
|
14
|
+
export declare const BUILT_IN_RUNNER_PROFILES: readonly BuiltInRunnerProfile[];
|
|
15
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{resolveK6Installation as i}from"./installations/k6.js";import{resolveNodeVitestInstallation as a}from"./installations/node-vitest.js";import{resolvePlaywrightInstallation as n}from"./installations/playwright.js";export const BUILT_IN_ENGINE_DEFINITIONS=Object.freeze({k6:Object.freeze({id:"k6",profiles:Object.freeze([t({capabilities:{applicationRuntime:"required",databaseRuntime:"optional",endpointAccess:"published-http",executionHost:"orchestrator",runtimeIsolation:"orchestrated",taskBatching:"isolated"},engineId:"k6",id:"k6-http",supportedTestTypes:["int","e2e","load"],endpointReadinessOwner:"orchestrator-http"}),t({capabilities:{applicationRuntime:"none",databaseRuntime:"required",endpointAccess:"none",executionHost:"orchestrator",runtimeIsolation:"orchestrated",taskBatching:"isolated"},engineId:"k6",id:"k6-dal",supportedTestTypes:["dal"],endpointReadinessOwner:"adapter"})]),resolveInstallation:i,async loadExecutor(){return(await import("./k6/adapter/index.js")).executeK6Engine}}),"node-vitest":Object.freeze({id:"node-vitest",profiles:Object.freeze([t({capabilities:{applicationRuntime:"required",databaseRuntime:"optional",endpointAccess:"published-http",executionHost:"orchestrator",runtimeIsolation:"orchestrated",taskBatching:"isolated"},engineId:"node-vitest",id:"node-vitest-data",supportedTestTypes:["data"],endpointReadinessOwner:"adapter"}),t({capabilities:{applicationRuntime:"required",databaseRuntime:"optional",endpointAccess:"published-http",executionHost:"orchestrator",runtimeIsolation:"orchestrated",taskBatching:"isolated"},engineId:"node-vitest",id:"node-vitest-contract",supportedTestTypes:["contract"],endpointReadinessOwner:"adapter"})]),resolveInstallation:a,async loadExecutor(){return(await import("./node-vitest/adapter/index.js")).executeNodeVitestEngine}}),playwright:Object.freeze({id:"playwright",profiles:Object.freeze([t({capabilities:{applicationRuntime:"required",databaseRuntime:"optional",endpointAccess:"published-http",executionHost:"orchestrator",runtimeIsolation:"orchestrated",taskBatching:"compatible"},engineId:"playwright",id:"playwright-ui",supportedTestTypes:["ui"],endpointReadinessOwner:"orchestrator-http"})]),resolveInstallation:n,async loadExecutor(){return(await import("./playwright/adapter/index.js")).executePlaywrightEngine}})}),BUILT_IN_RUNNER_PROFILES=Object.freeze(Object.values(BUILT_IN_ENGINE_DEFINITIONS).flatMap(e=>e.profiles));function t(e){return Object.freeze(e.capabilities),Object.freeze(e.supportedTestTypes),Object.freeze(e)}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type InternalEngineInstallationCatalog } from "./installation-catalog.js";
|
|
2
|
+
import { EngineManager } from "./manager.js";
|
|
3
|
+
export interface EngineManagerFactoryOptions {
|
|
4
|
+
readonly catalog?: InternalEngineInstallationCatalog;
|
|
5
|
+
}
|
|
6
|
+
export declare function createEngineManager(productDirectory: string, options?: Readonly<EngineManagerFactoryOptions>): EngineManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"node:fs";import i from"node:path";import{BUILT_IN_ENGINE_INSTALLATION_CATALOG as c}from"./installation-catalog.js";import{EngineManager as s}from"./manager.js";export function createEngineManager(t,r={}){return new s({catalog:r.catalog??c,productRoot:a(t)})}function a(t){if(!i.isAbsolute(t))throw new Error("Testkit product directory must be absolute");const r=i.resolve(t);let o;try{o=e.statSync(r)}catch(n){throw new Error(`Testkit product directory does not exist: ${r}`,{cause:n})}if(!o.isDirectory())throw new Error(`Testkit product directory is not a directory: ${r}`);return e.realpathSync.native(r)}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type EngineExecutionRequest, type EngineExecutionResult, type EngineInvocationScope } from "./api/index.js";
|
|
2
|
+
import { type EngineId } from "../domain/identifiers.js";
|
|
3
|
+
import type { K6Installation } from "./installations/k6.js";
|
|
4
|
+
import type { NodeVitestInstallation } from "./installations/node-vitest.js";
|
|
5
|
+
import type { PlaywrightInstallation } from "./installations/playwright.js";
|
|
6
|
+
import type { EngineResolutionContext } from "./installations/types.js";
|
|
7
|
+
export interface EngineInstallationById {
|
|
8
|
+
readonly k6: K6Installation;
|
|
9
|
+
readonly "node-vitest": NodeVitestInstallation;
|
|
10
|
+
readonly playwright: PlaywrightInstallation;
|
|
11
|
+
}
|
|
12
|
+
export type EngineInstallationFor<Id extends EngineId> = EngineInstallationById[Id];
|
|
13
|
+
export type EngineExecutorFor<Id extends EngineId> = (request: Readonly<EngineExecutionRequest<Id>>, installation: Readonly<EngineInstallationFor<Id>>, scope: EngineInvocationScope) => Promise<EngineExecutionResult>;
|
|
14
|
+
export interface InternalEngineRegistration<Id extends EngineId> {
|
|
15
|
+
readonly id: Id;
|
|
16
|
+
loadExecutor(): Promise<EngineExecutorFor<Id>>;
|
|
17
|
+
resolveInstallation(context: Readonly<EngineResolutionContext>): Promise<EngineInstallationFor<Id>>;
|
|
18
|
+
}
|
|
19
|
+
export type InternalEngineRegistrationById = {
|
|
20
|
+
readonly [Id in EngineId]: InternalEngineRegistration<Id>;
|
|
21
|
+
};
|
|
22
|
+
export interface InternalEngineInstallationCatalog {
|
|
23
|
+
readonly registrations: InternalEngineRegistrationById;
|
|
24
|
+
resolve<Id extends EngineId>(engineId: Id): InternalEngineRegistration<Id>;
|
|
25
|
+
}
|
|
26
|
+
export declare const BUILT_IN_ENGINE_INSTALLATION_CATALOG: InternalEngineInstallationCatalog;
|
|
27
|
+
export declare function createInternalEngineInstallationCatalog(registrations: Readonly<InternalEngineRegistrationById>): InternalEngineInstallationCatalog;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./api/index.js";import"../domain/identifiers.js";import{BUILT_IN_ENGINE_DEFINITIONS as o}from"./definitions.js";export const BUILT_IN_ENGINE_INSTALLATION_CATALOG=createInternalEngineInstallationCatalog(o);export function createInternalEngineInstallationCatalog(e){const t=Object.freeze({k6:Object.freeze(e.k6),"node-vitest":Object.freeze(e["node-vitest"]),playwright:Object.freeze(e.playwright)});return Object.freeze({registrations:t,resolve(r){return t[r]}})}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { type PlatformTarget } from "../../process/host/platform.js";
|
|
2
|
+
import { runManagedHostProcess } from "../../process/index.js";
|
|
3
|
+
import { RootPackageResolver, type ResolvedPackage } from "./package-resolution.js";
|
|
4
|
+
import type { EngineResolutionContext } from "./types.js";
|
|
5
|
+
export declare const EXPECTED_K6_VERSION = "1.7.1";
|
|
6
|
+
export declare const K6_VERSION_PROBE_TIMEOUT_MS = 30000;
|
|
7
|
+
export declare const K6_TARGET_PACKAGE_REQUIREMENTS: readonly [Readonly<{
|
|
8
|
+
executablePath: "bin/k6";
|
|
9
|
+
packageName: "@gfdelarue/testkit-engine-k6-darwin-arm64";
|
|
10
|
+
publicEntrypoint: "@gfdelarue/testkit-engine-k6-darwin-arm64/binary";
|
|
11
|
+
target: Readonly<{
|
|
12
|
+
arch: "arm64";
|
|
13
|
+
platform: "darwin";
|
|
14
|
+
}>;
|
|
15
|
+
}>, Readonly<{
|
|
16
|
+
executablePath: "bin/k6";
|
|
17
|
+
packageName: "@gfdelarue/testkit-engine-k6-darwin-x64";
|
|
18
|
+
publicEntrypoint: "@gfdelarue/testkit-engine-k6-darwin-x64/binary";
|
|
19
|
+
target: Readonly<{
|
|
20
|
+
arch: "x64";
|
|
21
|
+
platform: "darwin";
|
|
22
|
+
}>;
|
|
23
|
+
}>, Readonly<{
|
|
24
|
+
executablePath: "bin/k6";
|
|
25
|
+
packageName: "@gfdelarue/testkit-engine-k6-linux-arm64";
|
|
26
|
+
publicEntrypoint: "@gfdelarue/testkit-engine-k6-linux-arm64/binary";
|
|
27
|
+
target: Readonly<{
|
|
28
|
+
arch: "arm64";
|
|
29
|
+
platform: "linux";
|
|
30
|
+
}>;
|
|
31
|
+
}>, Readonly<{
|
|
32
|
+
executablePath: "bin/k6";
|
|
33
|
+
packageName: "@gfdelarue/testkit-engine-k6-linux-x64";
|
|
34
|
+
publicEntrypoint: "@gfdelarue/testkit-engine-k6-linux-x64/binary";
|
|
35
|
+
target: Readonly<{
|
|
36
|
+
arch: "x64";
|
|
37
|
+
platform: "linux";
|
|
38
|
+
}>;
|
|
39
|
+
}>, Readonly<{
|
|
40
|
+
executablePath: "bin/k6.exe";
|
|
41
|
+
packageName: "@gfdelarue/testkit-engine-k6-win32-x64";
|
|
42
|
+
publicEntrypoint: "@gfdelarue/testkit-engine-k6-win32-x64/binary";
|
|
43
|
+
target: Readonly<{
|
|
44
|
+
arch: "x64";
|
|
45
|
+
platform: "win32";
|
|
46
|
+
}>;
|
|
47
|
+
}>];
|
|
48
|
+
export type K6TargetPackageName = (typeof K6_TARGET_PACKAGE_REQUIREMENTS)[number]["packageName"];
|
|
49
|
+
export interface K6TargetPackageInstallation {
|
|
50
|
+
readonly name: K6TargetPackageName;
|
|
51
|
+
readonly root: string;
|
|
52
|
+
readonly target: PlatformTarget;
|
|
53
|
+
readonly version: string;
|
|
54
|
+
}
|
|
55
|
+
export interface K6Installation {
|
|
56
|
+
readonly authoringEntrypoints: {
|
|
57
|
+
readonly authoring: string;
|
|
58
|
+
readonly config: string;
|
|
59
|
+
readonly root: string;
|
|
60
|
+
readonly rootPackageJson: string;
|
|
61
|
+
};
|
|
62
|
+
readonly engineId: "k6";
|
|
63
|
+
readonly engineVersion: string;
|
|
64
|
+
readonly executable: string;
|
|
65
|
+
readonly target: PlatformTarget;
|
|
66
|
+
readonly targetPackage: K6TargetPackageInstallation;
|
|
67
|
+
}
|
|
68
|
+
type K6VersionProbeResult = Awaited<ReturnType<typeof runManagedHostProcess>>;
|
|
69
|
+
export declare class K6OptionalPackageMissingError extends Error {
|
|
70
|
+
readonly code = "TESTKIT_K6_OPTIONAL_PACKAGE_MISSING";
|
|
71
|
+
readonly packageName: K6TargetPackageName;
|
|
72
|
+
readonly target: PlatformTarget;
|
|
73
|
+
readonly version: string;
|
|
74
|
+
constructor(requirement: Readonly<K6TargetPackageRequirement>, version: string, options: ErrorOptions);
|
|
75
|
+
}
|
|
76
|
+
export declare class K6EngineVersionMismatchError extends Error {
|
|
77
|
+
readonly code = "TESTKIT_K6_ENGINE_VERSION_MISMATCH";
|
|
78
|
+
readonly expectedVersion: string;
|
|
79
|
+
readonly observedVersion: string;
|
|
80
|
+
readonly packageName: K6TargetPackageName;
|
|
81
|
+
readonly packageVersion: string;
|
|
82
|
+
constructor(selected: Readonly<ResolvedPackage>, requirement: Readonly<K6TargetPackageRequirement>, observedVersion: string);
|
|
83
|
+
}
|
|
84
|
+
export declare class K6VersionProbeError extends Error {
|
|
85
|
+
readonly code = "TESTKIT_K6_VERSION_PROBE_FAILED";
|
|
86
|
+
constructor(message: string, options?: ErrorOptions);
|
|
87
|
+
}
|
|
88
|
+
interface K6TargetPackageRequirement {
|
|
89
|
+
readonly executablePath: "bin/k6" | "bin/k6.exe";
|
|
90
|
+
readonly packageName: K6TargetPackageNameLiteral;
|
|
91
|
+
readonly publicEntrypoint: `${K6TargetPackageNameLiteral}/binary`;
|
|
92
|
+
readonly target: PlatformTarget;
|
|
93
|
+
}
|
|
94
|
+
type K6TargetPackageNameLiteral = "@gfdelarue/testkit-engine-k6-darwin-arm64" | "@gfdelarue/testkit-engine-k6-darwin-x64" | "@gfdelarue/testkit-engine-k6-linux-arm64" | "@gfdelarue/testkit-engine-k6-linux-x64" | "@gfdelarue/testkit-engine-k6-win32-x64";
|
|
95
|
+
export declare function resolveK6Installation(context: Readonly<EngineResolutionContext>): Promise<K6Installation>;
|
|
96
|
+
export declare function requireK6TargetPackageRequirement(target?: Readonly<PlatformTarget>): (typeof K6_TARGET_PACKAGE_REQUIREMENTS)[number];
|
|
97
|
+
export declare function requireK6VersionProbeResult(selected: Readonly<ResolvedPackage>, target: Readonly<PlatformTarget>, signal: AbortSignal, result: Readonly<K6VersionProbeResult>, resolver: RootPackageResolver): string;
|
|
98
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import p from"node:fs";import l from"node:path";import{currentPlatformTarget as h,platformTargetKey as b,UnsupportedPlatformTargetError as x}from"../../process/host/platform.js";import{isPathWithin as k}from"../../process/files/paths.js";import{managedHostProcessInfrastructureError as E,runManagedHostProcess as w}from"../../process/index.js";import{MissingDirectPackageError as y,RootPackageResolver as P}from"./package-resolution.js";export const EXPECTED_K6_VERSION="1.7.1",K6_VERSION_PROBE_TIMEOUT_MS=3e4,K6_TARGET_PACKAGE_REQUIREMENTS=Object.freeze([Object.freeze({executablePath:"bin/k6",packageName:"@gfdelarue/testkit-engine-k6-darwin-arm64",publicEntrypoint:"@gfdelarue/testkit-engine-k6-darwin-arm64/binary",target:Object.freeze({arch:"arm64",platform:"darwin"})}),Object.freeze({executablePath:"bin/k6",packageName:"@gfdelarue/testkit-engine-k6-darwin-x64",publicEntrypoint:"@gfdelarue/testkit-engine-k6-darwin-x64/binary",target:Object.freeze({arch:"x64",platform:"darwin"})}),Object.freeze({executablePath:"bin/k6",packageName:"@gfdelarue/testkit-engine-k6-linux-arm64",publicEntrypoint:"@gfdelarue/testkit-engine-k6-linux-arm64/binary",target:Object.freeze({arch:"arm64",platform:"linux"})}),Object.freeze({executablePath:"bin/k6",packageName:"@gfdelarue/testkit-engine-k6-linux-x64",publicEntrypoint:"@gfdelarue/testkit-engine-k6-linux-x64/binary",target:Object.freeze({arch:"x64",platform:"linux"})}),Object.freeze({executablePath:"bin/k6.exe",packageName:"@gfdelarue/testkit-engine-k6-win32-x64",publicEntrypoint:"@gfdelarue/testkit-engine-k6-win32-x64/binary",target:Object.freeze({arch:"x64",platform:"win32"})})]);export class K6OptionalPackageMissingError extends Error{code="TESTKIT_K6_OPTIONAL_PACKAGE_MISSING";packageName;target;version;constructor(t,a,r){const n=Object.freeze({...t.target});super(`Testkit k6 on ${n.platform}/${n.arch} requires optional package ${t.packageName}@${a}, but it is not installed. Run a clean npm install from the consumer lockfile without omitting optional dependencies. Testkit does not use PATH or a system k6 fallback.`,r),this.name="K6OptionalPackageMissingError",this.packageName=t.packageName,this.target=n,this.version=a}}export class K6EngineVersionMismatchError extends Error{code="TESTKIT_K6_ENGINE_VERSION_MISMATCH";expectedVersion;observedVersion;packageName;packageVersion;constructor(t,a,r){super(`Testkit requires k6 v${EXPECTED_K6_VERSION}, but ${a.packageName}@${t.version} reported k6 v${r} from its version probe. Install the ${a.packageName} version that ships k6 v${EXPECTED_K6_VERSION}.`),this.name="K6EngineVersionMismatchError",this.expectedVersion=EXPECTED_K6_VERSION,this.observedVersion=r,this.packageName=a.packageName,this.packageVersion=t.version}}export class K6VersionProbeError extends Error{code="TESTKIT_K6_VERSION_PROBE_FAILED";constructor(t,a){super(t,a),this.name="K6VersionProbeError"}}const v=/^k6(?:\.exe)? v((?:0|[1-9][0-9]*)\.(?:0|[1-9][0-9]*)\.(?:0|[1-9][0-9]*)(?:-[0-9A-Za-z.-]+)?)\s+\([^\r\n)]*\b(darwin|linux|windows)\/(amd64|arm64)\)(?:\s|$)/u;export async function resolveK6Installation(e){e.signal.throwIfAborted();const t=new P,a=requireK6TargetPackageRequirement();let r;try{r=t.resolveRequireFromRoot({dependencyGroup:"optionalDependencies",packageName:a.packageName,publicEntrypoint:a.publicEntrypoint})}catch(s){throw s instanceof y?new K6OptionalPackageMissingError(a,s.version,{cause:s}):s}const n=O(r,a,t),i=T(t),o=await $(r,n,a.target,e,t),c=Object.freeze({...a.target});return Object.freeze({authoringEntrypoints:i,engineId:"k6",engineVersion:o,executable:n,target:c,targetPackage:Object.freeze({name:a.packageName,root:r.root,target:c,version:r.version})})}function T(e){return Object.freeze({authoring:e.resolveRootPublicEntrypoint("@gfdelarue/testkit/k6"),config:e.resolveRootPublicEntrypoint("@gfdelarue/testkit/config"),root:e.resolveRootPublicEntrypoint("@gfdelarue/testkit"),rootPackageJson:e.packageJsonPath})}export function requireK6TargetPackageRequirement(e=h()){const t=b(e),a=K6_TARGET_PACKAGE_REQUIREMENTS.find(r=>b(r.target)===t);if(a===void 0)throw new x(e.platform,e.arch,"managed k6");return a}function O(e,t,a){try{const r=_(e.manifestPath);if(r.name!==t.packageName||r.version!==e.version)throw new TypeError(`manifest must remain exactly ${t.packageName}@${e.version}`);d(r.os,t.target.platform,"os"),d(r.cpu,t.target.arch,"cpu");const n=l.resolve(e.root,t.executablePath);if(!k(e.root,n))throw new TypeError(`expected executable ${t.executablePath} escapes its package root`);const i=p.lstatSync(n);if(!i.isFile()||i.isSymbolicLink())throw new TypeError(`expected executable ${t.executablePath} must be a regular non-symlink file`);const o=p.realpathSync(n);if(!k(e.root,o))throw new TypeError(`expected executable ${t.executablePath} resolves outside its package root`);if(o!==e.entrypoint)throw new TypeError(`public binary export must resolve exactly to ${t.executablePath}`);if(l.basename(o)!==l.basename(t.executablePath))throw new TypeError(`public binary export must use filename ${l.basename(t.executablePath)}`);if(t.target.platform!=="win32"&&(i.mode&73)===0)throw new TypeError(`expected executable ${t.executablePath} must have a POSIX executable permission bit`);return t.target.platform!=="win32"&&p.accessSync(o,p.constants.X_OK),o}catch(r){throw a.brokenInstallation(e,`its ${t.target.platform}/${t.target.arch} k6 binary contract is invalid: ${R(r)}`,r)}}async function $(e,t,a,r,n){let i;try{i=await w({args:["version"],cwd:r.productRoot,displayLabel:"Testkit k6 version probe",env:process.env,executable:t,signal:r.signal,timeoutMs:K6_VERSION_PROBE_TIMEOUT_MS})}catch(o){throw m(r.signal,o),n.brokenInstallation(e,"its mandatory k6 version probe could not run",o)}return requireK6VersionProbeResult(e,a,r.signal,i,n)}export function requireK6VersionProbeResult(e,t,a,r,n){const i=E("Testkit k6 version probe",r);m(a,S(r)?i:null);const o=K(r)??i??I(r);if(o!==null)throw n.brokenInstallation(e,"its mandatory k6 version probe failed",o);const c=r.stdout.trim().split(/\r?\n/u,1)[0]??"",s=v.exec(c);if(s===null)throw n.brokenInstallation(e,"its mandatory k6 version probe returned an invalid version",new K6VersionProbeError(`Expected bounded output beginning with "k6 v<version>"; received ${JSON.stringify(c)}`));const u=`${s[2]}/${s[3]}`,f=N(t);if(u!==f)throw n.brokenInstallation(e,`its mandatory k6 version probe reported incompatible target ${u}; expected ${f}`,new K6VersionProbeError(`k6 version target ${u} does not match ${f}`));const g=s[1];if(g!==EXPECTED_K6_VERSION)throw new K6EngineVersionMismatchError(e,requireK6TargetPackageRequirement(t),g);return g}function N(e){const t=e.platform==="win32"?"windows":e.platform,a=e.arch==="x64"?"amd64":e.arch;return`${t}/${a}`}function I(e){return e.exitCode!==0?new K6VersionProbeError(e.exitCode===null?`k6 version terminated by ${e.exitSignal??"an unknown signal"}`:`k6 version exited with code ${e.exitCode.toString()}`):null}function S(e){return e.terminationError!==null||e.error!==null||e.timedOut||e.outputLimitExceeded}function K(e){return e.error!==null&&e.terminationError===null&&!e.timedOut&&!e.cancelled&&!e.outputLimitExceeded?e.error:null}function m(e,t){if(e.aborted)throw t==null&&e.throwIfAborted(),t===e.reason?t:new AggregateError([e.reason,t],"k6 version probe was cancelled and process cleanup also failed",{cause:e.reason})}function d(e,t,a){if(!Array.isArray(e)||e.length!==1||e[0]!==t)throw new TypeError(`manifest ${a} must be exactly [${JSON.stringify(t)}]; received ${JSON.stringify(e)}`)}function _(e){const t=JSON.parse(p.readFileSync(e,"utf8"));if(typeof t!="object"||t===null||Array.isArray(t))throw new TypeError("package manifest must contain a JSON object");return t}function R(e){return e instanceof Error?e.message:String(e)}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { RootPackageResolver, type ResolvedPackageEntrypoint } from "./package-resolution.js";
|
|
2
|
+
import type { DirectPackageInstallation, EngineResolutionContext } from "./types.js";
|
|
3
|
+
export declare const NODE_VITEST_PACKAGE_REQUIREMENTS: readonly [Readonly<{
|
|
4
|
+
authoringResolution: "package-exports";
|
|
5
|
+
packageName: "vitest";
|
|
6
|
+
publicEntrypoints: readonly ["vitest"];
|
|
7
|
+
}>, Readonly<{
|
|
8
|
+
authoringResolution: "package-exports";
|
|
9
|
+
packageName: "vite";
|
|
10
|
+
publicEntrypoints: readonly ["vite"];
|
|
11
|
+
}>, Readonly<{
|
|
12
|
+
authoringResolution: "exact-entrypoint";
|
|
13
|
+
packageName: "typescript";
|
|
14
|
+
publicEntrypoints: readonly ["typescript"];
|
|
15
|
+
}>, Readonly<{
|
|
16
|
+
authoringResolution: "exact-entrypoint";
|
|
17
|
+
packageName: "esbuild";
|
|
18
|
+
publicEntrypoints: readonly ["esbuild"];
|
|
19
|
+
}>];
|
|
20
|
+
export declare const NODE_VITEST_PRIVATE_PACKAGE_PREFIXES: readonly ["@vitest/"];
|
|
21
|
+
interface VitestPackageInstallation extends DirectPackageInstallation<"vitest"> {
|
|
22
|
+
readonly cli: string;
|
|
23
|
+
}
|
|
24
|
+
export interface NodeVitestAuthoringEntrypoints {
|
|
25
|
+
readonly config: string;
|
|
26
|
+
readonly contract: string;
|
|
27
|
+
readonly data: string;
|
|
28
|
+
readonly root: string;
|
|
29
|
+
readonly rootPackageJson: string;
|
|
30
|
+
}
|
|
31
|
+
export interface NodeVitestInstallation {
|
|
32
|
+
readonly authoringEntrypoints: NodeVitestAuthoringEntrypoints;
|
|
33
|
+
readonly engineId: "node-vitest";
|
|
34
|
+
readonly packages: {
|
|
35
|
+
readonly esbuild: DirectPackageInstallation<"esbuild">;
|
|
36
|
+
readonly typescript: DirectPackageInstallation<"typescript">;
|
|
37
|
+
readonly vite: DirectPackageInstallation<"vite">;
|
|
38
|
+
readonly vitest: VitestPackageInstallation;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
interface NodeVitestResolutionDependencies {
|
|
42
|
+
readonly importEntrypoint: (selectedPackage: Readonly<ResolvedPackageEntrypoint>) => Promise<unknown>;
|
|
43
|
+
readonly packageResolver: RootPackageResolver;
|
|
44
|
+
}
|
|
45
|
+
export declare function resolveNodeVitestInstallation(context: Readonly<EngineResolutionContext>, dependencies?: Readonly<NodeVitestResolutionDependencies>): Promise<NodeVitestInstallation>;
|
|
46
|
+
export declare function preflightNodeVitestInstallation(installation: Readonly<NodeVitestInstallation>, context: Readonly<EngineResolutionContext>, importEntrypoint?: (selectedPackage: Readonly<ResolvedPackageEntrypoint>) => Promise<unknown>): Promise<void>;
|
|
47
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import p from"node:fs";import u from"node:path";import{isPathWithin as y}from"../../process/files/paths.js";import{BrokenPackageInstallationError as l,RootPackageResolver as g,importResolvedPackageEntrypoint as f}from"./package-resolution.js";export const NODE_VITEST_PACKAGE_REQUIREMENTS=Object.freeze([Object.freeze({authoringResolution:"package-exports",packageName:"vitest",publicEntrypoints:Object.freeze(["vitest"])}),Object.freeze({authoringResolution:"package-exports",packageName:"vite",publicEntrypoints:Object.freeze(["vite"])}),Object.freeze({authoringResolution:"exact-entrypoint",packageName:"typescript",publicEntrypoints:Object.freeze(["typescript"])}),Object.freeze({authoringResolution:"exact-entrypoint",packageName:"esbuild",publicEntrypoints:Object.freeze(["esbuild"])})]),NODE_VITEST_PRIVATE_PACKAGE_PREFIXES=Object.freeze(["@vitest/"]);const E=Object.freeze({importEntrypoint:f,packageResolver:new g});export async function resolveNodeVitestInstallation(t,e=E){t.signal.throwIfAborted();const o=new Map;for(const r of NODE_VITEST_PACKAGE_REQUIREMENTS)o.set(r.packageName,e.packageResolver.resolveImportFromRoot({dependencyGroup:"dependencies",packageName:r.packageName,publicEntrypoint:r.publicEntrypoints[0]}));const i=s(o,"vitest"),n=Object.freeze({authoringEntrypoints:d(e.packageResolver),engineId:"node-vitest",packages:Object.freeze({esbuild:c(s(o,"esbuild")),typescript:c(s(o,"typescript")),vite:c(s(o,"vite")),vitest:Object.freeze({...c(i),cli:v(i,e.packageResolver)})})});return await preflightNodeVitestInstallation(n,t,e.importEntrypoint),n}function d(t){return Object.freeze({config:t.resolveRootPublicEntrypoint("@gfdelarue/testkit/config"),contract:t.resolveRootPublicEntrypoint("@gfdelarue/testkit/node-vitest/contract"),data:t.resolveRootPublicEntrypoint("@gfdelarue/testkit/node-vitest/data"),root:t.resolveRootPublicEntrypoint("@gfdelarue/testkit"),rootPackageJson:t.packageJsonPath})}export async function preflightNodeVitestInstallation(t,e,o=f){for(const i of NODE_VITEST_PACKAGE_REQUIREMENTS){e.signal.throwIfAborted();const n=t.packages[i.packageName];try{const r=await o(n);await h(i.packageName,r)}catch(r){throw e.signal.throwIfAborted(),new l(n.name,n.version,`its public ${i.packageName} capability failed; reinstall without omitting optional dependencies`,{cause:k(r)})}}}function s(t,e){const o=t.get(e);if(o===void 0||o.name!==e)throw new TypeError(`Node/Vitest package resolution did not select ${e}`);return o}function c(t){return Object.freeze({entrypoint:t.entrypoint,name:t.name,root:t.root,version:t.version})}function v(t,e){try{const i=m(t.manifestPath).bin,n=typeof i=="object"&&i!==null&&!Array.isArray(i)?i.vitest:i;if(typeof n!="string"||u.isAbsolute(n))throw new TypeError("package bin.vitest must be a relative path");const r=p.realpathSync(u.resolve(t.root,n));if(!y(t.root,r)||!p.statSync(r).isFile())throw new TypeError("package bin.vitest must resolve to a contained regular file");return r}catch(o){throw e.brokenInstallation(t,"its public Vitest CLI is invalid",o)}}function m(t){const e=JSON.parse(p.readFileSync(t,"utf8"));if(typeof e!="object"||e===null||Array.isArray(e))throw new TypeError("package manifest must contain a JSON object");return e}async function h(t,e){const o=b(e,`${t} public module`);switch(t){case"vitest":a(o,"expect",t),a(o,"test",t);return;case"vite":return;case"typescript":{const i=b(o.ScriptTarget,"typescript ScriptTarget");a(o,"createSourceFile",t)("preflight.ts","export {};",i.Latest);return}case"esbuild":a(o,"stop",t),await a(o,"build",t)({stdin:{contents:"export {};",loader:"js"},write:!1})}}function b(t,e){if(typeof t!="object"||t===null)throw new TypeError(`${e} must be an object`);return t}function a(t,e,o){const i=t[e];if(typeof i!="function")throw new TypeError(`${o} public module must export function ${e}`);return i}function k(t){return t instanceof l&&t.cause!==void 0?t.cause:t}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export declare const TESTKIT_PACKAGE_NAME = "@gfdelarue/testkit";
|
|
2
|
+
export type RootDependencyGroup = "dependencies" | "optionalDependencies";
|
|
3
|
+
export interface PackageResolutionRequest {
|
|
4
|
+
readonly dependencyGroup: RootDependencyGroup;
|
|
5
|
+
readonly packageName: string;
|
|
6
|
+
readonly publicEntrypoint: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ResolvedPackage {
|
|
9
|
+
readonly entrypoint: string;
|
|
10
|
+
readonly manifestPath: string;
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly root: string;
|
|
13
|
+
readonly version: string;
|
|
14
|
+
}
|
|
15
|
+
export type ResolvedPackageEntrypoint = Pick<ResolvedPackage, "entrypoint" | "name" | "version">;
|
|
16
|
+
export interface RootPackageResolverOptions {
|
|
17
|
+
readonly packageJsonPath?: string;
|
|
18
|
+
readonly resolveImportFromRoot?: (specifier: string) => string;
|
|
19
|
+
}
|
|
20
|
+
export declare class RootPackageDeclarationError extends Error {
|
|
21
|
+
readonly code = "TESTKIT_ROOT_PACKAGE_DECLARATION_INVALID";
|
|
22
|
+
constructor(message: string, options?: ErrorOptions);
|
|
23
|
+
}
|
|
24
|
+
export declare class MissingDirectPackageError extends Error {
|
|
25
|
+
readonly code = "TESTKIT_DIRECT_PACKAGE_MISSING";
|
|
26
|
+
readonly packageName: string;
|
|
27
|
+
readonly version: string;
|
|
28
|
+
constructor(packageName: string, version: string, publicEntrypoint: string, optionalDependency: boolean, options: ErrorOptions);
|
|
29
|
+
}
|
|
30
|
+
export declare class BrokenPackageInstallationError extends Error {
|
|
31
|
+
readonly code = "TESTKIT_PACKAGE_INSTALLATION_BROKEN";
|
|
32
|
+
readonly packageName: string;
|
|
33
|
+
readonly version: string;
|
|
34
|
+
constructor(packageName: string, version: string, problem: string, options?: ErrorOptions);
|
|
35
|
+
}
|
|
36
|
+
export declare class RootPackageResolver {
|
|
37
|
+
readonly packageJsonPath: string;
|
|
38
|
+
readonly packageRoot: string;
|
|
39
|
+
private readonly manifest;
|
|
40
|
+
private readonly requireFromRoot;
|
|
41
|
+
private readonly resolveRootImport;
|
|
42
|
+
constructor(options?: Readonly<RootPackageResolverOptions>);
|
|
43
|
+
resolveImportFromRoot(request: Readonly<PackageResolutionRequest>): ResolvedPackage;
|
|
44
|
+
resolveRequireFromRoot(request: Readonly<PackageResolutionRequest>): ResolvedPackage;
|
|
45
|
+
resolveRequireFromPackage(parent: Readonly<ResolvedPackage>, request: Readonly<PackageResolutionRequest>): ResolvedPackage;
|
|
46
|
+
resolveRequirePublicEntrypoint(selectedPackage: Readonly<ResolvedPackage>, publicEntrypoint: string): string;
|
|
47
|
+
resolveRootPublicEntrypoint(publicEntrypoint: string): string;
|
|
48
|
+
brokenInstallation(selectedPackage: Readonly<ResolvedPackage>, problem: string, cause: unknown): BrokenPackageInstallationError;
|
|
49
|
+
private declaredVersion;
|
|
50
|
+
}
|
|
51
|
+
export declare function importResolvedPackageEntrypoint(selectedPackage: Readonly<ResolvedPackageEntrypoint>): Promise<unknown>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import u from"node:fs";import{createRequire as h}from"node:module";import l from"node:path";import{fileURLToPath as $,pathToFileURL as b}from"node:url";import{isPathWithin as m}from"../../process/files/paths.js";export const TESTKIT_PACKAGE_NAME="@gfdelarue/testkit";const S=$(new URL("../../../package.json",import.meta.url)),k=/^(?:0|[1-9][0-9]*)\.(?:0|[1-9][0-9]*)\.(?:0|[1-9][0-9]*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/u;export class RootPackageDeclarationError extends Error{code="TESTKIT_ROOT_PACKAGE_DECLARATION_INVALID";constructor(t,e){super(t,e),this.name="RootPackageDeclarationError"}}export class MissingDirectPackageError extends Error{code="TESTKIT_DIRECT_PACKAGE_MISSING";packageName;version;constructor(t,e,n,r,i){super(`Testkit direct dependency ${t}@${e} could not resolve its public entrypoint ${JSON.stringify(n)} from ${TESTKIT_PACKAGE_NAME}. Run a clean npm install from the consumer lockfile${r?" without omitting optional dependencies":""}.`,i),this.name="MissingDirectPackageError",this.packageName=t,this.version=e}}export class BrokenPackageInstallationError extends Error{code="TESTKIT_PACKAGE_INSTALLATION_BROKEN";packageName;version;constructor(t,e,n,r){super(`Testkit dependency ${t}@${e} is installed but broken: ${n}. Run a clean npm install from the consumer lockfile.`,r),this.name="BrokenPackageInstallationError",this.packageName=t,this.version=e}}export class RootPackageResolver{packageJsonPath;packageRoot;manifest;requireFromRoot;resolveRootImport;constructor(t={}){const e=l.resolve(t.packageJsonPath??S);this.packageJsonPath=p(e,`${TESTKIT_PACKAGE_NAME} package manifest`,(n,r)=>new RootPackageDeclarationError(n,d(r))),this.packageRoot=l.dirname(this.packageJsonPath),this.manifest=T(this.packageJsonPath),this.requireFromRoot=h(this.packageJsonPath),this.resolveRootImport=t.resolveImportFromRoot??F}resolveImportFromRoot(t){const e=this.declaredVersion(t);return g({label:TESTKIT_PACKAGE_NAME,manifestRequire:this.requireFromRoot,resolveEntrypoint:n=>D(this.resolveRootImport(n)),rootSelection:!0},t,e)}resolveRequireFromRoot(t){const e=this.declaredVersion(t);return g({label:TESTKIT_PACKAGE_NAME,manifestRequire:this.requireFromRoot,resolveEntrypoint:this.requireFromRoot.resolve,rootSelection:!0},t,e)}resolveRequireFromPackage(t,e){const n=this.declaredVersion(e),r=v(t),i=h(r.manifestPath);return g({label:`${r.name}@${r.version}`,manifestRequire:i,resolveEntrypoint:i.resolve,rootSelection:!1},e,n)}resolveRequirePublicEntrypoint(t,e){const n=v(t);R(n.name,e);let r;try{r=h(n.manifestPath).resolve(e)}catch(i){throw s(n.name,n.version,`public entrypoint ${JSON.stringify(e)} could not be resolved`,i)}return _(r,n.root,n.name,n.version,e)}resolveRootPublicEntrypoint(t){R(TESTKIT_PACKAGE_NAME,t);let e;try{e=this.requireFromRoot.resolve(t)}catch(r){throw new RootPackageDeclarationError(`${TESTKIT_PACKAGE_NAME} public entrypoint ${JSON.stringify(t)} could not be resolved from its package anchor`,{cause:r})}const n=p(e,`${TESTKIT_PACKAGE_NAME} public entrypoint ${JSON.stringify(t)}`,(r,i)=>new RootPackageDeclarationError(r,d(i)));if(!m(this.packageRoot,n))throw new RootPackageDeclarationError(`${TESTKIT_PACKAGE_NAME} public entrypoint ${JSON.stringify(t)} resolves outside its package root`);return n}brokenInstallation(t,e,n){const r=v(t);return s(r.name,r.version,e,n)}declaredVersion(t){R(t.packageName,t.publicEntrypoint);const e=this.manifest[t.dependencyGroup]?.[t.packageName];if(typeof e!="string"||!k.test(e))throw new RootPackageDeclarationError(`${TESTKIT_PACKAGE_NAME} ${t.dependencyGroup}.${t.packageName} must be an exact version; received ${JSON.stringify(e)}`);return e}}export async function importResolvedPackageEntrypoint(o){const t=P(o);try{return await import(b(t.entrypoint).href)}catch(e){throw s(t.name,t.version,`importing its resolved public entrypoint ${JSON.stringify(t.entrypoint)} failed`,e)}}function g(o,t,e){let n;try{n=o.resolveEntrypoint(t.publicEntrypoint)}catch(a){throw o.rootSelection&&I(a,t.packageName,t.publicEntrypoint)?new MissingDirectPackageError(t.packageName,e,t.publicEntrypoint,t.dependencyGroup==="optionalDependencies",{cause:a}):s(t.packageName,e,o.rootSelection?`its public entrypoint ${JSON.stringify(t.publicEntrypoint)} could not be resolved from the root package anchor`:`its public entrypoint ${JSON.stringify(t.publicEntrypoint)} could not be resolved from the selected ${o.label} package chain`,a)}let r;try{r=p(n,`${t.packageName} public entrypoint ${JSON.stringify(t.publicEntrypoint)}`,(a,y)=>s(t.packageName,e,a,y))}catch(a){throw a instanceof BrokenPackageInstallationError?a:s(t.packageName,e,`its public entrypoint ${JSON.stringify(t.publicEntrypoint)} is invalid`,a)}const i=N(o.manifestRequire,r,t.packageName,e),c=l.dirname(i);if(!m(c,r))throw s(t.packageName,e,`public entrypoint ${JSON.stringify(t.publicEntrypoint)} resolves outside its owning package root`);const f=J(i,t.packageName,e);return Object.freeze({entrypoint:r,manifestPath:i,name:f.name,root:c,version:f.version})}function N(o,t,e,n){try{const i=p(o.resolve(`${e}/package.json`),`${e} package manifest`,(f,a)=>s(e,n,f,a)),c=l.dirname(i);if(!m(c,t))throw s(e,n,"the selected public entrypoint resolves outside the exported package manifest root");return i}catch(i){if(i instanceof BrokenPackageInstallationError)throw i;if(!U(i,e))throw s(e,n,"exported package manifest resolution failed",i)}let r=l.dirname(t);for(;r!==l.parse(r).root;){const i=l.join(r,"package.json");if(A(i,e,n)){const c=p(i,`${e} package manifest`,(a,y)=>s(e,n,a,y)),f=w(c,e,n);if(f.name!==e)throw s(e,n,`manifest discovery reached incompatible package boundary ${JSON.stringify(f.name)} before ${JSON.stringify(e)}`);return c}r=l.dirname(r)}throw s(e,n,"no owning package manifest was found for the selected public entrypoint")}function T(o){const t=O(o,`${TESTKIT_PACKAGE_NAME} package manifest`,(e,n)=>new RootPackageDeclarationError(e,d(n)));if(t.name!==TESTKIT_PACKAGE_NAME)throw new RootPackageDeclarationError(`Root package manifest must name ${JSON.stringify(TESTKIT_PACKAGE_NAME)}; received ${JSON.stringify(t.name)}`);if(typeof t.version!="string")throw new RootPackageDeclarationError(`Root package manifest version must be a string; received ${JSON.stringify(t.version)}`);return E(t,"dependencies"),E(t,"optionalDependencies"),t}function J(o,t,e){const n=w(o,t,e);if(n.name!==t||n.version!==e)throw s(t,e,`manifest must be exactly ${t}@${e}; received ${n.name}@${n.version}`);return n}function w(o,t,e){const n=O(o,`${t} package manifest`,(r,i)=>s(t,e,r,i));if(typeof n.name!="string"||typeof n.version!="string")throw s(t,e,`manifest name and version must be strings; received ${String(n.name)}@${String(n.version)}`);return{name:n.name,version:n.version}}function O(o,t,e){let n;try{n=JSON.parse(u.readFileSync(o,"utf8"))}catch(r){throw e(`${t} could not be read as JSON`,r)}if(typeof n!="object"||n===null||Array.isArray(n))throw e(`${t} must contain a JSON object`);return n}function E(o,t){const e=o[t];if(e!==void 0&&(typeof e!="object"||e===null||Array.isArray(e)))throw new RootPackageDeclarationError(`Root package manifest ${t} must be a JSON object`)}function v(o){if(typeof o.name!="string"||typeof o.version!="string"||typeof o.root!="string"||typeof o.manifestPath!="string"||typeof o.entrypoint!="string")throw new TypeError("Resolved package must contain string identity paths");return o}function P(o){if(typeof o.name!="string"||typeof o.version!="string"||typeof o.entrypoint!="string")throw new TypeError("Resolved package entrypoint must contain string identity fields");return o}function R(o,t){if(o.length===0||t!==o&&!t.startsWith(`${o}/`))throw new RootPackageDeclarationError(`Public entrypoint ${JSON.stringify(t)} must belong to package ${JSON.stringify(o)}`)}function _(o,t,e,n,r){const i=p(o,`${e} public entrypoint ${JSON.stringify(r)}`,(c,f)=>s(e,n,c,f));if(!m(t,i))throw s(e,n,`public entrypoint ${JSON.stringify(r)} resolves outside its owning package root`);return i}function p(o,t,e){let n,r;try{n=u.realpathSync(o),r=u.statSync(n)}catch(i){throw e(`${t} could not be resolved as a real file`,i)}if(!r.isFile())throw e(`${t} must be a regular file`);return n}function A(o,t,e){try{return u.lstatSync(o),!0}catch(n){if(M(n))return!1;throw s(t,e,"owning package manifest discovery failed",n)}}function I(o,t,e){if(typeof o!="object"||o===null)return!1;const n=o;return(n.code==="MODULE_NOT_FOUND"||n.code==="ERR_MODULE_NOT_FOUND")&&typeof n.message=="string"&&(n.message.startsWith(`Cannot find module '${e}'`)||n.message.startsWith(`Cannot find package '${t}'`))}function D(o){let t;try{t=new URL(o)}catch(e){throw new TypeError(`Root import resolution must return an absolute URL; received ${JSON.stringify(o)}`,{cause:e})}if(t.protocol!=="file:")throw new TypeError(`Root package entrypoint must resolve to a file URL; received ${JSON.stringify(o)}`);return $(t)}function F(o){return import.meta.resolve(o)}function M(o){if(typeof o!="object"||o===null)return!1;const t=o.code;return t==="ENOENT"||t==="ENOTDIR"}function U(o,t){if(typeof o!="object"||o===null)return!1;const e=o;return e.code==="ERR_PACKAGE_PATH_NOT_EXPORTED"?!0:(e.code==="MODULE_NOT_FOUND"||e.code==="ERR_MODULE_NOT_FOUND")&&typeof e.message=="string"&&(e.message.startsWith(`Cannot find module '${t}/package.json'`)||e.message.startsWith(`Cannot find package '${t}'`))}function s(o,t,e,n){return new BrokenPackageInstallationError(o,t,e,d(n))}function d(o){return o===void 0?void 0:{cause:o}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{pathToFileURL as y}from"node:url";p();async function p(){try{const t=f(process.argv[2]);l(t.registry.canonicalValue);const e=await import(y(t.family.playwrightTest.entrypoint).href),r=m(e),n=h(r.chromium,"chromium"),s=n.executablePath;if(typeof s!="function")throw new TypeError("Authoritative @playwright/test module must expose chromium.executablePath()");const c=Reflect.apply(s,n,[]);if(typeof c!="string")throw new TypeError("chromium.executablePath() must return a string");u({browserExecutable:c,family:t.family,ok:!0,registry:t.registry})}catch(t){const e=d(t);u({error:{...e.code===void 0?{}:{code:e.code},message:e.message,name:e.name},ok:!1}),process.exitCode=1}}function f(t){if(t===void 0)throw new TypeError("Playwright resolution child requires one input");let e;try{e=JSON.parse(Buffer.from(t,"base64url").toString("utf8"))}catch(r){throw new TypeError("Playwright resolution child input is invalid",{cause:r})}if(!o(e)||!g(e.family)||!o(e.registry)||typeof e.registry.canonicalValue!="string"||typeof e.registry.mode!="string")throw new TypeError("Playwright resolution child input is invalid");return e}function l(t){if(process.env.PLAYWRIGHT_BROWSERS_PATH!==t)throw new Error("Playwright resolution child did not receive the canonical browser registry")}function m(t){const e=a(t,"@playwright/test module namespace"),r=e.default??e["module.exports"]??e;return a(r,"@playwright/test public module")}function g(t){return o(t)&&typeof t.cli=="string"&&i(t.playwrightTest,"@playwright/test")&&i(t.playwright,"playwright")&&i(t.playwrightCore,"playwright-core")}function i(t,e){return o(t)&&t.name===e&&typeof t.version=="string"&&typeof t.root=="string"&&typeof t.entrypoint=="string"}function h(t,e){if(!o(t))throw new TypeError(`${e} must be an object`);return t}function a(t,e){if((typeof t!="object"||t===null)&&typeof t!="function")throw new TypeError(`${e} must be an object or function`);return t}function o(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function d(t){if(!(t instanceof Error))return{message:String(t),name:"Error"};const e=Reflect.get(t,"code");return{...typeof e=="string"?{code:e}:{},message:t.message,name:t.name}}function u(t){process.stdout.write(`${JSON.stringify(t)}
|
|
2
|
+
`)}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { type ManagedProcessResult } from "../../process/index.js";
|
|
2
|
+
import { type LinuxLibc, type PlatformTarget } from "../../process/host/platform.js";
|
|
3
|
+
import { RootPackageResolver } from "./package-resolution.js";
|
|
4
|
+
import type { DirectPackageInstallation, EngineResolutionContext } from "./types.js";
|
|
5
|
+
export declare const PLAYWRIGHT_PACKAGE_FAMILY_REQUIREMENTS: readonly [Readonly<{
|
|
6
|
+
packageName: "@playwright/test";
|
|
7
|
+
publicEntrypoints: readonly ["@playwright/test", "@playwright/test/cli"];
|
|
8
|
+
}>, Readonly<{
|
|
9
|
+
packageName: "playwright";
|
|
10
|
+
publicEntrypoints: readonly ["playwright"];
|
|
11
|
+
}>, Readonly<{
|
|
12
|
+
packageName: "playwright-core";
|
|
13
|
+
publicEntrypoints: readonly ["playwright-core"];
|
|
14
|
+
}>];
|
|
15
|
+
export interface PlaywrightPackageFamily {
|
|
16
|
+
readonly cli: string;
|
|
17
|
+
readonly playwright: DirectPackageInstallation<"playwright">;
|
|
18
|
+
readonly playwrightCore: DirectPackageInstallation<"playwright-core">;
|
|
19
|
+
readonly playwrightTest: DirectPackageInstallation<"@playwright/test">;
|
|
20
|
+
}
|
|
21
|
+
export type PlaywrightRegistryMode = "configured-absolute" | "configured-relative" | "default" | "hermetic";
|
|
22
|
+
export interface PlaywrightRegistrySelection {
|
|
23
|
+
readonly canonicalValue: string;
|
|
24
|
+
readonly mode: PlaywrightRegistryMode;
|
|
25
|
+
}
|
|
26
|
+
export interface PlaywrightInstallation {
|
|
27
|
+
readonly authoringEntrypoints: {
|
|
28
|
+
readonly authoring: string;
|
|
29
|
+
readonly root: string;
|
|
30
|
+
readonly rootPackageJson: string;
|
|
31
|
+
};
|
|
32
|
+
readonly browserExecutable: string;
|
|
33
|
+
readonly engineId: "playwright";
|
|
34
|
+
readonly family: PlaywrightPackageFamily;
|
|
35
|
+
readonly registry: PlaywrightRegistrySelection;
|
|
36
|
+
}
|
|
37
|
+
export interface PlaywrightResolutionOptions {
|
|
38
|
+
readonly ambientEnvironment?: Readonly<NodeJS.ProcessEnv>;
|
|
39
|
+
readonly configuredRegistry?: string;
|
|
40
|
+
}
|
|
41
|
+
export interface PlaywrightHost {
|
|
42
|
+
readonly linuxLibc: LinuxLibc | null;
|
|
43
|
+
readonly target: PlatformTarget;
|
|
44
|
+
}
|
|
45
|
+
interface PlaywrightChildRequest {
|
|
46
|
+
readonly family: PlaywrightPackageFamily;
|
|
47
|
+
readonly registry: PlaywrightRegistrySelection;
|
|
48
|
+
}
|
|
49
|
+
interface PlaywrightChildSuccess extends PlaywrightChildRequest {
|
|
50
|
+
readonly browserExecutable: string;
|
|
51
|
+
readonly ok: true;
|
|
52
|
+
}
|
|
53
|
+
export declare class PlaywrightInstallationError extends Error {
|
|
54
|
+
readonly code = "TESTKIT_PLAYWRIGHT_INSTALLATION_INVALID";
|
|
55
|
+
constructor(problem: string, options?: ErrorOptions);
|
|
56
|
+
}
|
|
57
|
+
export declare class UnsupportedPlaywrightPlatformError extends Error {
|
|
58
|
+
readonly code = "TESTKIT_PLAYWRIGHT_PLATFORM_UNSUPPORTED";
|
|
59
|
+
constructor(target: Readonly<PlatformTarget>, linuxLibc: LinuxLibc | null);
|
|
60
|
+
}
|
|
61
|
+
export declare function resolvePlaywrightPackageFamily(resolver?: RootPackageResolver): PlaywrightPackageFamily;
|
|
62
|
+
export declare function resolvePlaywrightRegistry(options: {
|
|
63
|
+
readonly ambientEnvironment: Readonly<NodeJS.ProcessEnv>;
|
|
64
|
+
readonly configuredValue?: string;
|
|
65
|
+
readonly homeDirectory?: string;
|
|
66
|
+
readonly platform: PlatformTarget["platform"];
|
|
67
|
+
readonly productRoot: string;
|
|
68
|
+
}): PlaywrightRegistrySelection;
|
|
69
|
+
export declare function playwrightRegistryEnvironment(ambientEnvironment: Readonly<NodeJS.ProcessEnv>, registry: Readonly<PlaywrightRegistrySelection>): Readonly<Record<string, string>>;
|
|
70
|
+
export declare function resolvePlaywrightInstallation(context: Readonly<EngineResolutionContext>, options?: Readonly<PlaywrightResolutionOptions>): Promise<PlaywrightInstallation>;
|
|
71
|
+
export declare function throwIfPlaywrightProcessAborted(signal: AbortSignal, result: Readonly<ManagedProcessResult>, processFailure: Error | null): void;
|
|
72
|
+
type ParsedChildOutput = PlaywrightChildSuccess | Readonly<{
|
|
73
|
+
error: Readonly<{
|
|
74
|
+
code?: string;
|
|
75
|
+
message: string;
|
|
76
|
+
name: string;
|
|
77
|
+
}>;
|
|
78
|
+
ok: false;
|
|
79
|
+
}>;
|
|
80
|
+
export declare function requireBoundedPlaywrightChildOutput(stdout: string): void;
|
|
81
|
+
export declare function parsePlaywrightChildOutput(stdout: string): ParsedChildOutput;
|
|
82
|
+
export declare function requireMatchingPlaywrightChildRequest(output: Readonly<PlaywrightChildSuccess>, request: Readonly<PlaywrightChildRequest>): void;
|
|
83
|
+
export declare function requireBrowserExecutable(value: string, target: Readonly<PlatformTarget>): string;
|
|
84
|
+
export declare function requireSupportedPlaywrightHost(host: Readonly<PlaywrightHost>): void;
|
|
85
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import c from"node:fs";import w from"node:os";import f from"node:path";import{fileURLToPath as h}from"node:url";import{runManagedProcess as R}from"../../process/index.js";import{currentLinuxLibc as x,currentPlatformTarget as O,platformTargetKey as g,SUPPORTED_PLATFORM_TARGETS as T}from"../../process/host/platform.js";import{RootPackageResolver as m}from"./package-resolution.js";export const PLAYWRIGHT_PACKAGE_FAMILY_REQUIREMENTS=Object.freeze([Object.freeze({packageName:"@playwright/test",publicEntrypoints:Object.freeze(["@playwright/test","@playwright/test/cli"])}),Object.freeze({packageName:"playwright",publicEntrypoints:Object.freeze(["playwright"])}),Object.freeze({packageName:"playwright-core",publicEntrypoints:Object.freeze(["playwright-core"])})]);const _=64*1024,S=6e4,b="PLAYWRIGHT_BROWSERS_PATH",I=new Set(["npm_config_playwright_browsers_path","npm_package_config_playwright_browsers_path"]);export class PlaywrightInstallationError extends Error{code="TESTKIT_PLAYWRIGHT_INSTALLATION_INVALID";constructor(r,t){super(`Playwright installation is invalid: ${r}. Run testkit setup playwright --force.`,t),this.name="PlaywrightInstallationError"}}export class UnsupportedPlaywrightPlatformError extends Error{code="TESTKIT_PLAYWRIGHT_PLATFORM_UNSUPPORTED";constructor(r,t){super(`Playwright does not support ${g(r)}${r.platform==="linux"?` with ${t??"unknown"} libc`:""}`),this.name="UnsupportedPlaywrightPlatformError"}}export function resolvePlaywrightPackageFamily(e=new m){const[r,t,o]=PLAYWRIGHT_PACKAGE_FAMILY_REQUIREMENTS,i=e.resolveRequireFromRoot(u(r)),n=e.resolveImportFromRoot(u(r));A(e,i,n);const a=e.resolveRequireFromPackage(i,u(t)),s=e.resolveRequireFromPackage(a,u(o)),P=e.resolveRequirePublicEntrypoint(i,r.publicEntrypoints[1]);return Object.freeze({cli:P,playwright:p(a,"playwright"),playwrightCore:p(s,"playwright-core"),playwrightTest:p(n,"@playwright/test")})}function A(e,r,t){if(!(r.name===t.name&&r.version===t.version&&r.root===t.root))throw e.brokenInstallation(r,"the import and require public entrypoints select different physical package roots",void 0)}export function resolvePlaywrightRegistry(e){const r=e.platform==="win32"?f.win32:f.posix;if(!r.isAbsolute(e.productRoot))throw new TypeError("Playwright product root must be absolute");const t=e.configuredValue;if(t==="0")return Object.freeze({canonicalValue:"0",mode:"hermetic"});if(t!==void 0&&t.length>0){const o=r.isAbsolute(t);return Object.freeze({canonicalValue:o?r.normalize(t):r.resolve(e.productRoot,t),mode:o?"configured-absolute":"configured-relative"})}return Object.freeze({canonicalValue:r.resolve(e.productRoot,r.join(v(e.platform,e.ambientEnvironment,e.homeDirectory??w.homedir(),r),"ms-playwright")),mode:"default"})}export function playwrightRegistryEnvironment(e,r){const t={};for(const[o,i]of Object.entries(e))typeof i=="string"&&!I.has(o.toLowerCase())&&o.toUpperCase()!==b&&(t[o]=i);return t[b]=r.canonicalValue,Object.freeze(t)}export async function resolvePlaywrightInstallation(e,r={}){e.signal.throwIfAborted();const t={linuxLibc:x(),target:O()};requireSupportedPlaywrightHost(t);const o=new m,i=r.ambientEnvironment??process.env,n=resolvePlaywrightPackageFamily(o),a=resolvePlaywrightRegistry({ambientEnvironment:i,configuredValue:r.configuredRegistry??i.PLAYWRIGHT_BROWSERS_PATH,homeDirectory:w.homedir(),platform:t.target.platform,productRoot:e.productRoot}),s=await L(e,{family:n,registry:a},i);return Object.freeze({authoringEntrypoints:Object.freeze({authoring:o.resolveRootPublicEntrypoint("@gfdelarue/testkit/playwright"),root:o.resolveRootPublicEntrypoint("@gfdelarue/testkit"),rootPackageJson:o.resolveRootPublicEntrypoint("@gfdelarue/testkit/package.json")}),browserExecutable:requireBrowserExecutable(s.browserExecutable,t.target),engineId:"playwright",family:n,registry:a})}async function L(e,r,t){const o=Buffer.from(JSON.stringify(r),"utf8").toString("base64url"),i=await R({args:[j(),o],cwd:e.productRoot,displayLabel:"Playwright installation resolver",env:playwrightRegistryEnvironment(t,r.registry),executable:process.execPath,signal:e.signal,timeoutMs:S}),n=C(i);throwIfPlaywrightProcessAborted(e.signal,i,n),requireBoundedPlaywrightChildOutput(i.stdout);let a;try{a=parsePlaywrightChildOutput(i.stdout)}catch(s){throw n!==null?new PlaywrightInstallationError(`isolated resolver failed: ${n.message}`,{cause:n}):s}if(n!==null)throw new PlaywrightInstallationError(`isolated resolver failed: ${n.message}`,{cause:n});if(!a.ok){if(i.exitCode!==1||i.exitSignal!==null){const s=E(i);throw new PlaywrightInstallationError(`isolated resolver failed: ${s.message}`,{cause:s})}throw new PlaywrightInstallationError(`isolated resolver failed: ${a.error.message}`,{cause:N(a.error)})}if(i.exitCode!==0||i.exitSignal!==null){const s=E(i);throw new PlaywrightInstallationError(`isolated resolver failed: ${s.message}`,{cause:s})}return requireMatchingPlaywrightChildRequest(a,r),a}export function throwIfPlaywrightProcessAborted(e,r,t){if(e.aborted){if(!k(r)||t===null){e.throwIfAborted();return}throw t===e.reason?t:new AggregateError([e.reason,t],"Playwright process was cancelled and process cleanup also failed",{cause:e.reason})}}function k(e){return e.terminationError!==null||e.error!==null||e.timedOut||e.outputLimitExceeded}export function requireBoundedPlaywrightChildOutput(e){if(Buffer.byteLength(e,"utf8")>_)throw new PlaywrightInstallationError("isolated resolver returned oversized output")}export function parsePlaywrightChildOutput(e){let r;try{r=JSON.parse(e)}catch(t){throw new PlaywrightInstallationError("isolated resolver did not return bounded JSON",{cause:t})}if(!l(r)||typeof r.ok!="boolean")throw new PlaywrightInstallationError("isolated resolver returned an invalid response");if(!r.ok){if(!l(r.error)||typeof r.error.name!="string"||typeof r.error.message!="string"||r.error.code!==void 0&&typeof r.error.code!="string")throw new PlaywrightInstallationError("isolated resolver returned an invalid error");return{error:{...r.error.code===void 0?{}:{code:r.error.code},message:r.error.message,name:r.error.name},ok:!1}}if(typeof r.browserExecutable!="string"||!z(r.family)||!$(r.registry))throw new PlaywrightInstallationError("isolated resolver returned an invalid installation");return{browserExecutable:r.browserExecutable,family:r.family,ok:!0,registry:r.registry}}export function requireMatchingPlaywrightChildRequest(e,r){if(JSON.stringify(e.family)!==JSON.stringify(r.family))throw new PlaywrightInstallationError("isolated resolver selected a different physical package family");if(e.registry.canonicalValue!==r.registry.canonicalValue||e.registry.mode!==r.registry.mode)throw new PlaywrightInstallationError("isolated resolver selected a different browser registry")}export function requireBrowserExecutable(e,r){if(!f.isAbsolute(e))throw new PlaywrightInstallationError(`public chromium.executablePath() returned a non-absolute path ${JSON.stringify(e)}`);let t;try{t=c.statSync(e)}catch(o){throw new PlaywrightInstallationError(`public chromium.executablePath() returned missing path ${JSON.stringify(e)}`,{cause:o})}if(!t.isFile())throw new PlaywrightInstallationError(`public chromium.executablePath() must identify a regular file; received ${JSON.stringify(e)}`);if(r.platform!=="win32")try{c.accessSync(e,c.constants.X_OK)}catch(o){throw new PlaywrightInstallationError(`public chromium.executablePath() is not executable: ${JSON.stringify(e)}`,{cause:o})}return e}export function requireSupportedPlaywrightHost(e){const r=g(e.target);if(!T.some(t=>g(t)===r)||e.target.platform==="linux"&&e.linuxLibc!=="glibc")throw new UnsupportedPlaywrightPlatformError(e.target,e.linuxLibc)}function v(e,r,t,o){return e==="linux"?r.XDG_CACHE_HOME||o.join(d(t),".cache"):e==="darwin"?o.join(d(t),"Library","Caches"):r.LOCALAPPDATA||o.join(d(t),"AppData","Local")}function d(e){if(e.length===0)throw new TypeError("Playwright default registry requires a home directory");return e}function u(e){return{dependencyGroup:"dependencies",packageName:e.packageName,publicEntrypoint:e.publicEntrypoints[0]}}function p(e,r){if(e.name!==r)throw new TypeError(`Playwright package family expected ${r}, received ${e.name}`);return Object.freeze({entrypoint:e.entrypoint,name:r,root:e.root,version:e.version})}function j(){const e=h(new URL("./playwright-resolution-child.js",import.meta.url));return c.existsSync(e)?e:h(new URL("../../../dist/engines/installations/playwright-resolution-child.js",import.meta.url))}function C(e){return e.terminationError!==null?e.terminationError:e.error!==null?e.error:e.timedOut?new Error("isolated resolver timed out"):e.cancelled?new Error("isolated resolver was cancelled"):e.outputLimitExceeded?new Error("isolated resolver output exceeded the bound"):null}function E(e){return new Error(`isolated resolver exited with ${e.exitCode===null?String(e.exitSignal):e.exitCode.toString()}`)}function N(e){const r=new Error(e.message);return r.name=e.name,e.code!==void 0&&Object.defineProperty(r,"code",{enumerable:!0,value:e.code}),r}function z(e){return l(e)&&typeof e.cli=="string"&&y(e.playwrightTest,"@playwright/test")&&y(e.playwright,"playwright")&&y(e.playwrightCore,"playwright-core")}function y(e,r){return l(e)&&e.name===r&&typeof e.version=="string"&&typeof e.root=="string"&&typeof e.entrypoint=="string"}function $(e){return l(e)&&typeof e.canonicalValue=="string"&&(e.mode==="configured-absolute"||e.mode==="configured-relative"||e.mode==="default"||e.mode==="hermetic")}function l(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface EngineResolutionContext {
|
|
2
|
+
readonly productRoot: string;
|
|
3
|
+
readonly signal: AbortSignal;
|
|
4
|
+
}
|
|
5
|
+
export interface DirectPackageInstallation<Name extends string = string> {
|
|
6
|
+
readonly entrypoint: string;
|
|
7
|
+
readonly name: Name;
|
|
8
|
+
readonly root: string;
|
|
9
|
+
readonly version: string;
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { EngineCancellationSignal, EngineJsonObject } from "../../api/index.js";
|
|
2
|
+
import { type BuildFailure } from "esbuild";
|
|
3
|
+
export declare class K6ConsumerCompilationError extends Error {
|
|
4
|
+
constructor(error: BuildFailure);
|
|
5
|
+
}
|
|
6
|
+
export interface K6BundleRequest {
|
|
7
|
+
readonly configuration?: EngineJsonObject;
|
|
8
|
+
readonly entrypoints: Readonly<{
|
|
9
|
+
authoring: string;
|
|
10
|
+
config: string;
|
|
11
|
+
root: string;
|
|
12
|
+
rootPackageJson: string;
|
|
13
|
+
}>;
|
|
14
|
+
readonly nativeSummaryDirectory: string;
|
|
15
|
+
readonly outputFile: string;
|
|
16
|
+
readonly rootDirectory: string;
|
|
17
|
+
readonly signal: EngineCancellationSignal;
|
|
18
|
+
readonly sourceFile: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Builds a self-contained Sobek/k6 module. Testkit public imports resolve only
|
|
22
|
+
* to the selected root package entrypoints; native k6/xk6 modules remain
|
|
23
|
+
* external for Sobek to provide.
|
|
24
|
+
*/
|
|
25
|
+
export declare function bundleK6Suite({ configuration, entrypoints, outputFile, nativeSummaryDirectory, rootDirectory, signal, sourceFile, }: Readonly<K6BundleRequest>): Promise<void>;
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import n from"node:fs/promises";import k from"node:path";import{context as T}from"esbuild";import{parseK6RepositoryConfiguration as R}from"../../contracts/k6-repository-configuration.js";const v=/^@gfdelarue\/testkit(?:\/|$)/,I=/^@gfdelarue\/testkit-engine-/,C=/^(?:@playwright\/|@vitest\/|playwright(?:-core)?(?:\/|$)|vitest(?:\/|$))/;export class K6ConsumerCompilationError extends Error{constructor(t){super(t.message,{cause:t}),this.name="K6ConsumerCompilationError"}}export async function bundleK6Suite({configuration:e,entrypoints:t,outputFile:r,nativeSummaryDirectory:o,rootDirectory:s,signal:i,sourceFile:w}){g(i);const S=await A(t),l=R(e);await n.mkdir(k.dirname(r),{recursive:!0});const m=`${r}.entry.mjs`,a=l===null?null:`${r}.configuration.mjs`;try{const y=[n.writeFile(m,N(w,a,o),"utf8")];a!==null&&l!==null&&y.push(n.writeFile(a,x(l),"utf8")),await Promise.all(y);const E={absWorkingDir:s,bundle:!0,charset:"utf8",define:{"process.env":"__ENV"},entryPoints:[m],external:["k6","k6/*","xk6-sql","xk6-sql/*"],format:"esm",legalComments:"none",logLevel:"silent",outfile:r,platform:"neutral",plugins:[P(S)],sourcemap:"inline",target:"es2020",treeShaking:!0,write:!1},f=await T(E),h=()=>{f.cancel().catch(()=>{})};i.addEventListener("abort",h,{once:!0});try{g(i);let c;try{c=await f.rebuild()}catch(d){throw b(d)?new K6ConsumerCompilationError(d):d}g(i);const _=c.outputFiles?.at(0);if(c.outputFiles?.length!==1||_===void 0)throw new Error("k6 bundler did not produce exactly one output file");await n.writeFile(r,_.contents)}finally{i.removeEventListener("abort",h),await f.dispose()}}finally{await Promise.all([n.rm(m,{force:!0}),...a===null?[]:[n.rm(a,{force:!0})]])}}function b(e){return e instanceof Error&&Array.isArray(Reflect.get(e,"errors"))&&Array.isArray(Reflect.get(e,"warnings"))}function g(e){if(e.aborted)throw new Error("k6 bundle preparation was cancelled")}function P(e){return{name:"testkit-managed-public-entrypoints",setup(t){t.onResolve({filter:/^@gfdelarue\/testkit\/config$/},()=>({path:e.config})),t.onResolve({filter:/^@gfdelarue\/testkit\/k6$/},()=>({path:e.authoring})),t.onResolve({filter:/^@gfdelarue\/testkit$/},()=>({path:e.root})),t.onResolve({filter:/^@gfdelarue\/testkit\/package\.json$/},()=>({path:e.rootPackageJson})),t.onResolve({filter:v},r=>p(r.path,"unsupported Testkit package subpath")),t.onResolve({filter:I},r=>p(r.path,"internal engine package")),t.onResolve({filter:C},r=>p(r.path,"another engine's package"))}}}function p(e,t){return{errors:[{text:`k6 consumer modules may not import ${t} "${e}"`}]}}async function A(e){const[t,r,o,s]=await Promise.all([u(e.authoring,"authoring"),u(e.config,"config"),u(e.root,"root"),u(e.rootPackageJson,"rootPackageJson")]);return Object.freeze({authoring:t,config:r,root:o,rootPackageJson:s})}async function u(e,t){if(!k.isAbsolute(e))throw new Error(`Resolved k6 installation must provide an absolute ${t} entrypoint`);const r=await n.realpath(e);if(!(await n.stat(r)).isFile())throw new Error(`Resolved k6 installation ${t} entrypoint must be a regular file`);return r}function N(e,t,r){const o=JSON.stringify(e);return`
|
|
2
|
+
${t===null?"":`import ${JSON.stringify(t)};`}
|
|
3
|
+
import { sha256 as __testkitSha256 } from "k6/crypto";
|
|
4
|
+
import * as __testkitConsumerModule from ${o};
|
|
5
|
+
const __testkitDefault = __testkitConsumerModule.default;
|
|
6
|
+
export { __testkitDefault as default };
|
|
7
|
+
export * from ${o};
|
|
8
|
+
// All k6 lifecycle functions, options, and named scenario executors remain
|
|
9
|
+
// native re-exports. Testkit suite helpers must be exported in native k6 module
|
|
10
|
+
// shape by their authoring file. The optional default binding remains undefined
|
|
11
|
+
// when a native named-scenarios-only module has no default export.
|
|
12
|
+
// handleSummary is delegated below so consumer files can only be written under
|
|
13
|
+
// the executor-owned invocation workspace and then promoted as bounded evidence.
|
|
14
|
+
|
|
15
|
+
export async function handleSummary(data) {
|
|
16
|
+
const consumerHandleSummary = __testkitConsumerModule.handleSummary;
|
|
17
|
+
if (typeof consumerHandleSummary !== "function") return {};
|
|
18
|
+
const outputs = await consumerHandleSummary(data);
|
|
19
|
+
if (outputs === null || typeof outputs !== "object" || Array.isArray(outputs)) {
|
|
20
|
+
throw new Error(
|
|
21
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary must return an object",
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
const redirected = {};
|
|
25
|
+
const manifest = [];
|
|
26
|
+
let fileCount = 0;
|
|
27
|
+
let totalBytes = 0;
|
|
28
|
+
for (const [name, value] of Object.entries(outputs)) {
|
|
29
|
+
const sizeBytes = __testkitSummaryOutputBytes(value, name);
|
|
30
|
+
totalBytes += sizeBytes;
|
|
31
|
+
if (totalBytes > 16 * 1024 * 1024) {
|
|
32
|
+
throw new Error(
|
|
33
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary output exceeds the 16777216 byte aggregate limit",
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
if (name === "stdout" || name === "stderr") {
|
|
37
|
+
redirected[name] = value;
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
__testkitRequireSafeSummaryName(name);
|
|
41
|
+
fileCount += 1;
|
|
42
|
+
if (fileCount > 128) {
|
|
43
|
+
throw new Error(
|
|
44
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary returned more than 128 file outputs",
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
const storedName = __testkitSha256(name, "hex") + ".output";
|
|
48
|
+
redirected[${JSON.stringify(r)} + "/" + storedName] = value;
|
|
49
|
+
manifest.push({
|
|
50
|
+
name,
|
|
51
|
+
sha256: __testkitSha256(value, "hex"),
|
|
52
|
+
sizeBytes,
|
|
53
|
+
storedName,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
if (manifest.length > 0) {
|
|
57
|
+
redirected[${JSON.stringify(r)} + "/manifest.json"] =
|
|
58
|
+
JSON.stringify({ entries: manifest, version: 1 });
|
|
59
|
+
}
|
|
60
|
+
return redirected;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function __testkitRequireSafeSummaryName(name) {
|
|
64
|
+
if (
|
|
65
|
+
typeof name !== "string" ||
|
|
66
|
+
name.length === 0 ||
|
|
67
|
+
name.length > 240 ||
|
|
68
|
+
name.includes("\\0") ||
|
|
69
|
+
name.startsWith("/") ||
|
|
70
|
+
name.startsWith("\\\\") ||
|
|
71
|
+
/^[a-z]:/iu.test(name)
|
|
72
|
+
) {
|
|
73
|
+
throw new Error(
|
|
74
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary output name must be a safe relative path",
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
const segments = name.split(/[\\\\/]/u);
|
|
78
|
+
if (segments.some((segment) => segment === "" || segment === "." || segment === "..")) {
|
|
79
|
+
throw new Error(
|
|
80
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary output name contains traversal",
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function __testkitSummaryOutputBytes(value, name) {
|
|
86
|
+
let sizeBytes;
|
|
87
|
+
if (typeof value === "string") {
|
|
88
|
+
sizeBytes = 0;
|
|
89
|
+
for (const character of value) {
|
|
90
|
+
const codePoint = character.codePointAt(0);
|
|
91
|
+
sizeBytes += codePoint <= 0x7f ? 1 : codePoint <= 0x7ff ? 2 : codePoint <= 0xffff ? 3 : 4;
|
|
92
|
+
}
|
|
93
|
+
} else if (value instanceof ArrayBuffer) {
|
|
94
|
+
sizeBytes = value.byteLength;
|
|
95
|
+
} else {
|
|
96
|
+
throw new Error(
|
|
97
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary output " + name + " must be a string or ArrayBuffer",
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
if (sizeBytes > 8 * 1024 * 1024) {
|
|
101
|
+
throw new Error(
|
|
102
|
+
"TESTKIT_K6_SUMMARY_OUTPUT_INVALID: handleSummary output " + name + " exceeds the 8388608 byte limit",
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
return sizeBytes;
|
|
106
|
+
}
|
|
107
|
+
`}function x(e){return`
|
|
108
|
+
import { registerRepoConfig as __testkitRegisterPublicConfig } from "@gfdelarue/testkit/config";
|
|
109
|
+
import { __testkitRegisterK6RepositoryConfiguration as __testkitRegisterRuntimeConfig } from "@gfdelarue/testkit/k6";
|
|
110
|
+
const __testkitRepositoryConfiguration = ${JSON.stringify(e)};
|
|
111
|
+
__testkitRegisterPublicConfig(__testkitRegisterRuntimeConfig(__testkitRepositoryConfiguration));
|
|
112
|
+
`}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type EvidenceFileAccess } from "../../adapters/evidence-files.js";
|
|
2
|
+
import type { EngineEvidence, EngineJsonObject } from "../../api/index.js";
|
|
3
|
+
export interface K6EvidenceRequest {
|
|
4
|
+
readonly artifactDirectory: string;
|
|
5
|
+
readonly stderr: string;
|
|
6
|
+
readonly stdout: string;
|
|
7
|
+
readonly summaryFile: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const K6_SUMMARY_MAX_BYTES: number;
|
|
10
|
+
export interface K6EvidenceResult {
|
|
11
|
+
readonly evidence: EngineEvidence;
|
|
12
|
+
readonly summary: EngineJsonObject | null;
|
|
13
|
+
readonly summaryError: Error | null;
|
|
14
|
+
}
|
|
15
|
+
export declare function collectK6Evidence({ artifactDirectory, stderr, stdout, summaryFile }: Readonly<K6EvidenceRequest>, fileAccess?: EvidenceFileAccess): Promise<K6EvidenceResult>;
|