@workerstack/testing 0.0.0-stage → 0.31.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 +21 -0
- package/README.md +134 -2
- package/bin/testing.js +4 -0
- package/dist/api/cli/commands/baseline.d.ts +5 -0
- package/dist/api/cli/commands/baseline.js +46 -0
- package/dist/api/cli/commands/conformance-matrix.d.ts +40 -0
- package/dist/api/cli/commands/conformance-matrix.js +193 -0
- package/dist/api/cli/commands/conformance-proven.d.ts +15 -0
- package/dist/api/cli/commands/conformance-proven.js +44 -0
- package/dist/api/cli/commands/conformance-suites.d.ts +11 -0
- package/dist/api/cli/commands/conformance-suites.js +35 -0
- package/dist/api/cli/commands/conformance-tail.d.ts +27 -0
- package/dist/api/cli/commands/conformance-tail.js +61 -0
- package/dist/api/cli/commands/conformance-toolkit.d.ts +19 -0
- package/dist/api/cli/commands/conformance-toolkit.js +33 -0
- package/dist/api/cli/commands/conformance.d.ts +11 -0
- package/dist/api/cli/commands/conformance.js +191 -0
- package/dist/api/cli/commands/diff.d.ts +5 -0
- package/dist/api/cli/commands/diff.js +42 -0
- package/dist/api/cli/commands/doctor.d.ts +5 -0
- package/dist/api/cli/commands/doctor.js +44 -0
- package/dist/api/cli/commands/init-code.d.ts +15 -0
- package/dist/api/cli/commands/init-code.js +54 -0
- package/dist/api/cli/commands/init-config.d.ts +21 -0
- package/dist/api/cli/commands/init-config.js +233 -0
- package/dist/api/cli/commands/init.d.ts +13 -0
- package/dist/api/cli/commands/init.js +68 -0
- package/dist/api/cli/commands/plan.d.ts +11 -0
- package/dist/api/cli/commands/plan.js +64 -0
- package/dist/api/cli/commands/run-options.d.ts +29 -0
- package/dist/api/cli/commands/run-options.js +79 -0
- package/dist/api/cli/commands/run-progress.d.ts +19 -0
- package/dist/api/cli/commands/run-progress.js +47 -0
- package/dist/api/cli/commands/run-report.d.ts +42 -0
- package/dist/api/cli/commands/run-report.js +126 -0
- package/dist/api/cli/commands/run-signals.d.ts +23 -0
- package/dist/api/cli/commands/run-signals.js +32 -0
- package/dist/api/cli/commands/run.d.ts +18 -0
- package/dist/api/cli/commands/run.js +149 -0
- package/dist/api/cli/commands/serve.d.ts +24 -0
- package/dist/api/cli/commands/serve.js +49 -0
- package/dist/api/cli/commands/spec.d.ts +25 -0
- package/dist/api/cli/commands/spec.js +76 -0
- package/dist/api/cli/config.d.ts +19 -0
- package/dist/api/cli/config.js +40 -0
- package/dist/api/cli/flag-kinds.d.ts +40 -0
- package/dist/api/cli/flag-kinds.js +3 -0
- package/dist/api/cli/flags.d.ts +64 -0
- package/dist/api/cli/flags.js +250 -0
- package/dist/api/cli/legacy-run.d.ts +4 -0
- package/dist/api/cli/legacy-run.js +11 -0
- package/dist/api/cli/main.d.ts +25 -0
- package/dist/api/cli/main.js +76 -0
- package/dist/api/cli/writer.d.ts +15 -0
- package/dist/api/cli/writer.js +27 -0
- package/dist/api/cli.d.ts +3 -0
- package/dist/api/cli.js +10 -0
- package/dist/api/client/answer.d.ts +14 -0
- package/dist/api/client/answer.js +143 -0
- package/dist/api/client/attempt.d.ts +77 -0
- package/dist/api/client/attempt.js +3 -0
- package/dist/api/client/bypass.d.ts +18 -0
- package/dist/api/client/bypass.js +15 -0
- package/dist/api/client/cache-signals.d.ts +17 -0
- package/dist/api/client/cache-signals.js +35 -0
- package/dist/api/client/client.d.ts +75 -0
- package/dist/api/client/client.js +185 -0
- package/dist/api/client/control.d.ts +36 -0
- package/dist/api/client/control.js +69 -0
- package/dist/api/client/credential-source.d.ts +142 -0
- package/dist/api/client/credential-source.js +31 -0
- package/dist/api/client/credentials.d.ts +43 -0
- package/dist/api/client/credentials.js +178 -0
- package/dist/api/client/curl.d.ts +24 -0
- package/dist/api/client/curl.js +100 -0
- package/dist/api/client/declared.d.ts +17 -0
- package/dist/api/client/declared.js +57 -0
- package/dist/api/client/fence.d.ts +17 -0
- package/dist/api/client/fence.js +24 -0
- package/dist/api/client/journal.d.ts +42 -0
- package/dist/api/client/journal.js +75 -0
- package/dist/api/client/message.d.ts +15 -0
- package/dist/api/client/message.js +47 -0
- package/dist/api/client/param-style.d.ts +29 -0
- package/dist/api/client/param-style.js +78 -0
- package/dist/api/client/placing.d.ts +87 -0
- package/dist/api/client/placing.js +174 -0
- package/dist/api/client/read-path.d.ts +13 -0
- package/dist/api/client/read-path.js +90 -0
- package/dist/api/client/redirect.d.ts +37 -0
- package/dist/api/client/redirect.js +64 -0
- package/dist/api/client/refresh.d.ts +17 -0
- package/dist/api/client/refresh.js +14 -0
- package/dist/api/client/request.d.ts +20 -0
- package/dist/api/client/request.js +182 -0
- package/dist/api/client/retry.d.ts +29 -0
- package/dist/api/client/retry.js +100 -0
- package/dist/api/client/serialize.d.ts +27 -0
- package/dist/api/client/serialize.js +93 -0
- package/dist/api/client/slots.d.ts +11 -0
- package/dist/api/client/slots.js +20 -0
- package/dist/api/client/types.d.ts +149 -0
- package/dist/api/client/types.js +3 -0
- package/dist/api/config/define/define-config.d.ts +18 -0
- package/dist/api/config/define/define-config.js +19 -0
- package/dist/api/config/define/types.d.ts +13 -0
- package/dist/api/config/define/types.js +9 -0
- package/dist/api/config/env.d.ts +10 -0
- package/dist/api/config/env.js +31 -0
- package/dist/api/config/load.d.ts +19 -0
- package/dist/api/config/load.js +87 -0
- package/dist/api/config/types/config.d.ts +282 -0
- package/dist/api/config/types/config.js +3 -0
- package/dist/api/config/types/hooks.d.ts +265 -0
- package/dist/api/config/types/hooks.js +3 -0
- package/dist/api/config/types/placeholder.d.ts +11 -0
- package/dist/api/config/types/placeholder.js +26 -0
- package/dist/api/config/types/query.d.ts +76 -0
- package/dist/api/config/types/query.js +7 -0
- package/dist/api/config/types/raw.d.ts +17 -0
- package/dist/api/config/types/raw.js +15 -0
- package/dist/api/config/types/security.d.ts +138 -0
- package/dist/api/config/types/security.js +7 -0
- package/dist/api/config/types/steps.d.ts +166 -0
- package/dist/api/config/types/steps.js +3 -0
- package/dist/api/config/validate.d.ts +16 -0
- package/dist/api/config/validate.js +176 -0
- package/dist/api/conformance/effects/backend.d.ts +7 -0
- package/dist/api/conformance/effects/backend.js +56 -0
- package/dist/api/conformance/effects/spec.d.ts +4 -0
- package/dist/api/conformance/effects/spec.js +90 -0
- package/dist/api/conformance/effects.d.ts +10 -0
- package/dist/api/conformance/effects.js +97 -0
- package/dist/api/conformance/expected/composition.d.ts +8 -0
- package/dist/api/conformance/expected/composition.js +81 -0
- package/dist/api/conformance/expected/conformance.d.ts +8 -0
- package/dist/api/conformance/expected/conformance.js +20 -0
- package/dist/api/conformance/expected/consistency.d.ts +8 -0
- package/dist/api/conformance/expected/consistency.js +21 -0
- package/dist/api/conformance/expected/filter.d.ts +8 -0
- package/dist/api/conformance/expected/filter.js +76 -0
- package/dist/api/conformance/expected/isolation.d.ts +8 -0
- package/dist/api/conformance/expected/isolation.js +37 -0
- package/dist/api/conformance/expected/other.d.ts +8 -0
- package/dist/api/conformance/expected/other.js +26 -0
- package/dist/api/conformance/expected/pagination.d.ts +8 -0
- package/dist/api/conformance/expected/pagination.js +23 -0
- package/dist/api/conformance/expected/security.d.ts +8 -0
- package/dist/api/conformance/expected/security.js +29 -0
- package/dist/api/conformance/expected/sort.d.ts +8 -0
- package/dist/api/conformance/expected/sort.js +13 -0
- package/dist/api/conformance/expected/table.d.ts +11 -0
- package/dist/api/conformance/expected/table.js +32 -0
- package/dist/api/conformance/expected/validation.d.ts +8 -0
- package/dist/api/conformance/expected/validation.js +12 -0
- package/dist/api/conformance/expected/write.d.ts +8 -0
- package/dist/api/conformance/expected/write.js +66 -0
- package/dist/api/conformance/expected-failures.d.ts +18 -0
- package/dist/api/conformance/expected-failures.js +18 -0
- package/dist/api/conformance/feature-gate/harness.d.ts +20 -0
- package/dist/api/conformance/feature-gate/harness.js +109 -0
- package/dist/api/conformance/feature-gate/spec.d.ts +5 -0
- package/dist/api/conformance/feature-gate/spec.js +114 -0
- package/dist/api/conformance/feature-gate.d.ts +11 -0
- package/dist/api/conformance/feature-gate.js +189 -0
- package/dist/api/conformance/fuzz/diagnose.d.ts +78 -0
- package/dist/api/conformance/fuzz/diagnose.js +102 -0
- package/dist/api/conformance/fuzz/render.d.ts +11 -0
- package/dist/api/conformance/fuzz/render.js +59 -0
- package/dist/api/conformance/fuzz.d.ts +55 -0
- package/dist/api/conformance/fuzz.js +139 -0
- package/dist/api/conformance/harness/counting.d.ts +62 -0
- package/dist/api/conformance/harness/counting.js +135 -0
- package/dist/api/conformance/harness/launch.d.ts +50 -0
- package/dist/api/conformance/harness/launch.js +46 -0
- package/dist/api/conformance/harness/result.d.ts +8 -0
- package/dist/api/conformance/harness/result.js +2 -0
- package/dist/api/conformance/harness/routes.d.ts +13 -0
- package/dist/api/conformance/harness/routes.js +15 -0
- package/dist/api/conformance/harness/security.d.ts +24 -0
- package/dist/api/conformance/harness/security.js +24 -0
- package/dist/api/conformance/harness/serve.d.ts +13 -0
- package/dist/api/conformance/harness/serve.js +26 -0
- package/dist/api/conformance/leaks.d.ts +30 -0
- package/dist/api/conformance/leaks.js +75 -0
- package/dist/api/conformance/matrix/cases.d.ts +63 -0
- package/dist/api/conformance/matrix/cases.js +157 -0
- package/dist/api/conformance/matrix/defects.d.ts +72 -0
- package/dist/api/conformance/matrix/defects.js +233 -0
- package/dist/api/conformance/matrix/engines.d.ts +26 -0
- package/dist/api/conformance/matrix/engines.js +45 -0
- package/dist/api/conformance/matrix/expected.d.ts +9 -0
- package/dist/api/conformance/matrix/expected.js +14 -0
- package/dist/api/conformance/matrix/opt-in.d.ts +14 -0
- package/dist/api/conformance/matrix/opt-in.js +15 -0
- package/dist/api/conformance/matrix/principals.d.ts +11 -0
- package/dist/api/conformance/matrix/principals.js +51 -0
- package/dist/api/conformance/matrix/render.d.ts +47 -0
- package/dist/api/conformance/matrix/render.js +211 -0
- package/dist/api/conformance/pool.d.ts +46 -0
- package/dist/api/conformance/pool.js +104 -0
- package/dist/api/conformance/rate-limit/backend.d.ts +9 -0
- package/dist/api/conformance/rate-limit/backend.js +90 -0
- package/dist/api/conformance/rate-limit/spec.d.ts +7 -0
- package/dist/api/conformance/rate-limit/spec.js +71 -0
- package/dist/api/conformance/rate-limit.d.ts +9 -0
- package/dist/api/conformance/rate-limit.js +137 -0
- package/dist/api/conformance/scope.d.ts +16 -0
- package/dist/api/conformance/scope.js +87 -0
- package/dist/api/conformance/seed-contract/fixture-walk.d.ts +42 -0
- package/dist/api/conformance/seed-contract/fixture-walk.js +143 -0
- package/dist/api/conformance/seed-contract/members.d.ts +15 -0
- package/dist/api/conformance/seed-contract/members.js +145 -0
- package/dist/api/conformance/seed-contract/project.d.ts +11 -0
- package/dist/api/conformance/seed-contract/project.js +113 -0
- package/dist/api/conformance/seed-contract/users.d.ts +14 -0
- package/dist/api/conformance/seed-contract/users.js +103 -0
- package/dist/api/conformance/seed-contract.d.ts +13 -0
- package/dist/api/conformance/seed-contract.js +152 -0
- package/dist/api/conformance/serve-tasks.d.ts +20 -0
- package/dist/api/conformance/serve-tasks.js +14 -0
- package/dist/api/conformance/shapes.d.ts +69 -0
- package/dist/api/conformance/shapes.js +208 -0
- package/dist/api/conformance/shards.d.ts +20 -0
- package/dist/api/conformance/shards.js +43 -0
- package/dist/api/conformance/specs/documents.d.ts +7 -0
- package/dist/api/conformance/specs/documents.js +131 -0
- package/dist/api/conformance/specs/models.d.ts +5 -0
- package/dist/api/conformance/specs/models.js +252 -0
- package/dist/api/conformance/specs/types.d.ts +10 -0
- package/dist/api/conformance/specs/types.js +2 -0
- package/dist/api/conformance/specs.d.ts +16 -0
- package/dist/api/conformance/specs.js +18 -0
- package/dist/api/conformance/suites/coverage-report.d.ts +9 -0
- package/dist/api/conformance/suites/coverage-report.js +50 -0
- package/dist/api/conformance/suites/example.d.ts +4 -0
- package/dist/api/conformance/suites/example.js +65 -0
- package/dist/api/conformance/suites/parser.d.ts +4 -0
- package/dist/api/conformance/suites/parser.js +92 -0
- package/dist/api/conformance/suites/payload-catalog.d.ts +3 -0
- package/dist/api/conformance/suites/payload-catalog.js +13 -0
- package/dist/api/conformance/suites/public-catalog.d.ts +7 -0
- package/dist/api/conformance/suites/public-catalog.js +168 -0
- package/dist/api/conformance/suites/render.d.ts +6 -0
- package/dist/api/conformance/suites/render.js +19 -0
- package/dist/api/conformance/suites/repro-syntax.d.ts +11 -0
- package/dist/api/conformance/suites/repro-syntax.js +55 -0
- package/dist/api/conformance/suites/tag-unlock.d.ts +19 -0
- package/dist/api/conformance/suites/tag-unlock.js +54 -0
- package/dist/api/conformance/suites/tenant-scope.d.ts +4 -0
- package/dist/api/conformance/suites/tenant-scope.js +125 -0
- package/dist/api/conformance/tasks.d.ts +70 -0
- package/dist/api/conformance/tasks.js +53 -0
- package/dist/api/conformance/unique/backend.d.ts +53 -0
- package/dist/api/conformance/unique/backend.js +152 -0
- package/dist/api/conformance/unique/cases.d.ts +22 -0
- package/dist/api/conformance/unique/cases.js +201 -0
- package/dist/api/conformance/unique/document.d.ts +12 -0
- package/dist/api/conformance/unique/document.js +106 -0
- package/dist/api/conformance/unique/judges.d.ts +28 -0
- package/dist/api/conformance/unique/judges.js +118 -0
- package/dist/api/conformance/unique/spec.d.ts +14 -0
- package/dist/api/conformance/unique/spec.js +139 -0
- package/dist/api/conformance/unique.d.ts +9 -0
- package/dist/api/conformance/unique.js +19 -0
- package/dist/api/conformance/worker.d.ts +3 -0
- package/dist/api/conformance/worker.js +5 -0
- package/dist/api/credentials/anchors.d.ts +24 -0
- package/dist/api/credentials/anchors.js +32 -0
- package/dist/api/credentials/dedicated.d.ts +8 -0
- package/dist/api/credentials/dedicated.js +106 -0
- package/dist/api/credentials/effective.d.ts +5 -0
- package/dist/api/credentials/effective.js +25 -0
- package/dist/api/credentials/expiry.d.ts +18 -0
- package/dist/api/credentials/expiry.js +24 -0
- package/dist/api/credentials/interpolate.d.ts +21 -0
- package/dist/api/credentials/interpolate.js +79 -0
- package/dist/api/credentials/jwt.d.ts +7 -0
- package/dist/api/credentials/jwt.js +20 -0
- package/dist/api/credentials/origin-recipes.d.ts +13 -0
- package/dist/api/credentials/origin-recipes.js +23 -0
- package/dist/api/credentials/placeholders.d.ts +10 -0
- package/dist/api/credentials/placeholders.js +71 -0
- package/dist/api/credentials/placement.d.ts +23 -0
- package/dist/api/credentials/placement.js +41 -0
- package/dist/api/credentials/ports.d.ts +96 -0
- package/dist/api/credentials/ports.js +2 -0
- package/dist/api/credentials/probe-principal.d.ts +9 -0
- package/dist/api/credentials/probe-principal.js +23 -0
- package/dist/api/credentials/read.d.ts +4 -0
- package/dist/api/credentials/read.js +16 -0
- package/dist/api/credentials/recipes/acquire.d.ts +7 -0
- package/dist/api/credentials/recipes/acquire.js +32 -0
- package/dist/api/credentials/recipes/answer.d.ts +14 -0
- package/dist/api/credentials/recipes/answer.js +32 -0
- package/dist/api/credentials/recipes/hook.d.ts +9 -0
- package/dist/api/credentials/recipes/hook.js +21 -0
- package/dist/api/credentials/recipes/login.d.ts +18 -0
- package/dist/api/credentials/recipes/login.js +146 -0
- package/dist/api/credentials/recipes/mint.d.ts +5 -0
- package/dist/api/credentials/recipes/mint.js +60 -0
- package/dist/api/credentials/recipes/oauth2.d.ts +5 -0
- package/dist/api/credentials/recipes/oauth2.js +54 -0
- package/dist/api/credentials/recipes/static.d.ts +8 -0
- package/dist/api/credentials/recipes/static.js +14 -0
- package/dist/api/credentials/recipes/types.d.ts +31 -0
- package/dist/api/credentials/recipes/types.js +2 -0
- package/dist/api/credentials/refresh.d.ts +13 -0
- package/dist/api/credentials/refresh.js +30 -0
- package/dist/api/credentials/satisfy.d.ts +13 -0
- package/dist/api/credentials/satisfy.js +35 -0
- package/dist/api/credentials/sign-in-fields.d.ts +4 -0
- package/dist/api/credentials/sign-in-fields.js +36 -0
- package/dist/api/credentials/signup.d.ts +9 -0
- package/dist/api/credentials/signup.js +24 -0
- package/dist/api/credentials/store-plan.d.ts +94 -0
- package/dist/api/credentials/store-plan.js +144 -0
- package/dist/api/credentials/store-types.d.ts +133 -0
- package/dist/api/credentials/store-types.js +3 -0
- package/dist/api/credentials/store.d.ts +5 -0
- package/dist/api/credentials/store.js +222 -0
- package/dist/api/credentials/validate/document.d.ts +10 -0
- package/dist/api/credentials/validate/document.js +52 -0
- package/dist/api/credentials/validate/origins.d.ts +27 -0
- package/dist/api/credentials/validate/origins.js +41 -0
- package/dist/api/credentials/validate/principals.d.ts +28 -0
- package/dist/api/credentials/validate/principals.js +184 -0
- package/dist/api/credentials/validate/recipe-shape.d.ts +22 -0
- package/dist/api/credentials/validate/recipe-shape.js +169 -0
- package/dist/api/credentials/validate/scenario-placeholders.d.ts +7 -0
- package/dist/api/credentials/validate/scenario-placeholders.js +106 -0
- package/dist/api/credentials/validate/security.d.ts +37 -0
- package/dist/api/credentials/validate/security.js +179 -0
- package/dist/api/credentials/writer.d.ts +5 -0
- package/dist/api/credentials/writer.js +9 -0
- package/dist/api/errors/message.d.ts +3 -0
- package/dist/api/errors/message.js +5 -0
- package/dist/api/errors/missing-value.d.ts +13 -0
- package/dist/api/errors/missing-value.js +16 -0
- package/dist/api/errors/network.d.ts +21 -0
- package/dist/api/errors/network.js +122 -0
- package/dist/api/errors/node-floor.d.ts +8 -0
- package/dist/api/errors/node-floor.js +8 -0
- package/dist/api/errors/suggest.d.ts +5 -0
- package/dist/api/errors/suggest.js +29 -0
- package/dist/api/errors/usage-error.d.ts +9 -0
- package/dist/api/errors/usage-error.js +9 -0
- package/dist/api/index.d.ts +26 -0
- package/dist/api/index.js +18 -0
- package/dist/api/reference/defects/bystanders.d.ts +8 -0
- package/dist/api/reference/defects/bystanders.js +7 -0
- package/dist/api/reference/defects/catalog.d.ts +88 -0
- package/dist/api/reference/defects/catalog.js +88 -0
- package/dist/api/reference/defects/composition.d.ts +59 -0
- package/dist/api/reference/defects/composition.js +59 -0
- package/dist/api/reference/defects/core.d.ts +63 -0
- package/dist/api/reference/defects/core.js +63 -0
- package/dist/api/reference/defects/defect-set.d.ts +10 -0
- package/dist/api/reference/defects/defect-set.js +19 -0
- package/dist/api/reference/defects/freshness.d.ts +8 -0
- package/dist/api/reference/defects/freshness.js +8 -0
- package/dist/api/reference/defects/query.d.ts +58 -0
- package/dist/api/reference/defects/query.js +58 -0
- package/dist/api/reference/defects/records.d.ts +172 -0
- package/dist/api/reference/defects/records.js +172 -0
- package/dist/api/reference/defects/security.d.ts +32 -0
- package/dist/api/reference/defects/security.js +32 -0
- package/dist/api/reference/defects/table.d.ts +21 -0
- package/dist/api/reference/defects/table.js +31 -0
- package/dist/api/reference/dialect/canonical.d.ts +10 -0
- package/dist/api/reference/dialect/canonical.js +42 -0
- package/dist/api/reference/dialect/presets.d.ts +63 -0
- package/dist/api/reference/dialect/presets.js +193 -0
- package/dist/api/reference/dialect/template.d.ts +3 -0
- package/dist/api/reference/dialect/template.js +63 -0
- package/dist/api/reference/dialect/types.d.ts +61 -0
- package/dist/api/reference/dialect/types.js +2 -0
- package/dist/api/reference/http/access.d.ts +27 -0
- package/dist/api/reference/http/access.js +131 -0
- package/dist/api/reference/http/auth/api-keys.d.ts +27 -0
- package/dist/api/reference/http/auth/api-keys.js +83 -0
- package/dist/api/reference/http/auth/credentials.d.ts +12 -0
- package/dist/api/reference/http/auth/credentials.js +33 -0
- package/dist/api/reference/http/auth/jwt.d.ts +11 -0
- package/dist/api/reference/http/auth/jwt.js +38 -0
- package/dist/api/reference/http/auth/sessions.d.ts +18 -0
- package/dist/api/reference/http/auth/sessions.js +105 -0
- package/dist/api/reference/http/auth/throttle.d.ts +8 -0
- package/dist/api/reference/http/auth/throttle.js +28 -0
- package/dist/api/reference/http/auth/types.d.ts +80 -0
- package/dist/api/reference/http/auth/types.js +3 -0
- package/dist/api/reference/http/body.d.ts +11 -0
- package/dist/api/reference/http/body.js +55 -0
- package/dist/api/reference/http/engines.d.ts +46 -0
- package/dist/api/reference/http/engines.js +75 -0
- package/dist/api/reference/http/errors.d.ts +16 -0
- package/dist/api/reference/http/errors.js +47 -0
- package/dist/api/reference/http/fetch.d.ts +4 -0
- package/dist/api/reference/http/fetch.js +12 -0
- package/dist/api/reference/http/handlers/actions.d.ts +6 -0
- package/dist/api/reference/http/handlers/actions.js +59 -0
- package/dist/api/reference/http/handlers/api-keys.d.ts +16 -0
- package/dist/api/reference/http/handlers/api-keys.js +64 -0
- package/dist/api/reference/http/handlers/auth.d.ts +25 -0
- package/dist/api/reference/http/handlers/auth.js +123 -0
- package/dist/api/reference/http/handlers/create.d.ts +6 -0
- package/dist/api/reference/http/handlers/create.js +141 -0
- package/dist/api/reference/http/handlers/entity.d.ts +9 -0
- package/dist/api/reference/http/handlers/entity.js +3 -0
- package/dist/api/reference/http/handlers/fixed.d.ts +16 -0
- package/dist/api/reference/http/handlers/fixed.js +129 -0
- package/dist/api/reference/http/handlers/grants.d.ts +6 -0
- package/dist/api/reference/http/handlers/grants.js +65 -0
- package/dist/api/reference/http/handlers/item.d.ts +8 -0
- package/dist/api/reference/http/handlers/item.js +129 -0
- package/dist/api/reference/http/handlers/list.d.ts +6 -0
- package/dist/api/reference/http/handlers/list.js +139 -0
- package/dist/api/reference/http/handlers/query-route.d.ts +4 -0
- package/dist/api/reference/http/handlers/query-route.js +35 -0
- package/dist/api/reference/http/handlers/styles.d.ts +4 -0
- package/dist/api/reference/http/handlers/styles.js +22 -0
- package/dist/api/reference/http/handlers/totp.d.ts +9 -0
- package/dist/api/reference/http/handlers/totp.js +34 -0
- package/dist/api/reference/http/ids.d.ts +38 -0
- package/dist/api/reference/http/ids.js +82 -0
- package/dist/api/reference/http/listing-query.d.ts +49 -0
- package/dist/api/reference/http/listing-query.js +120 -0
- package/dist/api/reference/http/node.d.ts +15 -0
- package/dist/api/reference/http/node.js +39 -0
- package/dist/api/reference/http/privileged.d.ts +12 -0
- package/dist/api/reference/http/privileged.js +27 -0
- package/dist/api/reference/http/read-cache.d.ts +27 -0
- package/dist/api/reference/http/read-cache.js +39 -0
- package/dist/api/reference/http/records.d.ts +36 -0
- package/dist/api/reference/http/records.js +116 -0
- package/dist/api/reference/http/reference.d.ts +48 -0
- package/dist/api/reference/http/reference.js +155 -0
- package/dist/api/reference/http/router.d.ts +6 -0
- package/dist/api/reference/http/router.js +121 -0
- package/dist/api/reference/http/routes.d.ts +9 -0
- package/dist/api/reference/http/routes.js +31 -0
- package/dist/api/reference/http/server.d.ts +10 -0
- package/dist/api/reference/http/server.js +25 -0
- package/dist/api/reference/http/state.d.ts +102 -0
- package/dist/api/reference/http/state.js +22 -0
- package/dist/api/reference/http/store-ops.d.ts +47 -0
- package/dist/api/reference/http/store-ops.js +161 -0
- package/dist/api/reference/http/validation.d.ts +26 -0
- package/dist/api/reference/http/validation.js +188 -0
- package/dist/api/reference/http/wire.d.ts +28 -0
- package/dist/api/reference/http/wire.js +23 -0
- package/dist/api/reference/listing/axes.d.ts +14 -0
- package/dist/api/reference/listing/axes.js +21 -0
- package/dist/api/reference/listing/order.d.ts +16 -0
- package/dist/api/reference/listing/order.js +37 -0
- package/dist/api/reference/listing/params.d.ts +19 -0
- package/dist/api/reference/listing/params.js +31 -0
- package/dist/api/reference/listing/predicate.d.ts +22 -0
- package/dist/api/reference/listing/predicate.js +56 -0
- package/dist/api/reference/listing/project.d.ts +14 -0
- package/dist/api/reference/listing/project.js +36 -0
- package/dist/api/reference/listing/run.d.ts +22 -0
- package/dist/api/reference/listing/run.js +88 -0
- package/dist/api/reference/listing/select.d.ts +13 -0
- package/dist/api/reference/listing/select.js +56 -0
- package/dist/api/reference/listing/types.d.ts +38 -0
- package/dist/api/reference/listing/types.js +2 -0
- package/dist/api/reference/listing/window.d.ts +23 -0
- package/dist/api/reference/listing/window.js +39 -0
- package/dist/api/reference/model/entities.d.ts +4 -0
- package/dist/api/reference/model/entities.js +7 -0
- package/dist/api/reference/model/fields.d.ts +11 -0
- package/dist/api/reference/model/fields.js +20 -0
- package/dist/api/reference/model/identity.d.ts +8 -0
- package/dist/api/reference/model/identity.js +27 -0
- package/dist/api/reference/model/job.d.ts +7 -0
- package/dist/api/reference/model/job.js +69 -0
- package/dist/api/reference/model/row.d.ts +4 -0
- package/dist/api/reference/model/row.js +46 -0
- package/dist/api/reference/model/shaped.d.ts +10 -0
- package/dist/api/reference/model/shaped.js +33 -0
- package/dist/api/reference/model/string-guard.d.ts +12 -0
- package/dist/api/reference/model/string-guard.js +15 -0
- package/dist/api/reference/model/table-shape.d.ts +7 -0
- package/dist/api/reference/model/table-shape.js +68 -0
- package/dist/api/reference/model/table.d.ts +4 -0
- package/dist/api/reference/model/table.js +72 -0
- package/dist/api/reference/model/timestamps.d.ts +4 -0
- package/dist/api/reference/model/timestamps.js +6 -0
- package/dist/api/reference/model/types.d.ts +92 -0
- package/dist/api/reference/model/types.js +8 -0
- package/dist/api/reference/model/webhook.d.ts +8 -0
- package/dist/api/reference/model/webhook.js +29 -0
- package/dist/api/reference/query/coerce.d.ts +10 -0
- package/dist/api/reference/query/coerce.js +27 -0
- package/dist/api/reference/query/compare.d.ts +6 -0
- package/dist/api/reference/query/compare.js +23 -0
- package/dist/api/reference/query/conventions.d.ts +20 -0
- package/dist/api/reference/query/conventions.js +3 -0
- package/dist/api/reference/query/evaluate.d.ts +6 -0
- package/dist/api/reference/query/evaluate.js +69 -0
- package/dist/api/reference/query/fields.d.ts +7 -0
- package/dist/api/reference/query/fields.js +18 -0
- package/dist/api/reference/query/filter.d.ts +18 -0
- package/dist/api/reference/query/filter.js +75 -0
- package/dist/api/reference/query/like.d.ts +5 -0
- package/dist/api/reference/query/like.js +38 -0
- package/dist/api/reference/query/operator.d.ts +7 -0
- package/dist/api/reference/query/operator.js +54 -0
- package/dist/api/reference/query/order.d.ts +10 -0
- package/dist/api/reference/query/order.js +59 -0
- package/dist/api/reference/query/scalar.d.ts +5 -0
- package/dist/api/reference/query/scalar.js +19 -0
- package/dist/api/reference/query/search.d.ts +9 -0
- package/dist/api/reference/query/search.js +24 -0
- package/dist/api/reference/query/split.d.ts +7 -0
- package/dist/api/reference/query/split.js +29 -0
- package/dist/api/reference/query/term-list.d.ts +7 -0
- package/dist/api/reference/query/term-list.js +40 -0
- package/dist/api/reference/query/term-types.d.ts +17 -0
- package/dist/api/reference/query/term-types.js +2 -0
- package/dist/api/reference/query/term.d.ts +5 -0
- package/dist/api/reference/query/term.js +98 -0
- package/dist/api/reference/query/tree.d.ts +6 -0
- package/dist/api/reference/query/tree.js +24 -0
- package/dist/api/reference/query-types.d.ts +76 -0
- package/dist/api/reference/query-types.js +4 -0
- package/dist/api/reference/shapes/catalog.d.ts +4 -0
- package/dist/api/reference/shapes/catalog.js +203 -0
- package/dist/api/reference/shapes/dialect.d.ts +5 -0
- package/dist/api/reference/shapes/dialect.js +61 -0
- package/dist/api/reference/shapes/named.d.ts +4 -0
- package/dist/api/reference/shapes/named.js +10 -0
- package/dist/api/reference/shapes/types.d.ts +112 -0
- package/dist/api/reference/shapes/types.js +14 -0
- package/dist/api/reference/spec/auth.d.ts +5 -0
- package/dist/api/reference/spec/auth.js +176 -0
- package/dist/api/reference/spec/build.d.ts +13 -0
- package/dist/api/reference/spec/build.js +66 -0
- package/dist/api/reference/spec/caller.d.ts +9 -0
- package/dist/api/reference/spec/caller.js +262 -0
- package/dist/api/reference/spec/collection.d.ts +17 -0
- package/dist/api/reference/spec/collection.js +146 -0
- package/dist/api/reference/spec/components.d.ts +4 -0
- package/dist/api/reference/spec/components.js +38 -0
- package/dist/api/reference/spec/consistency.d.ts +10 -0
- package/dist/api/reference/spec/consistency.js +10 -0
- package/dist/api/reference/spec/errors.d.ts +11 -0
- package/dist/api/reference/spec/errors.js +85 -0
- package/dist/api/reference/spec/invites.d.ts +5 -0
- package/dist/api/reference/spec/invites.js +92 -0
- package/dist/api/reference/spec/item.d.ts +6 -0
- package/dist/api/reference/spec/item.js +95 -0
- package/dist/api/reference/spec/jobs.d.ts +5 -0
- package/dist/api/reference/spec/jobs.js +119 -0
- package/dist/api/reference/spec/layout.d.ts +5 -0
- package/dist/api/reference/spec/layout.js +25 -0
- package/dist/api/reference/spec/operation.d.ts +15 -0
- package/dist/api/reference/spec/operation.js +31 -0
- package/dist/api/reference/spec/params.d.ts +12 -0
- package/dist/api/reference/spec/params.js +126 -0
- package/dist/api/reference/spec/public.d.ts +7 -0
- package/dist/api/reference/spec/public.js +65 -0
- package/dist/api/reference/spec/query-route.d.ts +10 -0
- package/dist/api/reference/spec/query-route.js +55 -0
- package/dist/api/reference/spec/query.d.ts +6 -0
- package/dist/api/reference/spec/query.js +109 -0
- package/dist/api/reference/spec/schemas.d.ts +21 -0
- package/dist/api/reference/spec/schemas.js +204 -0
- package/dist/api/reference/spec/security.d.ts +10 -0
- package/dist/api/reference/spec/security.js +19 -0
- package/dist/api/reference/spec/styles.d.ts +8 -0
- package/dist/api/reference/spec/styles.js +55 -0
- package/dist/api/reference/spec/types.d.ts +9 -0
- package/dist/api/reference/spec/types.js +2 -0
- package/dist/api/reference/store-api.d.ts +34 -0
- package/dist/api/reference/store-api.js +37 -0
- package/dist/api/reference/stores/memory.d.ts +29 -0
- package/dist/api/reference/stores/memory.js +66 -0
- package/dist/api/reference/stores/postgres-driver.d.ts +9 -0
- package/dist/api/reference/stores/postgres-driver.js +27 -0
- package/dist/api/reference/stores/postgres.d.ts +62 -0
- package/dist/api/reference/stores/postgres.js +188 -0
- package/dist/api/reference/stores/sql-compile.d.ts +53 -0
- package/dist/api/reference/stores/sql-compile.js +105 -0
- package/dist/api/reference/stores/sqlite-driver.d.ts +54 -0
- package/dist/api/reference/stores/sqlite-driver.js +100 -0
- package/dist/api/reference/stores/sqlite.d.ts +58 -0
- package/dist/api/reference/stores/sqlite.js +219 -0
- package/dist/api/report/confidence.d.ts +32 -0
- package/dist/api/report/confidence.js +134 -0
- package/dist/api/report/console/bypass.d.ts +13 -0
- package/dist/api/report/console/bypass.js +29 -0
- package/dist/api/report/console/catalog-checks.d.ts +9 -0
- package/dist/api/report/console/catalog-checks.js +106 -0
- package/dist/api/report/console/catalog.d.ts +45 -0
- package/dist/api/report/console/catalog.js +73 -0
- package/dist/api/report/console/describe.d.ts +27 -0
- package/dist/api/report/console/describe.js +58 -0
- package/dist/api/report/console/doctor-facts.d.ts +61 -0
- package/dist/api/report/console/doctor-facts.js +50 -0
- package/dist/api/report/console/doctor-notes.d.ts +12 -0
- package/dist/api/report/console/doctor-notes.js +77 -0
- package/dist/api/report/console/doctor-text.d.ts +12 -0
- package/dist/api/report/console/doctor-text.js +68 -0
- package/dist/api/report/console/doctor.d.ts +26 -0
- package/dist/api/report/console/doctor.js +78 -0
- package/dist/api/report/console/gaps.d.ts +9 -0
- package/dist/api/report/console/gaps.js +23 -0
- package/dist/api/report/console/plan.d.ts +19 -0
- package/dist/api/report/console/plan.js +138 -0
- package/dist/api/report/console/report.d.ts +8 -0
- package/dist/api/report/console/report.js +5 -0
- package/dist/api/report/console/roots.d.ts +28 -0
- package/dist/api/report/console/roots.js +34 -0
- package/dist/api/report/console/security-text.d.ts +8 -0
- package/dist/api/report/console/security-text.js +106 -0
- package/dist/api/report/console/security.d.ts +93 -0
- package/dist/api/report/console/security.js +153 -0
- package/dist/api/report/console/tags.d.ts +23 -0
- package/dist/api/report/console/tags.js +113 -0
- package/dist/api/report/diff.d.ts +57 -0
- package/dist/api/report/diff.js +95 -0
- package/dist/api/report/matrix/band.d.ts +7 -0
- package/dist/api/report/matrix/band.js +113 -0
- package/dist/api/report/matrix/cards.d.ts +9 -0
- package/dist/api/report/matrix/cards.js +41 -0
- package/dist/api/report/matrix/catalog.d.ts +33 -0
- package/dist/api/report/matrix/catalog.js +152 -0
- package/dist/api/report/matrix/graph.d.ts +16 -0
- package/dist/api/report/matrix/graph.js +108 -0
- package/dist/api/report/matrix/invalidate.d.ts +7 -0
- package/dist/api/report/matrix/invalidate.js +30 -0
- package/dist/api/report/matrix/loom.d.ts +7 -0
- package/dist/api/report/matrix/loom.js +117 -0
- package/dist/api/report/matrix/mermaid.d.ts +7 -0
- package/dist/api/report/matrix/mermaid.js +65 -0
- package/dist/api/report/matrix/poster.d.ts +10 -0
- package/dist/api/report/matrix/poster.js +105 -0
- package/dist/api/report/matrix/rows.d.ts +34 -0
- package/dist/api/report/matrix/rows.js +68 -0
- package/dist/api/report/matrix/slice.d.ts +25 -0
- package/dist/api/report/matrix/slice.js +62 -0
- package/dist/api/report/matrix/strips.d.ts +5 -0
- package/dist/api/report/matrix/strips.js +23 -0
- package/dist/api/report/matrix/style.d.ts +4 -0
- package/dist/api/report/matrix/style.js +103 -0
- package/dist/api/report/matrix/summary.d.ts +8 -0
- package/dist/api/report/matrix/summary.js +49 -0
- package/dist/api/report/matrix/text.d.ts +6 -0
- package/dist/api/report/matrix/text.js +10 -0
- package/dist/api/report/matrix/types.d.ts +149 -0
- package/dist/api/report/matrix/types.js +6 -0
- package/dist/api/report/matrix/view.d.ts +6 -0
- package/dist/api/report/matrix/view.js +41 -0
- package/dist/api/report/render/coverage.d.ts +29 -0
- package/dist/api/report/render/coverage.js +78 -0
- package/dist/api/report/render/input.d.ts +88 -0
- package/dist/api/report/render/input.js +2 -0
- package/dist/api/report/render/json.d.ts +9 -0
- package/dist/api/report/render/json.js +108 -0
- package/dist/api/report/render/junit.d.ts +14 -0
- package/dist/api/report/render/junit.js +218 -0
- package/dist/api/report/render/markdown-findings.d.ts +8 -0
- package/dist/api/report/render/markdown-findings.js +53 -0
- package/dist/api/report/render/markdown-head.d.ts +8 -0
- package/dist/api/report/render/markdown-head.js +82 -0
- package/dist/api/report/render/markdown-sections.d.ts +35 -0
- package/dist/api/report/render/markdown-sections.js +125 -0
- package/dist/api/report/render/markdown.d.ts +12 -0
- package/dist/api/report/render/markdown.js +38 -0
- package/dist/api/report/render/repro.d.ts +13 -0
- package/dist/api/report/render/repro.js +47 -0
- package/dist/api/report/render/scope.d.ts +8 -0
- package/dist/api/report/render/scope.js +98 -0
- package/dist/api/report/render/step-summary.d.ts +17 -0
- package/dist/api/report/render/step-summary.js +153 -0
- package/dist/api/report/render/summary.d.ts +3 -0
- package/dist/api/report/render/summary.js +143 -0
- package/dist/api/report/render/text.d.ts +13 -0
- package/dist/api/report/render/text.js +54 -0
- package/dist/api/report/render/traffic.d.ts +37 -0
- package/dist/api/report/render/traffic.js +54 -0
- package/dist/api/report/render/verdicts.d.ts +10 -0
- package/dist/api/report/render/verdicts.js +33 -0
- package/dist/api/runtime/accounts/identity.d.ts +14 -0
- package/dist/api/runtime/accounts/identity.js +30 -0
- package/dist/api/runtime/accounts/ledger.d.ts +68 -0
- package/dist/api/runtime/accounts/ledger.js +96 -0
- package/dist/api/runtime/accounts/ops.d.ts +28 -0
- package/dist/api/runtime/accounts/ops.js +35 -0
- package/dist/api/runtime/accounts/watch.d.ts +19 -0
- package/dist/api/runtime/accounts/watch.js +66 -0
- package/dist/api/runtime/async.d.ts +95 -0
- package/dist/api/runtime/async.js +206 -0
- package/dist/api/runtime/baseline.d.ts +34 -0
- package/dist/api/runtime/baseline.js +103 -0
- package/dist/api/runtime/blocked-check.d.ts +14 -0
- package/dist/api/runtime/blocked-check.js +18 -0
- package/dist/api/runtime/body/encode.d.ts +20 -0
- package/dist/api/runtime/body/encode.js +50 -0
- package/dist/api/runtime/body/form-data.d.ts +16 -0
- package/dist/api/runtime/body/form-data.js +41 -0
- package/dist/api/runtime/body/form-pairs.d.ts +13 -0
- package/dist/api/runtime/body/form-pairs.js +26 -0
- package/dist/api/runtime/body/multipart.d.ts +7 -0
- package/dist/api/runtime/body/multipart.js +78 -0
- package/dist/api/runtime/body/schema.d.ts +12 -0
- package/dist/api/runtime/body/schema.js +68 -0
- package/dist/api/runtime/body/types.d.ts +33 -0
- package/dist/api/runtime/body/types.js +3 -0
- package/dist/api/runtime/body/upload-parts.d.ts +14 -0
- package/dist/api/runtime/body/upload-parts.js +53 -0
- package/dist/api/runtime/check-costs.d.ts +15 -0
- package/dist/api/runtime/check-costs.js +133 -0
- package/dist/api/runtime/check-ids.d.ts +35 -0
- package/dist/api/runtime/check-ids.js +204 -0
- package/dist/api/runtime/checks/core/check.d.ts +116 -0
- package/dist/api/runtime/checks/core/check.js +3 -0
- package/dist/api/runtime/checks/core/context.d.ts +175 -0
- package/dist/api/runtime/checks/core/context.js +10 -0
- package/dist/api/runtime/checks/core/define.d.ts +7 -0
- package/dist/api/runtime/checks/core/define.js +10 -0
- package/dist/api/runtime/checks/core/operation-context.d.ts +162 -0
- package/dist/api/runtime/checks/core/operation-context.js +3 -0
- package/dist/api/runtime/checks/core/operation.d.ts +20 -0
- package/dist/api/runtime/checks/core/operation.js +33 -0
- package/dist/api/runtime/checks/core/plan.d.ts +30 -0
- package/dist/api/runtime/checks/core/plan.js +24 -0
- package/dist/api/runtime/checks/core/registry.d.ts +12 -0
- package/dist/api/runtime/checks/core/registry.js +38 -0
- package/dist/api/runtime/checks/core/run.d.ts +26 -0
- package/dist/api/runtime/checks/core/run.js +65 -0
- package/dist/api/runtime/checks/families/composition/plans.d.ts +35 -0
- package/dist/api/runtime/checks/families/composition/plans.js +147 -0
- package/dist/api/runtime/checks/families/composition/query-axes-compose.d.ts +19 -0
- package/dist/api/runtime/checks/families/composition/query-axes-compose.js +89 -0
- package/dist/api/runtime/checks/families/composition/query-filter-and-select-compose.d.ts +20 -0
- package/dist/api/runtime/checks/families/composition/query-filter-and-select-compose.js +83 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-select-compose.d.ts +12 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-select-compose.js +81 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-sort-compose.d.ts +14 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-sort-compose.js +84 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-sort-select-compose.d.ts +9 -0
- package/dist/api/runtime/checks/families/composition/query-filter-search-sort-select-compose.js +75 -0
- package/dist/api/runtime/checks/families/composition/query-filter-selects-from-whole-set.d.ts +19 -0
- package/dist/api/runtime/checks/families/composition/query-filter-selects-from-whole-set.js +101 -0
- package/dist/api/runtime/checks/families/composition/query-filter-sort-select-compose.d.ts +17 -0
- package/dist/api/runtime/checks/families/composition/query-filter-sort-select-compose.js +89 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-filter-compose.d.ts +18 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-filter-compose.js +84 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-select-compose.d.ts +8 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-select-compose.js +57 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-sort-compose.d.ts +7 -0
- package/dist/api/runtime/checks/families/composition/query-search-and-sort-compose.js +79 -0
- package/dist/api/runtime/checks/families/composition/query-sort-and-select-compose.d.ts +7 -0
- package/dist/api/runtime/checks/families/composition/query-sort-and-select-compose.js +57 -0
- package/dist/api/runtime/checks/families/composition/query-unknown-parameter-consistent.d.ts +13 -0
- package/dist/api/runtime/checks/families/composition/query-unknown-parameter-consistent.js +76 -0
- package/dist/api/runtime/checks/families/conformance/response-status-is-documented.d.ts +10 -0
- package/dist/api/runtime/checks/families/conformance/response-status-is-documented.js +117 -0
- package/dist/api/runtime/checks/families/conformance/response-write-only-not-returned.d.ts +13 -0
- package/dist/api/runtime/checks/families/conformance/response-write-only-not-returned.js +116 -0
- package/dist/api/runtime/checks/families/conformance/schema-error-response-matches-document.d.ts +10 -0
- package/dist/api/runtime/checks/families/conformance/schema-error-response-matches-document.js +119 -0
- package/dist/api/runtime/checks/families/conformance/schema-problem-json-shape.d.ts +11 -0
- package/dist/api/runtime/checks/families/conformance/schema-problem-json-shape.js +92 -0
- package/dist/api/runtime/checks/families/conformance/schema-read-response-matches-document.d.ts +15 -0
- package/dist/api/runtime/checks/families/conformance/schema-read-response-matches-document.js +111 -0
- package/dist/api/runtime/checks/families/conformance/schema-success-response-matches-document.d.ts +10 -0
- package/dist/api/runtime/checks/families/conformance/schema-success-response-matches-document.js +58 -0
- package/dist/api/runtime/checks/families/conformance/schema-verdict.d.ts +12 -0
- package/dist/api/runtime/checks/families/conformance/schema-verdict.js +27 -0
- package/dist/api/runtime/checks/families/consistency/bypass-is-fresh.d.ts +12 -0
- package/dist/api/runtime/checks/families/consistency/bypass-is-fresh.js +57 -0
- package/dist/api/runtime/checks/families/consistency/consistency-projections-agree.d.ts +28 -0
- package/dist/api/runtime/checks/families/consistency/consistency-projections-agree.js +165 -0
- package/dist/api/runtime/checks/families/consistency/freshness-write.d.ts +37 -0
- package/dist/api/runtime/checks/families/consistency/freshness-write.js +79 -0
- package/dist/api/runtime/checks/families/consistency/invalidation-declared-route-changes.d.ts +22 -0
- package/dist/api/runtime/checks/families/consistency/invalidation-declared-route-changes.js +130 -0
- package/dist/api/runtime/checks/families/consistency/list-item-matches-listed-row.d.ts +7 -0
- package/dist/api/runtime/checks/families/consistency/list-item-matches-listed-row.js +71 -0
- package/dist/api/runtime/checks/families/consistency/list-read-after-write.d.ts +5 -0
- package/dist/api/runtime/checks/families/consistency/list-read-after-write.js +101 -0
- package/dist/api/runtime/checks/families/consistency/staleness-schedule.d.ts +15 -0
- package/dist/api/runtime/checks/families/consistency/staleness-schedule.js +31 -0
- package/dist/api/runtime/checks/families/consistency/staleness-watch.d.ts +35 -0
- package/dist/api/runtime/checks/families/consistency/staleness-watch.js +32 -0
- package/dist/api/runtime/checks/families/consistency/staleness-within-bound.d.ts +18 -0
- package/dist/api/runtime/checks/families/consistency/staleness-within-bound.js +109 -0
- package/dist/api/runtime/checks/families/effects-async/async-reaches-terminal-state.d.ts +3 -0
- package/dist/api/runtime/checks/families/effects-async/async-reaches-terminal-state.js +161 -0
- package/dist/api/runtime/checks/families/effects-async/async-receipt-identifies-the-job.d.ts +3 -0
- package/dist/api/runtime/checks/families/effects-async/async-receipt-identifies-the-job.js +54 -0
- package/dist/api/runtime/checks/families/effects-async/effect-verdicts.d.ts +27 -0
- package/dist/api/runtime/checks/families/effects-async/effect-verdicts.js +133 -0
- package/dist/api/runtime/checks/families/effects-async/effects-declared-effect-occurs.d.ts +3 -0
- package/dist/api/runtime/checks/families/effects-async/effects-declared-effect-occurs.js +174 -0
- package/dist/api/runtime/checks/families/effects-async/effects-side-effect-arrives.d.ts +7 -0
- package/dist/api/runtime/checks/families/effects-async/effects-side-effect-arrives.js +99 -0
- package/dist/api/runtime/checks/families/effects-async/observe.d.ts +25 -0
- package/dist/api/runtime/checks/families/effects-async/observe.js +39 -0
- package/dist/api/runtime/checks/families/effects-async/requests.d.ts +9 -0
- package/dist/api/runtime/checks/families/effects-async/requests.js +23 -0
- package/dist/api/runtime/checks/families/filter/compound.d.ts +51 -0
- package/dist/api/runtime/checks/families/filter/compound.js +75 -0
- package/dist/api/runtime/checks/families/filter/error-malformed-filter-not-5xx.d.ts +3 -0
- package/dist/api/runtime/checks/families/filter/error-malformed-filter-not-5xx.js +46 -0
- package/dist/api/runtime/checks/families/filter/fields.d.ts +16 -0
- package/dist/api/runtime/checks/families/filter/fields.js +54 -0
- package/dist/api/runtime/checks/families/filter/filter-alias-matches-canonical.d.ts +3 -0
- package/dist/api/runtime/checks/families/filter/filter-alias-matches-canonical.js +60 -0
- package/dist/api/runtime/checks/families/filter/filter-and-composes-as-intersection.d.ts +10 -0
- package/dist/api/runtime/checks/families/filter/filter-and-composes-as-intersection.js +54 -0
- package/dist/api/runtime/checks/families/filter/filter-condition-cap-rejected.d.ts +7 -0
- package/dist/api/runtime/checks/families/filter/filter-condition-cap-rejected.js +39 -0
- package/dist/api/runtime/checks/families/filter/filter-contains-membership.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-contains-membership.js +66 -0
- package/dist/api/runtime/checks/families/filter/filter-empty-in.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-empty-in.js +54 -0
- package/dist/api/runtime/checks/families/filter/filter-equality-selects-exactly-one.d.ts +7 -0
- package/dist/api/runtime/checks/families/filter/filter-equality-selects-exactly-one.js +45 -0
- package/dist/api/runtime/checks/families/filter/filter-gte-is-gt-or-eq.d.ts +4 -0
- package/dist/api/runtime/checks/families/filter/filter-gte-is-gt-or-eq.js +21 -0
- package/dist/api/runtime/checks/families/filter/filter-ilike-is-case-insensitive.d.ts +10 -0
- package/dist/api/runtime/checks/families/filter/filter-ilike-is-case-insensitive.js +65 -0
- package/dist/api/runtime/checks/families/filter/filter-illegal-op-rejected.d.ts +17 -0
- package/dist/api/runtime/checks/families/filter/filter-illegal-op-rejected.js +103 -0
- package/dist/api/runtime/checks/families/filter/filter-in-is-union-of-eq.d.ts +10 -0
- package/dist/api/runtime/checks/families/filter/filter-in-is-union-of-eq.js +57 -0
- package/dist/api/runtime/checks/families/filter/filter-in-over-limit-rejected.d.ts +7 -0
- package/dist/api/runtime/checks/families/filter/filter-in-over-limit-rejected.js +38 -0
- package/dist/api/runtime/checks/families/filter/filter-is-null-selects-nulls.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-is-null-selects-nulls.js +71 -0
- package/dist/api/runtime/checks/families/filter/filter-like-metacharacters-escaped.d.ts +6 -0
- package/dist/api/runtime/checks/families/filter/filter-like-metacharacters-escaped.js +56 -0
- package/dist/api/runtime/checks/families/filter/filter-lte-is-lt-or-eq.d.ts +4 -0
- package/dist/api/runtime/checks/families/filter/filter-lte-is-lt-or-eq.js +21 -0
- package/dist/api/runtime/checks/families/filter/filter-malformed-term-rejected.d.ts +11 -0
- package/dist/api/runtime/checks/families/filter/filter-malformed-term-rejected.js +72 -0
- package/dist/api/runtime/checks/families/filter/filter-negation-partitions-the-set.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-negation-partitions-the-set.js +99 -0
- package/dist/api/runtime/checks/families/filter/filter-nested-and-or-distributes.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-nested-and-or-distributes.js +80 -0
- package/dist/api/runtime/checks/families/filter/filter-nin-complements-in.d.ts +8 -0
- package/dist/api/runtime/checks/families/filter/filter-nin-complements-in.js +90 -0
- package/dist/api/runtime/checks/families/filter/filter-numeric-comparison-is-numeric.d.ts +32 -0
- package/dist/api/runtime/checks/families/filter/filter-numeric-comparison-is-numeric.js +125 -0
- package/dist/api/runtime/checks/families/filter/filter-or-composes-as-union.d.ts +10 -0
- package/dist/api/runtime/checks/families/filter/filter-or-composes-as-union.js +58 -0
- package/dist/api/runtime/checks/families/filter/filter-ordered-triple-partitions.d.ts +9 -0
- package/dist/api/runtime/checks/families/filter/filter-ordered-triple-partitions.js +103 -0
- package/dist/api/runtime/checks/families/filter/filter-unknown-field-rejected.d.ts +5 -0
- package/dist/api/runtime/checks/families/filter/filter-unknown-field-rejected.js +53 -0
- package/dist/api/runtime/checks/families/filter/filter-zero-match-returns-none.d.ts +5 -0
- package/dist/api/runtime/checks/families/filter/filter-zero-match-returns-none.js +38 -0
- package/dist/api/runtime/checks/families/filter/range.d.ts +16 -0
- package/dist/api/runtime/checks/families/filter/range.js +57 -0
- package/dist/api/runtime/checks/families/isolation/auth-invite-grants-then-revokes.d.ts +10 -0
- package/dist/api/runtime/checks/families/isolation/auth-invite-grants-then-revokes.js +138 -0
- package/dist/api/runtime/checks/families/isolation/auth-rank-is-monotonic-on-writes.d.ts +14 -0
- package/dist/api/runtime/checks/families/isolation/auth-rank-is-monotonic-on-writes.js +127 -0
- package/dist/api/runtime/checks/families/isolation/auth-rank-is-monotonic.d.ts +18 -0
- package/dist/api/runtime/checks/families/isolation/auth-rank-is-monotonic.js +74 -0
- package/dist/api/runtime/checks/families/isolation/invite-flow.d.ts +66 -0
- package/dist/api/runtime/checks/families/isolation/invite-flow.js +160 -0
- package/dist/api/runtime/checks/families/isolation/tenant-denial-does-not-reveal-existence.d.ts +21 -0
- package/dist/api/runtime/checks/families/isolation/tenant-denial-does-not-reveal-existence.js +71 -0
- package/dist/api/runtime/checks/families/isolation/tenant-filter-does-not-bypass-scope.d.ts +8 -0
- package/dist/api/runtime/checks/families/isolation/tenant-filter-does-not-bypass-scope.js +68 -0
- package/dist/api/runtime/checks/families/isolation/tenant-item-not-readable-cross-tenant.d.ts +9 -0
- package/dist/api/runtime/checks/families/isolation/tenant-item-not-readable-cross-tenant.js +60 -0
- package/dist/api/runtime/checks/families/isolation/tenant-item-not-writable-cross-tenant.d.ts +18 -0
- package/dist/api/runtime/checks/families/isolation/tenant-item-not-writable-cross-tenant.js +120 -0
- package/dist/api/runtime/checks/families/isolation/tenant-parent-not-reachable-from-another-root.d.ts +17 -0
- package/dist/api/runtime/checks/families/isolation/tenant-parent-not-reachable-from-another-root.js +137 -0
- package/dist/api/runtime/checks/families/isolation/tenant.d.ts +8 -0
- package/dist/api/runtime/checks/families/isolation/tenant.js +11 -0
- package/dist/api/runtime/checks/families/pagination/count-consistent-with-returned-page.d.ts +10 -0
- package/dist/api/runtime/checks/families/pagination/count-consistent-with-returned-page.js +43 -0
- package/dist/api/runtime/checks/families/pagination/count-matches-filtered-set.d.ts +5 -0
- package/dist/api/runtime/checks/families/pagination/count-matches-filtered-set.js +44 -0
- package/dist/api/runtime/checks/families/pagination/pagination-bounds-handled.d.ts +14 -0
- package/dist/api/runtime/checks/families/pagination/pagination-bounds-handled.js +74 -0
- package/dist/api/runtime/checks/families/pagination/pagination-cursor-agrees-with-page.d.ts +3 -0
- package/dist/api/runtime/checks/families/pagination/pagination-cursor-agrees-with-page.js +109 -0
- package/dist/api/runtime/checks/families/pagination/pagination-has-more-is-accurate.d.ts +3 -0
- package/dist/api/runtime/checks/families/pagination/pagination-has-more-is-accurate.js +36 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-bounds-enforced.d.ts +10 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-bounds-enforced.js +54 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-bounds-page-size.d.ts +3 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-bounds-page-size.js +28 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-respects-documented-max.d.ts +6 -0
- package/dist/api/runtime/checks/families/pagination/pagination-limit-respects-documented-max.js +39 -0
- package/dist/api/runtime/checks/families/pagination/pagination-page-walk-covers-set.d.ts +3 -0
- package/dist/api/runtime/checks/families/pagination/pagination-page-walk-covers-set.js +90 -0
- package/dist/api/runtime/checks/families/pagination/walk.d.ts +16 -0
- package/dist/api/runtime/checks/families/pagination/walk.js +23 -0
- package/dist/api/runtime/checks/families/search-select/search-case-insensitive.d.ts +6 -0
- package/dist/api/runtime/checks/families/search-select/search-case-insensitive.js +63 -0
- package/dist/api/runtime/checks/families/search-select/search-empty-q.d.ts +6 -0
- package/dist/api/runtime/checks/families/search-select/search-empty-q.js +51 -0
- package/dist/api/runtime/checks/families/search-select/search-mode-accepted.d.ts +3 -0
- package/dist/api/runtime/checks/families/search-select/search-mode-accepted.js +42 -0
- package/dist/api/runtime/checks/families/search-select/search-q-narrows-result.d.ts +5 -0
- package/dist/api/runtime/checks/families/search-select/search-q-narrows-result.js +38 -0
- package/dist/api/runtime/checks/families/search-select/search-tokens-and.d.ts +6 -0
- package/dist/api/runtime/checks/families/search-select/search-tokens-and.js +64 -0
- package/dist/api/runtime/checks/families/search-select/select-nested-honored.d.ts +10 -0
- package/dist/api/runtime/checks/families/search-select/select-nested-honored.js +60 -0
- package/dist/api/runtime/checks/families/search-select/select-projection-honored.d.ts +6 -0
- package/dist/api/runtime/checks/families/search-select/select-projection-honored.js +42 -0
- package/dist/api/runtime/checks/families/search-select/select-requested-fields-present.d.ts +6 -0
- package/dist/api/runtime/checks/families/search-select/select-requested-fields-present.js +45 -0
- package/dist/api/runtime/checks/families/search-select/select-unknown-field-rejected.d.ts +8 -0
- package/dist/api/runtime/checks/families/search-select/select-unknown-field-rejected.js +48 -0
- package/dist/api/runtime/checks/families/security/auth-alternative-accepted.d.ts +20 -0
- package/dist/api/runtime/checks/families/security/auth-alternative-accepted.js +84 -0
- package/dist/api/runtime/checks/families/security/auth-anonymous-operation-open.d.ts +6 -0
- package/dist/api/runtime/checks/families/security/auth-anonymous-operation-open.js +47 -0
- package/dist/api/runtime/checks/families/security/auth-cross-tenant-key-refused.d.ts +20 -0
- package/dist/api/runtime/checks/families/security/auth-cross-tenant-key-refused.js +89 -0
- package/dist/api/runtime/checks/families/security/auth-invalid-credential-refused.d.ts +16 -0
- package/dist/api/runtime/checks/families/security/auth-invalid-credential-refused.js +67 -0
- package/dist/api/runtime/checks/families/security/auth-login-throttled.d.ts +16 -0
- package/dist/api/runtime/checks/families/security/auth-login-throttled.js +91 -0
- package/dist/api/runtime/checks/families/security/auth-missing-credential-refused.d.ts +4 -0
- package/dist/api/runtime/checks/families/security/auth-missing-credential-refused.js +29 -0
- package/dist/api/runtime/checks/families/security/auth-privileged-field-ignored.d.ts +34 -0
- package/dist/api/runtime/checks/families/security/auth-privileged-field-ignored.js +210 -0
- package/dist/api/runtime/checks/families/security/auth-refresh-reuse-refused.d.ts +10 -0
- package/dist/api/runtime/checks/families/security/auth-refresh-reuse-refused.js +52 -0
- package/dist/api/runtime/checks/families/security/auth-revoked-credential-refused.d.ts +10 -0
- package/dist/api/runtime/checks/families/security/auth-revoked-credential-refused.js +57 -0
- package/dist/api/runtime/checks/families/security/auth-role-enforced.d.ts +21 -0
- package/dist/api/runtime/checks/families/security/auth-role-enforced.js +74 -0
- package/dist/api/runtime/checks/families/security/auth-scope-enforced.d.ts +10 -0
- package/dist/api/runtime/checks/families/security/auth-scope-enforced.js +89 -0
- package/dist/api/runtime/checks/families/security/auth-wrong-scheme-refused.d.ts +10 -0
- package/dist/api/runtime/checks/families/security/auth-wrong-scheme-refused.js +45 -0
- package/dist/api/runtime/checks/families/security/lifecycle.d.ts +70 -0
- package/dist/api/runtime/checks/families/security/lifecycle.js +161 -0
- package/dist/api/runtime/checks/families/security/privileged-signup.d.ts +44 -0
- package/dist/api/runtime/checks/families/security/privileged-signup.js +227 -0
- package/dist/api/runtime/checks/families/security/probing.d.ts +77 -0
- package/dist/api/runtime/checks/families/security/probing.js +148 -0
- package/dist/api/runtime/checks/families/security/writable.d.ts +19 -0
- package/dist/api/runtime/checks/families/security/writable.js +40 -0
- package/dist/api/runtime/checks/families/sort/sort-default-order-applied.d.ts +5 -0
- package/dist/api/runtime/checks/families/sort/sort-default-order-applied.js +47 -0
- package/dist/api/runtime/checks/families/sort/sort-invalid-direction-rejected.d.ts +10 -0
- package/dist/api/runtime/checks/families/sort/sort-invalid-direction-rejected.js +56 -0
- package/dist/api/runtime/checks/families/sort/sort-multi-key-tiebreak.d.ts +8 -0
- package/dist/api/runtime/checks/families/sort/sort-multi-key-tiebreak.js +76 -0
- package/dist/api/runtime/checks/families/sort/sort-nulls-first-last.d.ts +8 -0
- package/dist/api/runtime/checks/families/sort/sort-nulls-first-last.js +67 -0
- package/dist/api/runtime/checks/families/sort/sort-numeric-order-is-numeric.d.ts +6 -0
- package/dist/api/runtime/checks/families/sort/sort-numeric-order-is-numeric.js +44 -0
- package/dist/api/runtime/checks/families/sort/sort-order-is-applied.d.ts +5 -0
- package/dist/api/runtime/checks/families/sort/sort-order-is-applied.js +54 -0
- package/dist/api/runtime/checks/families/sort/sort-reverse-symmetry.d.ts +5 -0
- package/dist/api/runtime/checks/families/sort/sort-reverse-symmetry.js +115 -0
- package/dist/api/runtime/checks/families/sort/sort-stable-tiebreak.d.ts +6 -0
- package/dist/api/runtime/checks/families/sort/sort-stable-tiebreak.js +80 -0
- package/dist/api/runtime/checks/families/sort/sort-unknown-field-rejected.d.ts +3 -0
- package/dist/api/runtime/checks/families/sort/sort-unknown-field-rejected.js +38 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-filterable-is-filterable.d.ts +18 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-filterable-is-filterable.js +139 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-filterable-ops-accepted.d.ts +3 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-filterable-ops-accepted.js +90 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-rate-limit-is-honored.d.ts +14 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-rate-limit-is-honored.js +62 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-selectable-is-selectable.d.ts +8 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-selectable-is-selectable.js +79 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-sortable-is-sortable.d.ts +8 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-sortable-is-sortable.js +76 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-sortable-nulls-accepted.d.ts +3 -0
- package/dist/api/runtime/checks/families/spec-declarations/spec-declared-sortable-nulls-accepted.js +52 -0
- package/dist/api/runtime/checks/families/validation/bodies.d.ts +16 -0
- package/dist/api/runtime/checks/families/validation/bodies.js +30 -0
- package/dist/api/runtime/checks/families/validation/invalid-body.d.ts +29 -0
- package/dist/api/runtime/checks/families/validation/invalid-body.js +52 -0
- package/dist/api/runtime/checks/families/validation/request-invalid-body-refused.d.ts +18 -0
- package/dist/api/runtime/checks/families/validation/request-invalid-body-refused.js +152 -0
- package/dist/api/runtime/checks/families/validation/undeliverable.d.ts +3 -0
- package/dist/api/runtime/checks/families/validation/undeliverable.js +40 -0
- package/dist/api/runtime/checks/families/validation/validation-content-type-enforced.d.ts +9 -0
- package/dist/api/runtime/checks/families/validation/validation-content-type-enforced.js +50 -0
- package/dist/api/runtime/checks/families/validation/validation-enum-enforced.d.ts +6 -0
- package/dist/api/runtime/checks/families/validation/validation-enum-enforced.js +44 -0
- package/dist/api/runtime/checks/families/validation/validation-max-length-enforced.d.ts +6 -0
- package/dist/api/runtime/checks/families/validation/validation-max-length-enforced.js +44 -0
- package/dist/api/runtime/checks/families/validation/validation-required-enforced.d.ts +6 -0
- package/dist/api/runtime/checks/families/validation/validation-required-enforced.js +40 -0
- package/dist/api/runtime/checks/families/write/concurrency-if-match-enforced.d.ts +23 -0
- package/dist/api/runtime/checks/families/write/concurrency-if-match-enforced.js +154 -0
- package/dist/api/runtime/checks/families/write/concurrency-no-lost-update.d.ts +14 -0
- package/dist/api/runtime/checks/families/write/concurrency-no-lost-update.js +216 -0
- package/dist/api/runtime/checks/families/write/create-keeps-submitted-identity.d.ts +11 -0
- package/dist/api/runtime/checks/families/write/create-keeps-submitted-identity.js +122 -0
- package/dist/api/runtime/checks/families/write/create-persists-submitted-fields.d.ts +20 -0
- package/dist/api/runtime/checks/families/write/create-persists-submitted-fields.js +209 -0
- package/dist/api/runtime/checks/families/write/create-status-matches-document.d.ts +7 -0
- package/dist/api/runtime/checks/families/write/create-status-matches-document.js +34 -0
- package/dist/api/runtime/checks/families/write/create-unique-conflict-rejected.d.ts +11 -0
- package/dist/api/runtime/checks/families/write/create-unique-conflict-rejected.js +172 -0
- package/dist/api/runtime/checks/families/write/delete-absent-record-returns-404.d.ts +7 -0
- package/dist/api/runtime/checks/families/write/delete-absent-record-returns-404.js +46 -0
- package/dist/api/runtime/checks/families/write/idempotency-replay-does-not-duplicate.d.ts +21 -0
- package/dist/api/runtime/checks/families/write/idempotency-replay-does-not-duplicate.js +132 -0
- package/dist/api/runtime/checks/families/write/patch-immutable-field-rejected.d.ts +8 -0
- package/dist/api/runtime/checks/families/write/patch-immutable-field-rejected.js +65 -0
- package/dist/api/runtime/checks/families/write/patch-minimality.d.ts +8 -0
- package/dist/api/runtime/checks/families/write/patch-minimality.js +160 -0
- package/dist/api/runtime/checks/families/write/payload-cases.d.ts +37 -0
- package/dist/api/runtime/checks/families/write/payload-cases.js +132 -0
- package/dist/api/runtime/checks/families/write/payload-claims.d.ts +28 -0
- package/dist/api/runtime/checks/families/write/payload-claims.js +46 -0
- package/dist/api/runtime/checks/families/write/payload-probe.d.ts +48 -0
- package/dist/api/runtime/checks/families/write/payload-probe.js +172 -0
- package/dist/api/runtime/checks/families/write/payload-string-survives.d.ts +9 -0
- package/dist/api/runtime/checks/families/write/payload-string-survives.js +135 -0
- package/dist/api/runtime/checks/families/write/records.d.ts +16 -0
- package/dist/api/runtime/checks/families/write/records.js +51 -0
- package/dist/api/runtime/checks/families/write/softdelete-absent-from-default-list.d.ts +6 -0
- package/dist/api/runtime/checks/families/write/softdelete-absent-from-default-list.js +56 -0
- package/dist/api/runtime/checks/families/write/update-persists-submitted-fields.d.ts +17 -0
- package/dist/api/runtime/checks/families/write/update-persists-submitted-fields.js +150 -0
- package/dist/api/runtime/checks/families/write/update-unique-conflict-rejected.d.ts +9 -0
- package/dist/api/runtime/checks/families/write/update-unique-conflict-rejected.js +140 -0
- package/dist/api/runtime/checks/isolation/scratch.d.ts +38 -0
- package/dist/api/runtime/checks/isolation/scratch.js +74 -0
- package/dist/api/runtime/checks/payloads/body.d.ts +36 -0
- package/dist/api/runtime/checks/payloads/body.js +122 -0
- package/dist/api/runtime/checks/payloads/create.d.ts +18 -0
- package/dist/api/runtime/checks/payloads/create.js +26 -0
- package/dist/api/runtime/checks/payloads/identity.d.ts +29 -0
- package/dist/api/runtime/checks/payloads/identity.js +81 -0
- package/dist/api/runtime/checks/payloads/item-schema.d.ts +20 -0
- package/dist/api/runtime/checks/payloads/item-schema.js +39 -0
- package/dist/api/runtime/checks/payloads/lanes.d.ts +12 -0
- package/dist/api/runtime/checks/payloads/lanes.js +10 -0
- package/dist/api/runtime/checks/payloads/stored-as.d.ts +7 -0
- package/dist/api/runtime/checks/payloads/stored-as.js +14 -0
- package/dist/api/runtime/checks/payloads/update-drops.d.ts +10 -0
- package/dist/api/runtime/checks/payloads/update-drops.js +16 -0
- package/dist/api/runtime/checks/planning/declarations.d.ts +7 -0
- package/dist/api/runtime/checks/planning/declarations.js +11 -0
- package/dist/api/runtime/checks/planning/refusal.d.ts +21 -0
- package/dist/api/runtime/checks/planning/refusal.js +39 -0
- package/dist/api/runtime/checks/planning/stand-down.d.ts +26 -0
- package/dist/api/runtime/checks/planning/stand-down.js +47 -0
- package/dist/api/runtime/checks/planning/subjects.d.ts +32 -0
- package/dist/api/runtime/checks/planning/subjects.js +51 -0
- package/dist/api/runtime/checks/query/capabilities.d.ts +66 -0
- package/dist/api/runtime/checks/query/capabilities.js +169 -0
- package/dist/api/runtime/checks/query/order.d.ts +56 -0
- package/dist/api/runtime/checks/query/order.js +145 -0
- package/dist/api/runtime/checks/registry.d.ts +3 -0
- package/dist/api/runtime/checks/registry.js +289 -0
- package/dist/api/runtime/checks/sets/compare.d.ts +76 -0
- package/dist/api/runtime/checks/sets/compare.js +148 -0
- package/dist/api/runtime/checks/sets/list.d.ts +44 -0
- package/dist/api/runtime/checks/sets/list.js +77 -0
- package/dist/api/runtime/checks/sets/read.d.ts +58 -0
- package/dist/api/runtime/checks/sets/read.js +196 -0
- package/dist/api/runtime/contract/calls.d.ts +7 -0
- package/dist/api/runtime/contract/calls.js +88 -0
- package/dist/api/runtime/contract/check.d.ts +13 -0
- package/dist/api/runtime/contract/check.js +19 -0
- package/dist/api/runtime/contract/deletes.d.ts +8 -0
- package/dist/api/runtime/contract/deletes.js +131 -0
- package/dist/api/runtime/contract/judge.d.ts +9 -0
- package/dist/api/runtime/contract/judge.js +47 -0
- package/dist/api/runtime/contract/made-by-run.d.ts +17 -0
- package/dist/api/runtime/contract/made-by-run.js +53 -0
- package/dist/api/runtime/contract/params.d.ts +26 -0
- package/dist/api/runtime/contract/params.js +73 -0
- package/dist/api/runtime/contract/request.d.ts +43 -0
- package/dist/api/runtime/contract/request.js +232 -0
- package/dist/api/runtime/contract/types.d.ts +90 -0
- package/dist/api/runtime/contract/types.js +2 -0
- package/dist/api/runtime/cookies/jar.d.ts +27 -0
- package/dist/api/runtime/cookies/jar.js +112 -0
- package/dist/api/runtime/cookies/redirect.d.ts +28 -0
- package/dist/api/runtime/cookies/redirect.js +40 -0
- package/dist/api/runtime/cookies/save-as.d.ts +30 -0
- package/dist/api/runtime/cookies/save-as.js +50 -0
- package/dist/api/runtime/cookies/set-cookie.d.ts +12 -0
- package/dist/api/runtime/cookies/set-cookie.js +83 -0
- package/dist/api/runtime/create-tracker.d.ts +41 -0
- package/dist/api/runtime/create-tracker.js +181 -0
- package/dist/api/runtime/created-id.d.ts +84 -0
- package/dist/api/runtime/created-id.js +162 -0
- package/dist/api/runtime/credential-records.d.ts +21 -0
- package/dist/api/runtime/credential-records.js +34 -0
- package/dist/api/runtime/disposable/after.d.ts +26 -0
- package/dist/api/runtime/disposable/after.js +96 -0
- package/dist/api/runtime/disposable/check.d.ts +21 -0
- package/dist/api/runtime/disposable/check.js +33 -0
- package/dist/api/runtime/disposable/lists.d.ts +13 -0
- package/dist/api/runtime/disposable/lists.js +47 -0
- package/dist/api/runtime/disposable/one.d.ts +15 -0
- package/dist/api/runtime/disposable/one.js +98 -0
- package/dist/api/runtime/disposable/run.d.ts +7 -0
- package/dist/api/runtime/disposable/run.js +54 -0
- package/dist/api/runtime/disposable/signup.d.ts +11 -0
- package/dist/api/runtime/disposable/signup.js +14 -0
- package/dist/api/runtime/disposable/types.d.ts +48 -0
- package/dist/api/runtime/disposable/types.js +2 -0
- package/dist/api/runtime/dummy.d.ts +23 -0
- package/dist/api/runtime/dummy.js +218 -0
- package/dist/api/runtime/effects/bind.d.ts +31 -0
- package/dist/api/runtime/effects/bind.js +98 -0
- package/dist/api/runtime/effects/cardinality.d.ts +27 -0
- package/dist/api/runtime/effects/cardinality.js +26 -0
- package/dist/api/runtime/effects/ids.d.ts +15 -0
- package/dist/api/runtime/effects/ids.js +95 -0
- package/dist/api/runtime/effects/pointer.d.ts +6 -0
- package/dist/api/runtime/effects/pointer.js +40 -0
- package/dist/api/runtime/effects/scope.d.ts +45 -0
- package/dist/api/runtime/effects/scope.js +87 -0
- package/dist/api/runtime/evidence.d.ts +27 -0
- package/dist/api/runtime/evidence.js +246 -0
- package/dist/api/runtime/exchange.d.ts +141 -0
- package/dist/api/runtime/exchange.js +96 -0
- package/dist/api/runtime/exchanges/blobs.d.ts +19 -0
- package/dist/api/runtime/exchanges/blobs.js +40 -0
- package/dist/api/runtime/exchanges/bytes.d.ts +6 -0
- package/dist/api/runtime/exchanges/bytes.js +21 -0
- package/dist/api/runtime/exchanges/files.d.ts +11 -0
- package/dist/api/runtime/exchanges/files.js +29 -0
- package/dist/api/runtime/exchanges/form-parts.d.ts +14 -0
- package/dist/api/runtime/exchanges/form-parts.js +19 -0
- package/dist/api/runtime/exchanges/journal.d.ts +68 -0
- package/dist/api/runtime/exchanges/journal.js +144 -0
- package/dist/api/runtime/exchanges/media.d.ts +5 -0
- package/dist/api/runtime/exchanges/media.js +23 -0
- package/dist/api/runtime/exchanges/persist.d.ts +6 -0
- package/dist/api/runtime/exchanges/persist.js +84 -0
- package/dist/api/runtime/exit.d.ts +59 -0
- package/dist/api/runtime/exit.js +94 -0
- package/dist/api/runtime/feature-gate.d.ts +14 -0
- package/dist/api/runtime/feature-gate.js +47 -0
- package/dist/api/runtime/fence.d.ts +29 -0
- package/dist/api/runtime/fence.js +39 -0
- package/dist/api/runtime/fill-path.d.ts +8 -0
- package/dist/api/runtime/fill-path.js +16 -0
- package/dist/api/runtime/finding-key.d.ts +12 -0
- package/dist/api/runtime/finding-key.js +33 -0
- package/dist/api/runtime/finding.d.ts +142 -0
- package/dist/api/runtime/finding.js +151 -0
- package/dist/api/runtime/fixture.d.ts +87 -0
- package/dist/api/runtime/fixture.js +197 -0
- package/dist/api/runtime/generate/algebra.d.ts +14 -0
- package/dist/api/runtime/generate/algebra.js +112 -0
- package/dist/api/runtime/generate/array.d.ts +4 -0
- package/dist/api/runtime/generate/array.js +45 -0
- package/dist/api/runtime/generate/branches.d.ts +12 -0
- package/dist/api/runtime/generate/branches.js +63 -0
- package/dist/api/runtime/generate/expand.d.ts +3 -0
- package/dist/api/runtime/generate/expand.js +66 -0
- package/dist/api/runtime/generate/format.d.ts +7 -0
- package/dist/api/runtime/generate/format.js +61 -0
- package/dist/api/runtime/generate/generate.d.ts +18 -0
- package/dist/api/runtime/generate/generate.js +43 -0
- package/dist/api/runtime/generate/identifiers.d.ts +14 -0
- package/dist/api/runtime/generate/identifiers.js +64 -0
- package/dist/api/runtime/generate/instance.d.ts +4 -0
- package/dist/api/runtime/generate/instance.js +59 -0
- package/dist/api/runtime/generate/nonce.d.ts +3 -0
- package/dist/api/runtime/generate/nonce.js +8 -0
- package/dist/api/runtime/generate/number.d.ts +5 -0
- package/dist/api/runtime/generate/number.js +64 -0
- package/dist/api/runtime/generate/object.d.ts +4 -0
- package/dist/api/runtime/generate/object.js +31 -0
- package/dist/api/runtime/generate/pattern.d.ts +9 -0
- package/dist/api/runtime/generate/pattern.js +46 -0
- package/dist/api/runtime/generate/probes.d.ts +9 -0
- package/dist/api/runtime/generate/probes.js +36 -0
- package/dist/api/runtime/generate/string-constraints.d.ts +19 -0
- package/dist/api/runtime/generate/string-constraints.js +48 -0
- package/dist/api/runtime/generate/string.d.ts +5 -0
- package/dist/api/runtime/generate/string.js +80 -0
- package/dist/api/runtime/generate/text.d.ts +6 -0
- package/dist/api/runtime/generate/text.js +20 -0
- package/dist/api/runtime/generate/types.d.ts +45 -0
- package/dist/api/runtime/generate/types.js +3 -0
- package/dist/api/runtime/generate/unconstructible.d.ts +7 -0
- package/dist/api/runtime/generate/unconstructible.js +11 -0
- package/dist/api/runtime/grades.d.ts +40 -0
- package/dist/api/runtime/grades.js +47 -0
- package/dist/api/runtime/headers.d.ts +6 -0
- package/dist/api/runtime/headers.js +16 -0
- package/dist/api/runtime/inferred-create.d.ts +31 -0
- package/dist/api/runtime/inferred-create.js +99 -0
- package/dist/api/runtime/input.d.ts +13 -0
- package/dist/api/runtime/input.js +47 -0
- package/dist/api/runtime/network/fetch.d.ts +19 -0
- package/dist/api/runtime/network/fetch.js +86 -0
- package/dist/api/runtime/network/gate.d.ts +23 -0
- package/dist/api/runtime/network/gate.js +63 -0
- package/dist/api/runtime/network/interfaces.d.ts +6 -0
- package/dist/api/runtime/network/interfaces.js +17 -0
- package/dist/api/runtime/network/policy.d.ts +17 -0
- package/dist/api/runtime/network/policy.js +25 -0
- package/dist/api/runtime/network/probe.d.ts +8 -0
- package/dist/api/runtime/network/probe.js +29 -0
- package/dist/api/runtime/no-security.d.ts +4 -0
- package/dist/api/runtime/no-security.js +9 -0
- package/dist/api/runtime/nonexistent-identity.d.ts +9 -0
- package/dist/api/runtime/nonexistent-identity.js +18 -0
- package/dist/api/runtime/one-shot.d.ts +27 -0
- package/dist/api/runtime/one-shot.js +76 -0
- package/dist/api/runtime/own-record.d.ts +76 -0
- package/dist/api/runtime/own-record.js +188 -0
- package/dist/api/runtime/payloads.d.ts +25 -0
- package/dist/api/runtime/payloads.js +252 -0
- package/dist/api/runtime/poll.d.ts +29 -0
- package/dist/api/runtime/poll.js +59 -0
- package/dist/api/runtime/principals.d.ts +66 -0
- package/dist/api/runtime/principals.js +133 -0
- package/dist/api/runtime/privileged-create.d.ts +13 -0
- package/dist/api/runtime/privileged-create.js +21 -0
- package/dist/api/runtime/probe-judging.d.ts +9 -0
- package/dist/api/runtime/probe-judging.js +26 -0
- package/dist/api/runtime/profile.d.ts +36 -0
- package/dist/api/runtime/profile.js +63 -0
- package/dist/api/runtime/progress/columns.d.ts +14 -0
- package/dist/api/runtime/progress/columns.js +49 -0
- package/dist/api/runtime/progress/fields.d.ts +27 -0
- package/dist/api/runtime/progress/fields.js +78 -0
- package/dist/api/runtime/progress/format.d.ts +6 -0
- package/dist/api/runtime/progress/format.js +96 -0
- package/dist/api/runtime/progress/pump.d.ts +16 -0
- package/dist/api/runtime/progress/pump.js +69 -0
- package/dist/api/runtime/progress/types.d.ts +39 -0
- package/dist/api/runtime/progress/types.js +3 -0
- package/dist/api/runtime/proven-id.d.ts +31 -0
- package/dist/api/runtime/proven-id.js +38 -0
- package/dist/api/runtime/query-capabilities.d.ts +27 -0
- package/dist/api/runtime/query-capabilities.js +69 -0
- package/dist/api/runtime/query.d.ts +11 -0
- package/dist/api/runtime/query.js +21 -0
- package/dist/api/runtime/rate-limit/bucket.d.ts +21 -0
- package/dist/api/runtime/rate-limit/bucket.js +54 -0
- package/dist/api/runtime/rate-limit/limiter.d.ts +52 -0
- package/dist/api/runtime/rate-limit/limiter.js +103 -0
- package/dist/api/runtime/rate-limit/match.d.ts +26 -0
- package/dist/api/runtime/rate-limit/match.js +55 -0
- package/dist/api/runtime/rate-limit/retry-after.d.ts +40 -0
- package/dist/api/runtime/rate-limit/retry-after.js +81 -0
- package/dist/api/runtime/rate-limit/rules.d.ts +35 -0
- package/dist/api/runtime/rate-limit/rules.js +61 -0
- package/dist/api/runtime/root-read.d.ts +22 -0
- package/dist/api/runtime/root-read.js +78 -0
- package/dist/api/runtime/run/account-hook.d.ts +19 -0
- package/dist/api/runtime/run/account-hook.js +67 -0
- package/dist/api/runtime/run/accounts.d.ts +22 -0
- package/dist/api/runtime/run/accounts.js +215 -0
- package/dist/api/runtime/run/acting.d.ts +5 -0
- package/dist/api/runtime/run/acting.js +36 -0
- package/dist/api/runtime/run/check-accounts.d.ts +5 -0
- package/dist/api/runtime/run/check-accounts.js +28 -0
- package/dist/api/runtime/run/client-setup.d.ts +8 -0
- package/dist/api/runtime/run/client-setup.js +117 -0
- package/dist/api/runtime/run/context.d.ts +141 -0
- package/dist/api/runtime/run/context.js +2 -0
- package/dist/api/runtime/run/contract-floor.d.ts +7 -0
- package/dist/api/runtime/run/contract-floor.js +51 -0
- package/dist/api/runtime/run/credential-records.d.ts +12 -0
- package/dist/api/runtime/run/credential-records.js +91 -0
- package/dist/api/runtime/run/disposable.d.ts +14 -0
- package/dist/api/runtime/run/disposable.js +90 -0
- package/dist/api/runtime/run/entity/actors.d.ts +5 -0
- package/dist/api/runtime/run/entity/actors.js +55 -0
- package/dist/api/runtime/run/entity/capabilities.d.ts +19 -0
- package/dist/api/runtime/run/entity/capabilities.js +32 -0
- package/dist/api/runtime/run/entity/check-context.d.ts +5 -0
- package/dist/api/runtime/run/entity/check-context.js +108 -0
- package/dist/api/runtime/run/entity/check-loop.d.ts +16 -0
- package/dist/api/runtime/run/entity/check-loop.js +118 -0
- package/dist/api/runtime/run/entity/direct.d.ts +8 -0
- package/dist/api/runtime/run/entity/direct.js +19 -0
- package/dist/api/runtime/run/entity/fallback.d.ts +25 -0
- package/dist/api/runtime/run/entity/fallback.js +55 -0
- package/dist/api/runtime/run/entity/root-read.d.ts +5 -0
- package/dist/api/runtime/run/entity/root-read.js +39 -0
- package/dist/api/runtime/run/entity/run-check.d.ts +45 -0
- package/dist/api/runtime/run/entity/run-check.js +173 -0
- package/dist/api/runtime/run/entity/seed-cohort.d.ts +11 -0
- package/dist/api/runtime/run/entity/seed-cohort.js +136 -0
- package/dist/api/runtime/run/entity/seed-failure.d.ts +9 -0
- package/dist/api/runtime/run/entity/seed-failure.js +92 -0
- package/dist/api/runtime/run/entity/seed.d.ts +17 -0
- package/dist/api/runtime/run/entity/seed.js +65 -0
- package/dist/api/runtime/run/entity/self.d.ts +5 -0
- package/dist/api/runtime/run/entity/self.js +24 -0
- package/dist/api/runtime/run/entity/state.d.ts +59 -0
- package/dist/api/runtime/run/entity/state.js +11 -0
- package/dist/api/runtime/run/entity/test-entity.d.ts +17 -0
- package/dist/api/runtime/run/entity/test-entity.js +91 -0
- package/dist/api/runtime/run/errors.d.ts +8 -0
- package/dist/api/runtime/run/errors.js +11 -0
- package/dist/api/runtime/run/exclusion.d.ts +3 -0
- package/dist/api/runtime/run/exclusion.js +29 -0
- package/dist/api/runtime/run/floor-credentials.d.ts +15 -0
- package/dist/api/runtime/run/floor-credentials.js +91 -0
- package/dist/api/runtime/run/fresh.d.ts +31 -0
- package/dist/api/runtime/run/fresh.js +87 -0
- package/dist/api/runtime/run/identity.d.ts +9 -0
- package/dist/api/runtime/run/identity.js +28 -0
- package/dist/api/runtime/run/index.d.ts +4 -0
- package/dist/api/runtime/run/index.js +3 -0
- package/dist/api/runtime/run/interrupt.d.ts +6 -0
- package/dist/api/runtime/run/interrupt.js +15 -0
- package/dist/api/runtime/run/lanes.d.ts +23 -0
- package/dist/api/runtime/run/lanes.js +147 -0
- package/dist/api/runtime/run/load.d.ts +17 -0
- package/dist/api/runtime/run/load.js +95 -0
- package/dist/api/runtime/run/network.d.ts +33 -0
- package/dist/api/runtime/run/network.js +82 -0
- package/dist/api/runtime/run/origins.d.ts +36 -0
- package/dist/api/runtime/run/origins.js +146 -0
- package/dist/api/runtime/run/own-records.d.ts +5 -0
- package/dist/api/runtime/run/own-records.js +41 -0
- package/dist/api/runtime/run/peer.d.ts +9 -0
- package/dist/api/runtime/run/peer.js +10 -0
- package/dist/api/runtime/run/pipeline.d.ts +19 -0
- package/dist/api/runtime/run/pipeline.js +96 -0
- package/dist/api/runtime/run/principals.d.ts +19 -0
- package/dist/api/runtime/run/principals.js +134 -0
- package/dist/api/runtime/run/probe-credentials.d.ts +9 -0
- package/dist/api/runtime/run/probe-credentials.js +68 -0
- package/dist/api/runtime/run/progress.d.ts +49 -0
- package/dist/api/runtime/run/progress.js +128 -0
- package/dist/api/runtime/run/public-gets.d.ts +4 -0
- package/dist/api/runtime/run/public-gets.js +14 -0
- package/dist/api/runtime/run/record-scope.d.ts +4 -0
- package/dist/api/runtime/run/record-scope.js +17 -0
- package/dist/api/runtime/run/result.d.ts +22 -0
- package/dist/api/runtime/run/result.js +98 -0
- package/dist/api/runtime/run/scenarios.d.ts +4 -0
- package/dist/api/runtime/run/scenarios.js +50 -0
- package/dist/api/runtime/run/scope-plan.d.ts +7 -0
- package/dist/api/runtime/run/scope-plan.js +64 -0
- package/dist/api/runtime/run/security-target.d.ts +39 -0
- package/dist/api/runtime/run/security-target.js +139 -0
- package/dist/api/runtime/run/security-throwaway.d.ts +27 -0
- package/dist/api/runtime/run/security-throwaway.js +126 -0
- package/dist/api/runtime/run/security.d.ts +11 -0
- package/dist/api/runtime/run/security.js +172 -0
- package/dist/api/runtime/run/server-errors.d.ts +4 -0
- package/dist/api/runtime/run/server-errors.js +15 -0
- package/dist/api/runtime/run/state.d.ts +58 -0
- package/dist/api/runtime/run/state.js +33 -0
- package/dist/api/runtime/run/store.d.ts +24 -0
- package/dist/api/runtime/run/store.js +106 -0
- package/dist/api/runtime/run/target-version.d.ts +7 -0
- package/dist/api/runtime/run/target-version.js +16 -0
- package/dist/api/runtime/run/teardown.d.ts +31 -0
- package/dist/api/runtime/run/teardown.js +146 -0
- package/dist/api/runtime/run/transcript-options.d.ts +4 -0
- package/dist/api/runtime/run/transcript-options.js +35 -0
- package/dist/api/runtime/run/types.d.ts +238 -0
- package/dist/api/runtime/run/types.js +2 -0
- package/dist/api/runtime/runs.d.ts +33 -0
- package/dist/api/runtime/runs.js +80 -0
- package/dist/api/runtime/scenario/failure.d.ts +19 -0
- package/dist/api/runtime/scenario/failure.js +28 -0
- package/dist/api/runtime/scenario/grade.d.ts +20 -0
- package/dist/api/runtime/scenario/grade.js +51 -0
- package/dist/api/runtime/scenario/lineage.d.ts +40 -0
- package/dist/api/runtime/scenario/lineage.js +55 -0
- package/dist/api/runtime/scenario/poll.d.ts +10 -0
- package/dist/api/runtime/scenario/poll.js +20 -0
- package/dist/api/runtime/scenario/record.d.ts +20 -0
- package/dist/api/runtime/scenario/record.js +100 -0
- package/dist/api/runtime/scenario/request.d.ts +8 -0
- package/dist/api/runtime/scenario/request.js +89 -0
- package/dist/api/runtime/scenario/run.d.ts +7 -0
- package/dist/api/runtime/scenario/run.js +90 -0
- package/dist/api/runtime/scenario/state.d.ts +10 -0
- package/dist/api/runtime/scenario/state.js +40 -0
- package/dist/api/runtime/scenario/step.d.ts +8 -0
- package/dist/api/runtime/scenario/step.js +51 -0
- package/dist/api/runtime/scenario/types.d.ts +63 -0
- package/dist/api/runtime/scenario/types.js +2 -0
- package/dist/api/runtime/scenario/validate.d.ts +17 -0
- package/dist/api/runtime/scenario/validate.js +64 -0
- package/dist/api/runtime/scenario/want.d.ts +21 -0
- package/dist/api/runtime/scenario/want.js +59 -0
- package/dist/api/runtime/scope/entities.d.ts +44 -0
- package/dist/api/runtime/scope/entities.js +158 -0
- package/dist/api/runtime/scope/grading.d.ts +20 -0
- package/dist/api/runtime/scope/grading.js +42 -0
- package/dist/api/runtime/scope/match.d.ts +9 -0
- package/dist/api/runtime/scope/match.js +22 -0
- package/dist/api/runtime/scope/operation-for.d.ts +5 -0
- package/dist/api/runtime/scope/operation-for.js +29 -0
- package/dist/api/runtime/scope/plan.d.ts +10 -0
- package/dist/api/runtime/scope/plan.js +81 -0
- package/dist/api/runtime/scope/reason.d.ts +13 -0
- package/dist/api/runtime/scope/reason.js +37 -0
- package/dist/api/runtime/scope/report.d.ts +3 -0
- package/dist/api/runtime/scope/report.js +68 -0
- package/dist/api/runtime/scope/scope-error.d.ts +5 -0
- package/dist/api/runtime/scope/scope-error.js +5 -0
- package/dist/api/runtime/scope/sufficiency.d.ts +8 -0
- package/dist/api/runtime/scope/sufficiency.js +19 -0
- package/dist/api/runtime/scope/target.d.ts +4 -0
- package/dist/api/runtime/scope/target.js +62 -0
- package/dist/api/runtime/scope/targeting.d.ts +19 -0
- package/dist/api/runtime/scope/targeting.js +82 -0
- package/dist/api/runtime/scope/types.d.ts +149 -0
- package/dist/api/runtime/scope/types.js +11 -0
- package/dist/api/runtime/seed-error.d.ts +23 -0
- package/dist/api/runtime/seed-error.js +19 -0
- package/dist/api/runtime/self/actions.d.ts +12 -0
- package/dist/api/runtime/self/actions.js +59 -0
- package/dist/api/runtime/self/check.d.ts +3 -0
- package/dist/api/runtime/self/check.js +26 -0
- package/dist/api/runtime/self/create.d.ts +26 -0
- package/dist/api/runtime/self/create.js +96 -0
- package/dist/api/runtime/self/guard.d.ts +16 -0
- package/dist/api/runtime/self/guard.js +56 -0
- package/dist/api/runtime/self/identity.d.ts +4 -0
- package/dist/api/runtime/self/identity.js +94 -0
- package/dist/api/runtime/self/input.d.ts +19 -0
- package/dist/api/runtime/self/input.js +2 -0
- package/dist/api/runtime/self/locate.d.ts +10 -0
- package/dist/api/runtime/self/locate.js +31 -0
- package/dist/api/runtime/self/operations.d.ts +15 -0
- package/dist/api/runtime/self/operations.js +34 -0
- package/dist/api/runtime/self/probe-field.d.ts +10 -0
- package/dist/api/runtime/self/probe-field.js +88 -0
- package/dist/api/runtime/self/requests.d.ts +22 -0
- package/dist/api/runtime/self/requests.js +27 -0
- package/dist/api/runtime/self/verdicts.d.ts +41 -0
- package/dist/api/runtime/self/verdicts.js +95 -0
- package/dist/api/runtime/server-errors.d.ts +29 -0
- package/dist/api/runtime/server-errors.js +74 -0
- package/dist/api/runtime/sse.d.ts +38 -0
- package/dist/api/runtime/sse.js +115 -0
- package/dist/api/runtime/steps/engine.d.ts +27 -0
- package/dist/api/runtime/steps/engine.js +134 -0
- package/dist/api/runtime/steps/interpolate.d.ts +3 -0
- package/dist/api/runtime/steps/interpolate.js +30 -0
- package/dist/api/runtime/steps/jwt.d.ts +3 -0
- package/dist/api/runtime/steps/jwt.js +13 -0
- package/dist/api/runtime/steps/out-of-band.d.ts +27 -0
- package/dist/api/runtime/steps/out-of-band.js +53 -0
- package/dist/api/runtime/steps/request.d.ts +39 -0
- package/dist/api/runtime/steps/request.js +117 -0
- package/dist/api/runtime/steps/runner.d.ts +5 -0
- package/dist/api/runtime/steps/runner.js +19 -0
- package/dist/api/runtime/target-version.d.ts +34 -0
- package/dist/api/runtime/target-version.js +68 -0
- package/dist/api/runtime/teardown/ledger.d.ts +68 -0
- package/dist/api/runtime/teardown/ledger.js +124 -0
- package/dist/api/runtime/teardown/never-seen.d.ts +10 -0
- package/dist/api/runtime/teardown/never-seen.js +27 -0
- package/dist/api/runtime/teardown/remove.d.ts +27 -0
- package/dist/api/runtime/teardown/remove.js +110 -0
- package/dist/api/runtime/teardown/render.d.ts +7 -0
- package/dist/api/runtime/teardown/render.js +51 -0
- package/dist/api/runtime/teardown/routes.d.ts +26 -0
- package/dist/api/runtime/teardown/routes.js +83 -0
- package/dist/api/runtime/teardown/still-listed.d.ts +29 -0
- package/dist/api/runtime/teardown/still-listed.js +116 -0
- package/dist/api/runtime/teardown/types.d.ts +76 -0
- package/dist/api/runtime/teardown/types.js +2 -0
- package/dist/api/runtime/teardown/unwind.d.ts +20 -0
- package/dist/api/runtime/teardown/unwind.js +83 -0
- package/dist/api/runtime/teardown/verify-gone.d.ts +21 -0
- package/dist/api/runtime/teardown/verify-gone.js +87 -0
- package/dist/api/runtime/teardown/verify-hook.d.ts +20 -0
- package/dist/api/runtime/teardown/verify-hook.js +61 -0
- package/dist/api/runtime/transcript/compact-request.d.ts +5 -0
- package/dist/api/runtime/transcript/compact-request.js +65 -0
- package/dist/api/runtime/transcript/compact-response.d.ts +4 -0
- package/dist/api/runtime/transcript/compact-response.js +70 -0
- package/dist/api/runtime/transcript/live.d.ts +13 -0
- package/dist/api/runtime/transcript/live.js +21 -0
- package/dist/api/runtime/transcript/payload.d.ts +9 -0
- package/dist/api/runtime/transcript/payload.js +45 -0
- package/dist/api/runtime/transcript/release.d.ts +6 -0
- package/dist/api/runtime/transcript/release.js +15 -0
- package/dist/api/runtime/transcript/spool.d.ts +42 -0
- package/dist/api/runtime/transcript/spool.js +102 -0
- package/dist/api/runtime/transcript/sse-payload.d.ts +5 -0
- package/dist/api/runtime/transcript/sse-payload.js +65 -0
- package/dist/api/runtime/transcript/types.d.ts +22 -0
- package/dist/api/runtime/transcript/types.js +3 -0
- package/dist/api/runtime/unique.d.ts +80 -0
- package/dist/api/runtime/unique.js +169 -0
- package/dist/api/runtime/upload-each.d.ts +14 -0
- package/dist/api/runtime/upload-each.js +69 -0
- package/dist/api/runtime/upload.d.ts +58 -0
- package/dist/api/runtime/upload.js +241 -0
- package/dist/api/runtime/validate.d.ts +41 -0
- package/dist/api/runtime/validate.js +145 -0
- package/dist/api/runtime/wait.d.ts +48 -0
- package/dist/api/runtime/wait.js +105 -0
- package/dist/api/runtime/world/adopt.d.ts +6 -0
- package/dist/api/runtime/world/adopt.js +18 -0
- package/dist/api/runtime/world/ancestor-create.d.ts +13 -0
- package/dist/api/runtime/world/ancestor-create.js +129 -0
- package/dist/api/runtime/world/client-identity.d.ts +42 -0
- package/dist/api/runtime/world/client-identity.js +77 -0
- package/dist/api/runtime/world/cohort.d.ts +47 -0
- package/dist/api/runtime/world/cohort.js +123 -0
- package/dist/api/runtime/world/confirm.d.ts +33 -0
- package/dist/api/runtime/world/confirm.js +57 -0
- package/dist/api/runtime/world/created-record.d.ts +29 -0
- package/dist/api/runtime/world/created-record.js +57 -0
- package/dist/api/runtime/world/list-existing.d.ts +12 -0
- package/dist/api/runtime/world/list-existing.js +29 -0
- package/dist/api/runtime/world/path-scope.d.ts +16 -0
- package/dist/api/runtime/world/path-scope.js +98 -0
- package/dist/api/runtime/world/plan-limit.d.ts +8 -0
- package/dist/api/runtime/world/plan-limit.js +41 -0
- package/dist/api/runtime/world/probe-fixtures.d.ts +7 -0
- package/dist/api/runtime/world/probe-fixtures.js +23 -0
- package/dist/api/runtime/world/read-back.d.ts +61 -0
- package/dist/api/runtime/world/read-back.js +120 -0
- package/dist/api/runtime/world/records.d.ts +29 -0
- package/dist/api/runtime/world/records.js +45 -0
- package/dist/api/runtime/world/schema.d.ts +7 -0
- package/dist/api/runtime/world/schema.js +21 -0
- package/dist/api/runtime/world/seed-cohort.d.ts +8 -0
- package/dist/api/runtime/world/seed-cohort.js +193 -0
- package/dist/api/runtime/world/types.d.ts +118 -0
- package/dist/api/runtime/world/types.js +3 -0
- package/dist/api/runtime/world/upload-context.d.ts +5 -0
- package/dist/api/runtime/world/upload-context.js +7 -0
- package/dist/api/security/credential-names.d.ts +7 -0
- package/dist/api/security/credential-names.js +30 -0
- package/dist/api/security/issued-secrets.d.ts +9 -0
- package/dist/api/security/issued-secrets.js +50 -0
- package/dist/api/security/redact.d.ts +51 -0
- package/dist/api/security/redact.js +222 -0
- package/dist/api/security/strip.d.ts +7 -0
- package/dist/api/security/strip.js +18 -0
- package/dist/api/spec/allow.d.ts +28 -0
- package/dist/api/spec/allow.js +83 -0
- package/dist/api/spec/collection/cursor.d.ts +7 -0
- package/dist/api/spec/collection/cursor.js +11 -0
- package/dist/api/spec/collection/effective.d.ts +9 -0
- package/dist/api/spec/collection/effective.js +49 -0
- package/dist/api/spec/collection/identity.d.ts +13 -0
- package/dist/api/spec/collection/identity.js +43 -0
- package/dist/api/spec/collection/request.d.ts +19 -0
- package/dist/api/spec/collection/request.js +67 -0
- package/dist/api/spec/collection/responses.d.ts +6 -0
- package/dist/api/spec/collection/responses.js +32 -0
- package/dist/api/spec/collection/shape.d.ts +47 -0
- package/dist/api/spec/collection/shape.js +123 -0
- package/dist/api/spec/configured-model.d.ts +22 -0
- package/dist/api/spec/configured-model.js +58 -0
- package/dist/api/spec/conventions/derive.d.ts +26 -0
- package/dist/api/spec/conventions/derive.js +125 -0
- package/dist/api/spec/conventions/envelope-names.d.ts +21 -0
- package/dist/api/spec/conventions/envelope-names.js +25 -0
- package/dist/api/spec/conventions/filter.d.ts +31 -0
- package/dist/api/spec/conventions/filter.js +51 -0
- package/dist/api/spec/conventions/infer.d.ts +22 -0
- package/dist/api/spec/conventions/infer.js +59 -0
- package/dist/api/spec/conventions/query-params.d.ts +27 -0
- package/dist/api/spec/conventions/query-params.js +44 -0
- package/dist/api/spec/conventions/roles.d.ts +28 -0
- package/dist/api/spec/conventions/roles.js +153 -0
- package/dist/api/spec/conventions/select.d.ts +9 -0
- package/dist/api/spec/conventions/select.js +19 -0
- package/dist/api/spec/conventions/sort.d.ts +14 -0
- package/dist/api/spec/conventions/sort.js +25 -0
- package/dist/api/spec/conventions/types.d.ts +106 -0
- package/dist/api/spec/conventions/types.js +15 -0
- package/dist/api/spec/endpoints.d.ts +4 -0
- package/dist/api/spec/endpoints.js +42 -0
- package/dist/api/spec/extensions/async.d.ts +24 -0
- package/dist/api/spec/extensions/async.js +38 -0
- package/dist/api/spec/extensions/consistency.d.ts +18 -0
- package/dist/api/spec/extensions/consistency.js +27 -0
- package/dist/api/spec/extensions/effects.d.ts +13 -0
- package/dist/api/spec/extensions/effects.js +36 -0
- package/dist/api/spec/extensions/entity.d.ts +28 -0
- package/dist/api/spec/extensions/entity.js +103 -0
- package/dist/api/spec/extensions/flags.d.ts +30 -0
- package/dist/api/spec/extensions/flags.js +59 -0
- package/dist/api/spec/extensions/gaps.d.ts +11 -0
- package/dist/api/spec/extensions/gaps.js +8 -0
- package/dist/api/spec/extensions/invite.d.ts +33 -0
- package/dist/api/spec/extensions/invite.js +30 -0
- package/dist/api/spec/extensions/privileged.d.ts +27 -0
- package/dist/api/spec/extensions/privileged.js +84 -0
- package/dist/api/spec/extensions/query-tag.d.ts +36 -0
- package/dist/api/spec/extensions/query-tag.js +92 -0
- package/dist/api/spec/extensions/routes.d.ts +5 -0
- package/dist/api/spec/extensions/routes.js +19 -0
- package/dist/api/spec/extensions/tag.d.ts +16 -0
- package/dist/api/spec/extensions/tag.js +22 -0
- package/dist/api/spec/extensions/tenant.d.ts +9 -0
- package/dist/api/spec/extensions/tenant.js +35 -0
- package/dist/api/spec/extensions/unique.d.ts +20 -0
- package/dist/api/spec/extensions/unique.js +63 -0
- package/dist/api/spec/grammar-overrides.d.ts +23 -0
- package/dist/api/spec/grammar-overrides.js +70 -0
- package/dist/api/spec/graph/build.d.ts +18 -0
- package/dist/api/spec/graph/build.js +89 -0
- package/dist/api/spec/graph/dangling.d.ts +19 -0
- package/dist/api/spec/graph/dangling.js +94 -0
- package/dist/api/spec/graph/demote.d.ts +14 -0
- package/dist/api/spec/graph/demote.js +94 -0
- package/dist/api/spec/graph/entities.d.ts +7 -0
- package/dist/api/spec/graph/entities.js +77 -0
- package/dist/api/spec/graph/identity.d.ts +19 -0
- package/dist/api/spec/graph/identity.js +14 -0
- package/dist/api/spec/graph/naming.d.ts +9 -0
- package/dist/api/spec/graph/naming.js +71 -0
- package/dist/api/spec/graph/operation.d.ts +16 -0
- package/dist/api/spec/graph/operation.js +176 -0
- package/dist/api/spec/graph/paging.d.ts +16 -0
- package/dist/api/spec/graph/paging.js +23 -0
- package/dist/api/spec/graph/parameters.d.ts +46 -0
- package/dist/api/spec/graph/parameters.js +119 -0
- package/dist/api/spec/graph/resolver.d.ts +25 -0
- package/dist/api/spec/graph/resolver.js +38 -0
- package/dist/api/spec/graph/roots.d.ts +32 -0
- package/dist/api/spec/graph/roots.js +89 -0
- package/dist/api/spec/graph/segments.d.ts +10 -0
- package/dist/api/spec/graph/segments.js +19 -0
- package/dist/api/spec/graph/statuses.d.ts +7 -0
- package/dist/api/spec/graph/statuses.js +26 -0
- package/dist/api/spec/graph/surface.d.ts +21 -0
- package/dist/api/spec/graph/surface.js +59 -0
- package/dist/api/spec/graph/types.d.ts +162 -0
- package/dist/api/spec/graph/types.js +3 -0
- package/dist/api/spec/graph/unmodeled.d.ts +18 -0
- package/dist/api/spec/graph/unmodeled.js +65 -0
- package/dist/api/spec/load/bundle.d.ts +16 -0
- package/dist/api/spec/load/bundle.js +112 -0
- package/dist/api/spec/load/defs.d.ts +7 -0
- package/dist/api/spec/load/defs.js +9 -0
- package/dist/api/spec/load/dereference.d.ts +23 -0
- package/dist/api/spec/load/dereference.js +55 -0
- package/dist/api/spec/load/parse.d.ts +16 -0
- package/dist/api/spec/load/parse.js +76 -0
- package/dist/api/spec/load/pointer.d.ts +6 -0
- package/dist/api/spec/load/pointer.js +24 -0
- package/dist/api/spec/load/source.d.ts +27 -0
- package/dist/api/spec/load/source.js +58 -0
- package/dist/api/spec/load/version.d.ts +14 -0
- package/dist/api/spec/load/version.js +16 -0
- package/dist/api/spec/load/walk.d.ts +44 -0
- package/dist/api/spec/load/walk.js +162 -0
- package/dist/api/spec/methods.d.ts +31 -0
- package/dist/api/spec/methods.js +37 -0
- package/dist/api/spec/operation-name.d.ts +23 -0
- package/dist/api/spec/operation-name.js +46 -0
- package/dist/api/spec/overlay.d.ts +18 -0
- package/dist/api/spec/overlay.js +72 -0
- package/dist/api/spec/prepare.d.ts +18 -0
- package/dist/api/spec/prepare.js +16 -0
- package/dist/api/spec/query/catalog-layers.d.ts +10 -0
- package/dist/api/spec/query/catalog-layers.js +80 -0
- package/dist/api/spec/query/effective.d.ts +68 -0
- package/dist/api/spec/query/effective.js +9 -0
- package/dist/api/spec/query/field-ops.d.ts +10 -0
- package/dist/api/spec/query/field-ops.js +39 -0
- package/dist/api/spec/query/harvest.d.ts +14 -0
- package/dist/api/spec/query/harvest.js +29 -0
- package/dist/api/spec/query/hook.d.ts +8 -0
- package/dist/api/spec/query/hook.js +46 -0
- package/dist/api/spec/query/infer-type.d.ts +6 -0
- package/dist/api/spec/query/infer-type.js +34 -0
- package/dist/api/spec/query/json-path.d.ts +6 -0
- package/dist/api/spec/query/json-path.js +87 -0
- package/dist/api/spec/query/merge.d.ts +9 -0
- package/dist/api/spec/query/merge.js +118 -0
- package/dist/api/spec/query/ops.d.ts +14 -0
- package/dist/api/spec/query/ops.js +33 -0
- package/dist/api/spec/query/parse-blocks.d.ts +13 -0
- package/dist/api/spec/query/parse-blocks.js +103 -0
- package/dist/api/spec/query/parse-catalog.d.ts +11 -0
- package/dist/api/spec/query/parse-catalog.js +97 -0
- package/dist/api/spec/query/parse-fields.d.ts +12 -0
- package/dist/api/spec/query/parse-fields.js +54 -0
- package/dist/api/spec/query/sendable.d.ts +60 -0
- package/dist/api/spec/query/sendable.js +113 -0
- package/dist/api/spec/query/tag.d.ts +36 -0
- package/dist/api/spec/query/tag.js +3 -0
- package/dist/api/spec/query/union.d.ts +7 -0
- package/dist/api/spec/query/union.js +22 -0
- package/dist/api/spec/render/filter-combine.d.ts +17 -0
- package/dist/api/spec/render/filter-combine.js +62 -0
- package/dist/api/spec/render/filter-describe.d.ts +5 -0
- package/dist/api/spec/render/filter-describe.js +29 -0
- package/dist/api/spec/render/filter-parse-steps.d.ts +55 -0
- package/dist/api/spec/render/filter-parse-steps.js +155 -0
- package/dist/api/spec/render/filter-parse.d.ts +8 -0
- package/dist/api/spec/render/filter-parse.js +77 -0
- package/dist/api/spec/render/filter-presets.d.ts +6 -0
- package/dist/api/spec/render/filter-presets.js +55 -0
- package/dist/api/spec/render/filter-probe.d.ts +24 -0
- package/dist/api/spec/render/filter-probe.js +57 -0
- package/dist/api/spec/render/filter-term.d.ts +17 -0
- package/dist/api/spec/render/filter-term.js +100 -0
- package/dist/api/spec/render/filter-types.d.ts +77 -0
- package/dist/api/spec/render/filter-types.js +10 -0
- package/dist/api/spec/render/sort-parse.d.ts +14 -0
- package/dist/api/spec/render/sort-parse.js +56 -0
- package/dist/api/spec/render/sort.d.ts +48 -0
- package/dist/api/spec/render/sort.js +45 -0
- package/dist/api/spec/routes.d.ts +16 -0
- package/dist/api/spec/routes.js +48 -0
- package/dist/api/spec/schema.d.ts +36 -0
- package/dist/api/spec/schema.js +265 -0
- package/dist/api/spec/security/placement.d.ts +11 -0
- package/dist/api/spec/security/placement.js +16 -0
- package/dist/api/spec/security/requirements.d.ts +19 -0
- package/dist/api/spec/security/requirements.js +21 -0
- package/dist/api/spec/security/schemes.d.ts +40 -0
- package/dist/api/spec/security/schemes.js +86 -0
- package/dist/api/spec/sign-in.d.ts +4 -0
- package/dist/api/spec/sign-in.js +4 -0
- package/dist/api/spec/sign-up.d.ts +34 -0
- package/dist/api/spec/sign-up.js +77 -0
- package/dist/api/spec/tags/checks.d.ts +23 -0
- package/dist/api/spec/tags/checks.js +47 -0
- package/dist/api/spec/tags/query.d.ts +4 -0
- package/dist/api/spec/tags/query.js +113 -0
- package/dist/api/spec/tags/validate.d.ts +12 -0
- package/dist/api/spec/tags/validate.js +117 -0
- package/dist/api/spec/types.d.ts +120 -0
- package/dist/api/spec/types.js +3 -0
- package/dist/api/steps/external.d.ts +31 -0
- package/dist/api/steps/external.js +17 -0
- package/dist/api/steps/index.d.ts +9 -0
- package/dist/api/steps/index.js +5 -0
- package/dist/api/steps/out-of-band.d.ts +17 -0
- package/dist/api/steps/out-of-band.js +19 -0
- package/dist/api/steps/request.d.ts +30 -0
- package/dist/api/steps/request.js +72 -0
- package/dist/api/steps/scenario.d.ts +18 -0
- package/dist/api/steps/scenario.js +18 -0
- package/dist/api/steps/sender.d.ts +34 -0
- package/dist/api/steps/sender.js +53 -0
- package/dist/api/steps/steps.d.ts +51 -0
- package/dist/api/steps/steps.js +30 -0
- package/dist/api/steps/types.d.ts +90 -0
- package/dist/api/steps/types.js +7 -0
- package/dist/api/steps/view.d.ts +20 -0
- package/dist/api/steps/view.js +41 -0
- package/dist/cli/main.d.ts +8 -0
- package/dist/cli/main.js +38 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.js +11 -0
- package/docs/api/api.md +78 -0
- package/docs/api/assumptions.md +119 -0
- package/docs/api/checks.md +265 -0
- package/docs/api/commands.md +309 -0
- package/docs/api/configuration/hooks.md +162 -0
- package/docs/api/configuration/origins-and-uploads.md +85 -0
- package/docs/api/configuration/principals-and-security.md +173 -0
- package/docs/api/configuration/reference.md +283 -0
- package/docs/api/limits.md +23 -0
- package/docs/api/migrating-0.25.md +40 -0
- package/docs/api/migrating-from-oat.md +70 -0
- package/docs/api/model.md +230 -0
- package/docs/api/reference-defects.md +181 -0
- package/docs/api/releasing.md +52 -0
- package/docs/api/reports.md +287 -0
- package/docs/api/roadmaps/1-freshness-program-20261028T232448Z.md +90 -0
- package/docs/api/steps.md +162 -0
- package/docs/api/tags.md +536 -0
- package/labs/api/README.md +130 -0
- package/labs/api/annotated-openapi.yaml +421 -0
- package/labs/api/demo.mjs +119 -0
- package/labs/api/local.config.ts +33 -0
- package/labs/api/minimal.config.ts +31 -0
- package/labs/api/oob-auth.config.ts +152 -0
- package/package.json +145 -5
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { RequestBuilder } from "./request.js";
|
|
2
|
+
/** The scenario's own principal. */
|
|
3
|
+
export const SELF = {};
|
|
4
|
+
/** No credential at all. */
|
|
5
|
+
export const ANON = { anonymous: true };
|
|
6
|
+
/** A session held in the scope, sent with `headers` (which name it as `{name}`) in place of the principal's credential. */
|
|
7
|
+
export function sessionIdentity(headers) {
|
|
8
|
+
return { anonymous: true, headers };
|
|
9
|
+
}
|
|
10
|
+
/** Another config principal. */
|
|
11
|
+
export function principalIdentity(name) {
|
|
12
|
+
return { principal: name };
|
|
13
|
+
}
|
|
14
|
+
/* The parts of an init that are present: an optional part given as undefined is no part at all. */
|
|
15
|
+
function present(init) {
|
|
16
|
+
return Object.fromEntries(Object.entries(init).filter(([, value]) => value !== undefined));
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Builds the request steps one identity sends. Typed over the operations `M` it may call and the
|
|
20
|
+
* caller's `T`, so an unknown operation, body field, path parameter or error key fails to compile.
|
|
21
|
+
*/
|
|
22
|
+
export class Sender {
|
|
23
|
+
#identity;
|
|
24
|
+
constructor(identity) {
|
|
25
|
+
this.#identity = identity;
|
|
26
|
+
}
|
|
27
|
+
/** Calls an operation the document names. */
|
|
28
|
+
call(operationId, init = {}) {
|
|
29
|
+
return new RequestBuilder(this.#step({ operationId }, init));
|
|
30
|
+
}
|
|
31
|
+
/** Calls an operation and expects it refused with `status` and the declared error `key`. */
|
|
32
|
+
refused(operationId, refusal) {
|
|
33
|
+
const { key, status, ...init } = refusal;
|
|
34
|
+
return new RequestBuilder(this.#step({ operationId }, init))
|
|
35
|
+
.status(status)
|
|
36
|
+
.equals("$.error_key", key);
|
|
37
|
+
}
|
|
38
|
+
/** Sends a raw request, for a path the document does not describe. */
|
|
39
|
+
request(method, path, init = {}) {
|
|
40
|
+
return new RequestBuilder(this.#step({ method, path }, init));
|
|
41
|
+
}
|
|
42
|
+
/** This sender, with every step it builds sent to the configured origin `name`. */
|
|
43
|
+
on(name) {
|
|
44
|
+
return new Sender({ ...this.#identity, origin: name });
|
|
45
|
+
}
|
|
46
|
+
#step(target, init) {
|
|
47
|
+
const { headers, ...rest } = present(init);
|
|
48
|
+
const own = this.#identity.headers;
|
|
49
|
+
const merged = headers === undefined && own === undefined ? {} : { headers: { ...own, ...headers } };
|
|
50
|
+
return { ...this.#identity, ...rest, ...merged, ...target };
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=sender.js.map
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { Scenario } from "../config/types/steps.ts";
|
|
2
|
+
import { type ExternalDraft } from "./external.ts";
|
|
3
|
+
import { type MailDraft } from "./out-of-band.ts";
|
|
4
|
+
import { type ScenarioInit } from "./scenario.ts";
|
|
5
|
+
import { Sender } from "./sender.ts";
|
|
6
|
+
import type { Fillable, OpId, OriginName, OriginOps, StepTypes, Unchecked } from "./types.ts";
|
|
7
|
+
type Externals<T extends StepTypes> = NonNullable<T["externals"]>;
|
|
8
|
+
/** An external's input argument: none for an external that takes none. */
|
|
9
|
+
type ExternalArgs<T extends StepTypes, N extends keyof Externals<T>> = Externals<T>[N] extends undefined ? [] : [input: Fillable<Externals<T>[N]>];
|
|
10
|
+
type MailKind<T extends StepTypes> = T extends {
|
|
11
|
+
mail: infer K extends string;
|
|
12
|
+
} ? K : string;
|
|
13
|
+
/** How the builders send what the caller's API leaves to it. */
|
|
14
|
+
export interface StepsOptions {
|
|
15
|
+
/** The configured origin a scenario of this set belongs to; give the set that origin's operations. */
|
|
16
|
+
origin?: string;
|
|
17
|
+
/**
|
|
18
|
+
* The headers a session held in the scope as `{name}` is sent with, in place of the principal's
|
|
19
|
+
* credential: where a credential goes is the API's to say, never the API tester's.
|
|
20
|
+
*/
|
|
21
|
+
session?: (name: string) => Record<string, string>;
|
|
22
|
+
}
|
|
23
|
+
/** The builders a scenario is written with, typed over the caller's `T`. */
|
|
24
|
+
export interface Builders<T extends StepTypes> {
|
|
25
|
+
/** The scenario's own principal. */
|
|
26
|
+
self: Sender<T["ops"], T>;
|
|
27
|
+
/** No credential at all. */
|
|
28
|
+
anon: Sender<T["ops"], T>;
|
|
29
|
+
/** The session held in the scope as `{name}`, sent with the `session` option's headers. */
|
|
30
|
+
session(name: string): Sender<T["ops"], T>;
|
|
31
|
+
/** Another config principal: an invitee accepting, a peer reading. */
|
|
32
|
+
principal(name: string): Sender<T["ops"], T>;
|
|
33
|
+
/** The scenario's principal, calling a configured origin's operation as a support step. */
|
|
34
|
+
origin<O extends OriginName<T>>(name: O): Sender<OriginOps<T, O>, T>;
|
|
35
|
+
/** A wait for a mailed token, a magic link, an OTP. */
|
|
36
|
+
mail(kind: MailKind<T>, address: string): MailDraft;
|
|
37
|
+
/** A step only a person or a browser can do, answered by `hooks.external`. */
|
|
38
|
+
external<N extends keyof Externals<T> & string>(name: N, ...input: ExternalArgs<T, N>): ExternalDraft;
|
|
39
|
+
/** The plain the API tester scenario; `covers` names this document's operations. */
|
|
40
|
+
scenario(init: ScenarioInit<OpId<T["ops"]>>): Scenario;
|
|
41
|
+
/** A deliberately invalid value, sent as written. */
|
|
42
|
+
unchecked<V>(value: V): V & Unchecked;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The step builders for one document. `origin` makes it the set for a scenario that belongs to that
|
|
46
|
+
* configured origin: give it that origin's operations as `T["ops"]`, and its `scenario` names the
|
|
47
|
+
* origin while its steps carry none. `session` says how `session(name)` sends a scope-held session.
|
|
48
|
+
*/
|
|
49
|
+
export declare function steps<T extends StepTypes>(options?: StepsOptions): Builders<T>;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=steps.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { external } from "./external.js";
|
|
2
|
+
import { mail } from "./out-of-band.js";
|
|
3
|
+
import { scenario, unchecked } from "./scenario.js";
|
|
4
|
+
import { ANON, principalIdentity, SELF, Sender, sessionIdentity } from "./sender.js";
|
|
5
|
+
const NO_SESSION = "session(name) needs steps({ session }), the headers a session held in the scope is sent with";
|
|
6
|
+
/**
|
|
7
|
+
* The step builders for one document. `origin` makes it the set for a scenario that belongs to that
|
|
8
|
+
* configured origin: give it that origin's operations as `T["ops"]`, and its `scenario` names the
|
|
9
|
+
* origin while its steps carry none. `session` says how `session(name)` sends a scope-held session.
|
|
10
|
+
*/
|
|
11
|
+
export function steps(options = {}) {
|
|
12
|
+
const self = new Sender(SELF);
|
|
13
|
+
const { origin, session } = options;
|
|
14
|
+
return {
|
|
15
|
+
anon: new Sender(ANON),
|
|
16
|
+
external: (name, ...input) => external(name, input[0]),
|
|
17
|
+
mail,
|
|
18
|
+
origin: (name) => self.on(name),
|
|
19
|
+
principal: (name) => new Sender(principalIdentity(name)),
|
|
20
|
+
scenario: (init) => scenario(origin === undefined ? init : { ...init, origin }),
|
|
21
|
+
self,
|
|
22
|
+
session: (name) => {
|
|
23
|
+
if (session === undefined)
|
|
24
|
+
throw new Error(NO_SESSION);
|
|
25
|
+
return new Sender(sessionIdentity(session(name)));
|
|
26
|
+
},
|
|
27
|
+
unchecked,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=steps.js.map
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { ScenarioStep } from "../config/types/steps.ts";
|
|
2
|
+
/** One operation as a caller's types describe it. Every part is optional: a part left out takes nothing. */
|
|
3
|
+
export interface OpShape {
|
|
4
|
+
/** The JSON request body. */
|
|
5
|
+
body?: unknown;
|
|
6
|
+
/** The path parameters, filled through `bind`. */
|
|
7
|
+
bind?: object;
|
|
8
|
+
/** The query parameters. */
|
|
9
|
+
query?: object;
|
|
10
|
+
/** The error keys the operation declares, per status: `{ 403: "forbidden" | "email_not_verified" }`. */
|
|
11
|
+
errors?: {
|
|
12
|
+
readonly [status: number]: string;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
/** Operation id → its shape. */
|
|
16
|
+
export type OpMap = {
|
|
17
|
+
readonly [operationId: string]: OpShape;
|
|
18
|
+
};
|
|
19
|
+
/** Everything the builders are typed over. Only `ops` is required. */
|
|
20
|
+
export interface StepTypes {
|
|
21
|
+
/** The operations of the document the scenario runs against. */
|
|
22
|
+
ops: OpMap;
|
|
23
|
+
/** Configured `origins[]` name → that origin's operations, for a support step sent there. */
|
|
24
|
+
origins?: {
|
|
25
|
+
readonly [origin: string]: OpMap;
|
|
26
|
+
};
|
|
27
|
+
/** External step name → the input it takes (`undefined` for none). */
|
|
28
|
+
externals?: {
|
|
29
|
+
readonly [name: string]: object | undefined;
|
|
30
|
+
};
|
|
31
|
+
/** The out-of-band kinds `hooks.resolveOutOfBand` answers. */
|
|
32
|
+
mail?: string;
|
|
33
|
+
}
|
|
34
|
+
/** A text holding a `{name}` placeholder, filled from the flow's scope when the step runs. */
|
|
35
|
+
export type Placeholder = `${string}{${string}}${string}`;
|
|
36
|
+
type Bytes = ArrayBuffer | ArrayBufferView | Blob;
|
|
37
|
+
/** `T` with every scalar leaf also accepting a placeholder text; bytes are content and pass as they are. */
|
|
38
|
+
export type Fillable<T> = T extends Bytes ? T : T extends readonly (infer U)[] ? Fillable<U>[] : T extends object ? {
|
|
39
|
+
[K in keyof T]: Fillable<T[K]>;
|
|
40
|
+
} : T | Placeholder;
|
|
41
|
+
/** A value written `unchecked(...)`: sent as it is, outside the operation's body type. */
|
|
42
|
+
export interface Unchecked {
|
|
43
|
+
readonly "~unchecked": true;
|
|
44
|
+
}
|
|
45
|
+
/** A builder `scenario()` turns into the plain step it stands for. */
|
|
46
|
+
export interface BuiltStep {
|
|
47
|
+
toStep(): ScenarioStep;
|
|
48
|
+
}
|
|
49
|
+
/** What a scenario's steps may hold: builders, and plain steps such as a sign-up flow's. */
|
|
50
|
+
export type StepItem = BuiltStep | ScenarioStep;
|
|
51
|
+
/** An operation id of `M`. */
|
|
52
|
+
export type OpId<M extends OpMap> = keyof M & string;
|
|
53
|
+
/** A configured origin's name. */
|
|
54
|
+
export type OriginName<T extends StepTypes> = keyof NonNullable<T["origins"]> & string;
|
|
55
|
+
/** The operations of origin `O`. */
|
|
56
|
+
export type OriginOps<T extends StepTypes, O extends OriginName<T>> = NonNullable<T["origins"]>[O] & OpMap;
|
|
57
|
+
/** The parameter names part `K` of `S` declares, each filled with a text; none when `S` has no such part. */
|
|
58
|
+
type Params<S extends OpShape, K extends "bind" | "query"> = K extends keyof S ? {
|
|
59
|
+
[P in keyof NonNullable<S[K]>]?: string;
|
|
60
|
+
} : {
|
|
61
|
+
[P in never]?: string;
|
|
62
|
+
};
|
|
63
|
+
/** The body `S` takes; with no body declared, only an `unchecked(...)` one. */
|
|
64
|
+
type BodyOf<S extends OpShape> = "body" extends keyof S ? Fillable<NonNullable<S["body"]>> | Unchecked : Unchecked;
|
|
65
|
+
/** What an operation call sends besides the operation id. */
|
|
66
|
+
export interface CallInit<S extends OpShape = OpShape> {
|
|
67
|
+
body?: BodyOf<S>;
|
|
68
|
+
bind?: Params<S, "bind">;
|
|
69
|
+
query?: Params<S, "query">;
|
|
70
|
+
/** Merged over a session's headers, these winning per key. */
|
|
71
|
+
headers?: Record<string, string>;
|
|
72
|
+
/** One of the request media types the operation documents. */
|
|
73
|
+
mediaType?: string;
|
|
74
|
+
}
|
|
75
|
+
/** A status `S` declares error keys for. */
|
|
76
|
+
export type ErrorStatus<S extends OpShape> = "errors" extends keyof S ? keyof NonNullable<S["errors"]> & number : never;
|
|
77
|
+
/** A refused call: the status and the declared error key the response must carry, plus the call's init. */
|
|
78
|
+
export type Refusal<S extends OpShape, Status extends number> = CallInit<S> & {
|
|
79
|
+
status: Status;
|
|
80
|
+
key: Status extends keyof NonNullable<S["errors"]> ? NonNullable<S["errors"]>[Status] : never;
|
|
81
|
+
};
|
|
82
|
+
/** What a raw request sends besides its method and path. */
|
|
83
|
+
export interface RawInit {
|
|
84
|
+
body?: unknown;
|
|
85
|
+
headers?: Record<string, string>;
|
|
86
|
+
query?: Record<string, string>;
|
|
87
|
+
redirect?: "follow" | "manual";
|
|
88
|
+
}
|
|
89
|
+
export {};
|
|
90
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* What a caller tells the step builders about its API, so a scenario that names an operation, a
|
|
3
|
+
* body field, a path parameter or an error key the API lacks fails to compile. Nothing here exists
|
|
4
|
+
* at run time: the builders emit the API tester's plain step objects.
|
|
5
|
+
*/
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Scenario, ScenarioAssert, ScenarioStep } from "../config/types/steps.ts";
|
|
2
|
+
/** One scenario's steps, read the way a config's own unit tests ask about them. */
|
|
3
|
+
export interface ScenarioView {
|
|
4
|
+
readonly scenario: Scenario;
|
|
5
|
+
readonly steps: readonly ScenarioStep[];
|
|
6
|
+
/** The first step calling `operationId` whose fields include `where`, deep; -1 when none does. */
|
|
7
|
+
indexOf(operationId: string, where?: object): number;
|
|
8
|
+
/** Every step calling `operationId`, with its index. */
|
|
9
|
+
calls(operationId: string): Array<{
|
|
10
|
+
index: number;
|
|
11
|
+
step: ScenarioStep;
|
|
12
|
+
}>;
|
|
13
|
+
/** Every assert, flattened, in step order. */
|
|
14
|
+
asserts(): ScenarioAssert[];
|
|
15
|
+
/** Whether the scenario covers `operationId`, calls it, and a later assert names it in `observes`. */
|
|
16
|
+
observes(operationId: string): boolean;
|
|
17
|
+
}
|
|
18
|
+
/** The scenario `id` among `scenarios`, as a view its unit tests query. */
|
|
19
|
+
export declare function stepsOf(scenarios: readonly Scenario[], id: string): ScenarioView;
|
|
20
|
+
//# sourceMappingURL=view.d.ts.map
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/* `actual` holds every field `expected` has, deep; arrays match item by item, at the same length. */
|
|
2
|
+
function includes(actual, expected) {
|
|
3
|
+
if (Array.isArray(expected)) {
|
|
4
|
+
return (Array.isArray(actual) &&
|
|
5
|
+
actual.length === expected.length &&
|
|
6
|
+
expected.every((item, i) => includes(actual[i], item)));
|
|
7
|
+
}
|
|
8
|
+
if (expected === null || typeof expected !== "object")
|
|
9
|
+
return Object.is(actual, expected);
|
|
10
|
+
if (actual === null || typeof actual !== "object")
|
|
11
|
+
return false;
|
|
12
|
+
return Object.entries(expected).every(([key, value]) => includes(actual[key], value));
|
|
13
|
+
}
|
|
14
|
+
const operationOf = (step) => ("operationId" in step ? step.operationId : undefined);
|
|
15
|
+
const assertsOf = (step) => "assert" in step && step.assert !== undefined ? [step.assert].flat() : [];
|
|
16
|
+
/** The scenario `id` among `scenarios`, as a view its unit tests query. */
|
|
17
|
+
export function stepsOf(scenarios, id) {
|
|
18
|
+
const scenario = scenarios.find((candidate) => candidate.id === id);
|
|
19
|
+
if (scenario === undefined) {
|
|
20
|
+
throw new Error(`no scenario "${id}" among: ${scenarios.map((candidate) => candidate.id).join(", ")}`);
|
|
21
|
+
}
|
|
22
|
+
const { steps } = scenario;
|
|
23
|
+
const calls = (operationId) => steps.flatMap((step, index) => (operationOf(step) === operationId ? [{ index, step }] : []));
|
|
24
|
+
return {
|
|
25
|
+
asserts: () => steps.flatMap(assertsOf),
|
|
26
|
+
calls,
|
|
27
|
+
indexOf: (operationId, where = {}) => steps.findIndex((step) => operationOf(step) === operationId && includes(step, where)),
|
|
28
|
+
observes: (operationId) => {
|
|
29
|
+
const first = calls(operationId)[0]?.index;
|
|
30
|
+
if (first === undefined || !scenario.covers.includes(operationId))
|
|
31
|
+
return false;
|
|
32
|
+
return steps
|
|
33
|
+
.slice(first + 1)
|
|
34
|
+
.flatMap(assertsOf)
|
|
35
|
+
.some((assert) => assert.observes?.includes(operationId) === true);
|
|
36
|
+
},
|
|
37
|
+
scenario,
|
|
38
|
+
steps,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type CliDeps } from "../api/cli/main.ts";
|
|
2
|
+
/** The help: one line per subpath, made from the table above. */
|
|
3
|
+
export declare const USAGE: string;
|
|
4
|
+
/** `testing <subpath> …`: hands the rest to that subpath's command line. Returns the exit code. */
|
|
5
|
+
export declare function main(argv: readonly string[], deps: CliDeps): Promise<number>;
|
|
6
|
+
/** Runs `testing` as the process. */
|
|
7
|
+
export declare function start(deps?: CliDeps): Promise<void>;
|
|
8
|
+
//# sourceMappingURL=main.d.ts.map
|
package/dist/cli/main.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { main as apiMain, start as startCli } from "../api/cli/main.js";
|
|
2
|
+
import { processWriter } from "../api/cli/writer.js";
|
|
3
|
+
import { EXIT } from "../api/runtime/exit.js";
|
|
4
|
+
/** Every subpath with a command line, by name. */
|
|
5
|
+
const SUBPATHS = {
|
|
6
|
+
api: { main: apiMain, summary: "test a live HTTP API against its OpenAPI document (testing api help)" },
|
|
7
|
+
};
|
|
8
|
+
/** The help: one line per subpath, made from the table above. */
|
|
9
|
+
export const USAGE = /* @__PURE__ */ usage();
|
|
10
|
+
function usage() {
|
|
11
|
+
const width = Math.max(...Object.keys(SUBPATHS).map((name) => name.length)) + 4;
|
|
12
|
+
const lines = Object.entries(SUBPATHS).map(([name, subpath]) => ` ${name.padEnd(width)}${subpath.summary}`);
|
|
13
|
+
return `usage: testing <subpath> <command> [flags]\n${lines.join("\n")}\n`;
|
|
14
|
+
}
|
|
15
|
+
/** `testing <subpath> …`: hands the rest to that subpath's command line. Returns the exit code. */
|
|
16
|
+
export async function main(argv, deps) {
|
|
17
|
+
const [first, ...rest] = argv;
|
|
18
|
+
if (first === undefined) {
|
|
19
|
+
deps.writer.err(USAGE);
|
|
20
|
+
return EXIT.usage;
|
|
21
|
+
}
|
|
22
|
+
if (first === "help" || first === "--help") {
|
|
23
|
+
deps.writer.out(USAGE);
|
|
24
|
+
return 0;
|
|
25
|
+
}
|
|
26
|
+
const subpath = SUBPATHS[first];
|
|
27
|
+
if (subpath === undefined) {
|
|
28
|
+
const names = Object.keys(SUBPATHS).join(", ");
|
|
29
|
+
deps.writer.err(`testing: unknown subpath "${first}"; the subpaths are: ${names}\n\n${USAGE}`);
|
|
30
|
+
return EXIT.usage;
|
|
31
|
+
}
|
|
32
|
+
return subpath.main(rest, deps);
|
|
33
|
+
}
|
|
34
|
+
/** Runs `testing` as the process. */
|
|
35
|
+
export function start(deps = { writer: processWriter }) {
|
|
36
|
+
return startCli(deps, main);
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=main.js.map
|
package/dist/cli.d.ts
ADDED
package/dist/cli.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/*
|
|
3
|
+
* The package's executable, `testing`: `bin/testing.js` imports `start` and calls it, since its own
|
|
4
|
+
* argv[1] is the bin wrapper, not this module. Run directly, it starts itself the same way.
|
|
5
|
+
*/
|
|
6
|
+
import { invokedDirectly } from "./api/cli/main.js";
|
|
7
|
+
import { start } from "./cli/main.js";
|
|
8
|
+
export { start } from "./cli/main.js";
|
|
9
|
+
if (invokedDirectly(process.argv[1], import.meta.url))
|
|
10
|
+
await start();
|
|
11
|
+
//# sourceMappingURL=cli.js.map
|
package/docs/api/api.md
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# testing api — Programmatic API
|
|
2
|
+
|
|
3
|
+
[← back to the overview](../../README.md)
|
|
4
|
+
|
|
5
|
+
## Programmatic API
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import {
|
|
9
|
+
defineConfig,
|
|
10
|
+
env,
|
|
11
|
+
loadConfig,
|
|
12
|
+
run,
|
|
13
|
+
loadSpec,
|
|
14
|
+
dereference,
|
|
15
|
+
buildModel,
|
|
16
|
+
renderJson,
|
|
17
|
+
renderMarkdown,
|
|
18
|
+
} from "@workerstack/testing/api"
|
|
19
|
+
|
|
20
|
+
const config = defineConfig({
|
|
21
|
+
spec: "./openapi.yaml",
|
|
22
|
+
baseUrl: "https://api.example.com",
|
|
23
|
+
security: { bearer: { static: env("API_TOKEN") } },
|
|
24
|
+
principals: { alpha: { tenant: "acme" } },
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
const result = await run({
|
|
28
|
+
spec: config.spec,
|
|
29
|
+
baseUrl: config.baseUrl,
|
|
30
|
+
security: config.security,
|
|
31
|
+
principals: config.principals,
|
|
32
|
+
seed: 1,
|
|
33
|
+
maxInFlight: 4,
|
|
34
|
+
onProgress: (snap) => {
|
|
35
|
+
// snap.phase, snap.entity, snap.check, snap.inflight, snap.last, snap.message, …
|
|
36
|
+
},
|
|
37
|
+
})
|
|
38
|
+
|
|
39
|
+
// result.findings, result.checksSkipped, result.checksSuppressed,
|
|
40
|
+
// result.inconclusive, result.entitiesTested, result.teardown, result.created,
|
|
41
|
+
// result.scope (per-operation status), result.checksOutOfScope
|
|
42
|
+
// pass `ops: ["product.update"]` to run() for a targeted run; ScopeError on an unknown name
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
`result.teardown` is `{ removed, failed, unsupported, records }`; `records` lists every record the API tester ledgered, in creation order, as `{ entity, id, removed }`. Only ids the backend gave back are ever ledgered. `report.json` carries the same object under `teardown`.
|
|
46
|
+
|
|
47
|
+
`env(name)` reads a secret for a config: `token: env("API_TOKEN")`. An unset or empty variable stops the load with `testing api: env API_TOKEN is not set (<config path>)`, so a missing secret never goes out as an empty credential.
|
|
48
|
+
|
|
49
|
+
`loadConfig(path)` loads `.ts` / `.js` / `.mjs` / `.json` the same way the CLI does. The CLI then expands `${NAME}` in every string. `defineConfig` is an identity function for typing; it does not interpolate. If you call `run()` with an in-process object, resolve secrets yourself (template literals, `process.env`) before passing it.
|
|
50
|
+
|
|
51
|
+
`runVerdict(result)` is the verdict the CLI and every report state: `{ outcome, reason }`, where
|
|
52
|
+
`outcome` is `clean`, `defects` or `failed` (a run that graded nothing, a network that went away, or
|
|
53
|
+
a `--ops` target never judged). `exitCode(result)` is that outcome as the CLI's exit code, from
|
|
54
|
+
`EXIT`: 0, 1 or 3.
|
|
55
|
+
|
|
56
|
+
`run(options)` does not write files. The CLI writes reports after `run` returns. To produce the same artifacts, call `renderMarkdown` / `renderJson` / `renderMatrixHtml` / `renderMatrixGraph` / `renderRepros` with a `ReportInput` (`findings`, `model`, `client`, `baseUrl`, `entitiesTested`, `checksRun`, `startedAt`, `durationMs`, plus optional skip/suppress/inconclusive lists).
|
|
57
|
+
|
|
58
|
+
`transcript: { memoryBytes, dir }` bounds what a large run holds. Each client keeps up to `memoryBytes` of exchange bodies in memory (default 32 MiB) and moves the oldest to a private folder under `dir` (default the system temporary directory). Checks read those bodies back exactly as the backend sent them, so they are not redacted. Each file is encrypted with AES-256-GCM, under a key each client draws for itself and holds only in memory,, and the folder is removed when the run ends, however it ends. Choose a local, private `dir`: the encryption is what protects the files there. `memoryBytes` must be a positive integer, and `dir` must exist and be writable; `run` refuses either fault with a `UsageError` before it sends anything.
|
|
59
|
+
|
|
60
|
+
Offline:
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
const doc = await loadSpec("./openapi.yaml")
|
|
64
|
+
const { doc: resolved, externalRefs } = dereference(doc)
|
|
65
|
+
const model = buildModel(resolved)
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Types exported, by what they describe:
|
|
69
|
+
|
|
70
|
+
- **Config.** `ApiConfig`; `EntityConfig` (an `entities` entry, today only its `query`); `PayloadPolicy` (`payloads`: `"full"` or `"per-write-path"`); `ProfileSpec` (a `profiles` entry); `ExternalsConfig` (`externals`: each scenario external's kind); `RateLimitSpec` (a `rateLimits` entry); `OriginSpec`; `OutOfBandConfig`; `Uploads` and `UploadFile`.
|
|
71
|
+
- **Security.** `SecurityConfig` (one `Recipe` per scheme) and `PrincipalsConfig` (a `PrincipalEntry` per id).
|
|
72
|
+
- **Steps and scenarios.** `AuthStep` is an `OperationStep`, a `RequestStep` or an `OutOfBandStep`. A `Scenario` runs `ScenarioStep`s: a `ScenarioRequestStep` (an operation or request step with its `ScenarioAssert`s), an `OutOfBandStep` or an `ExternalStep`.
|
|
73
|
+
- **Query catalog.** `QueryCapabilities` is what `x-query` or a config's `query` declares for a list: `FilterableField`s, each a field with its `FieldType` and `FilterOp`s, and `FilterableFrom`, the read that `filterableFrom` and its siblings harvest names from. `QueryParamNames` maps a `QueryParamRole` (`filter`, `sort`, `select`, `search`, `searchMode`, `limit`, `page`, `offset`, `cursor`) to the query parameter it is sent in, as `x-query.params` and config `query.params` name it. `QueryEnvelopeNames` maps a `QueryEnvelopeRole` (`total`, `hasMore`, `nextCursor`) to the response field it is read from, as `x-query.envelope` and config `query.envelope` name it.
|
|
74
|
+
- **Hooks.** `Hooks`, and what each hook receives: `HeaderRequest` (`resolveHeaders`), `InputRequest` (`resolveInput`), `UploadRequest` (`resolveUpload`, which answers an `UploadResolution`), `PathValueRequest` (`resolvePathValue`), `QueryCapabilitiesRequest` (`resolveQueryCapabilities`), `SideEffectRequest` (`awaitSideEffect`), `OutOfBandRequest` (`resolveOutOfBand`) and `TeardownPrincipalContext` (`teardownPrincipal`: the account's credential, where it goes, and `stale`, why it could not be renewed when it could not).
|
|
75
|
+
- **Runs and reports.** `RunOptions`, `RunResult`, `Finding`, `Verdict`, `Actor` and `ReportInput`.
|
|
76
|
+
- **The model.** `SpecModel`, `EntityModel`, `OperationModel` and `OpenApiDocument`.
|
|
77
|
+
|
|
78
|
+
Also exported: `loadPersistedPrincipals`, `worstCaseWaitMs`, `allocateRunDir` and `DEFAULT_RUNS_ROOT`.
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# testing api — Assumptions
|
|
2
|
+
|
|
3
|
+
[← back to the overview](../../README.md)
|
|
4
|
+
|
|
5
|
+
The API tester tests a backend against its own document, and where the document is silent it has to assume
|
|
6
|
+
something. This page lists every such assumption, what the API tester does when an API does not fit it, and
|
|
7
|
+
how to declare the exception. An assumption that does not hold should never become a false
|
|
8
|
+
finding: it should become a skip, an inconclusive verdict or a coverage gap that names the tag that
|
|
9
|
+
would settle it. If one of these produces a finding against a correct backend, that is the API tester bug.
|
|
10
|
+
|
|
11
|
+
## Shape of the API
|
|
12
|
+
|
|
13
|
+
| The API tester assumes | when it does not hold | declare |
|
|
14
|
+
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
|
|
15
|
+
| A resource is a noun in the path: `/tables`, `/tables/{id}` | the operation is untracked; `doctor` names the gap | [`x-entity`](tags.md#x-entity) `{ name, action }` |
|
|
16
|
+
| An instance is identified by `id`, `uuid`, `slug`, `key` or `name`, or by the trailing path parameter | the entity is not trackable, and checks that need a record stand down | `x-entity.identity` |
|
|
17
|
+
| A single-record answer is the record, or wraps it in `data` / `item` / `result` / `record` (create only) | fields are compared against the wrong object, or an update's `{ success, id }` reads as every field dropped | [`x-entity.recordPath`](tags.md#x-entity) per operation |
|
|
18
|
+
| A list's rows are its one array of objects | with two (`data` beside `fields`) the list is not treated as a collection; `doctor` names the gap | `x-entity.recordPath` on the list (`$.data`) |
|
|
19
|
+
| Each list row is the record | a row that wraps its record (`{ document, highlights }`) is compared as the record, so a created record is never found in the list | `x-entity.recordPath` on the list (`$.hits[*].document`) |
|
|
20
|
+
| Creating is `POST` to the collection, and the response carries the created record | the cohort cannot be seeded; dependent checks are blocked | [`x-async`](tags.md#x-async) for a receipt, `x-entity` for a create elsewhere |
|
|
21
|
+
| A create that answers without the record (`{ success: true }`) kept the id the client chose | the record is not tracked: the API tester leaves it behind rather than delete an id it only sent | an item read (`x-entity` action `read`): the API tester tracks the id once that read shows it with every submitted field |
|
|
22
|
+
| An identifier looks like the identity: an integer, a uuid, or a token (`testing-absent-…`) for a bare string | a probe for a record that does not exist is answered 400 for its format, not 404; one that cannot meet a string identity's pattern or length does not apply | type the route parameter, or the identity property (it wins over a route parameter documented as a bare string) |
|
|
23
|
+
| A client-chosen identity names no record the collection already holds | The API tester avoids every listed id and every id its own records hold; with no free id left, the create is not sent and the check reports a gap | `x-unique` on the identity, so a duplicate id is a graded 409 |
|
|
24
|
+
| Two records may share a value the document does not declare unique | a server deriving a key from it (a slug) refuses one; parents and check records the API tester makes put a run token, per principal, in every string | [`x-unique`](tags.md#x-unique) on the field |
|
|
25
|
+
| A record the API tester created can be deleted by its item route | teardown reports what it left behind | [`x-cleanup`](tags.md#x-cleanup) |
|
|
26
|
+
| Path parameters the API tester cannot create are supplied | the entity cannot be reached | [`x-root`](tags.md#x-root), or each principal's `scope` |
|
|
27
|
+
| A list answers with an array, or an object holding one | list checks stand down | the collection schema |
|
|
28
|
+
| A schema's `format` is checked when ajv-formats defines it: `date`, `time`, `date-time`, `iso-time`, `iso-date-time`, `duration`, `uri`, `uri-reference`, `uri-template`, `url`, `email`, `hostname`, `ipv4`, `ipv6`, `regex`, `uuid`, `json-pointer`, `json-pointer-uri-fragment`, `relative-json-pointer`, `byte`, `int32`, `int64`, `float`, `double`, `password`, `binary`. `url` and the OpenAPI formats are not JSON Schema 2020-12 formats; any other unknown format is ignored | a value that breaks one of those formats is reported as drift (`images/seat.svg` is not a `url`); a value in an unknown format passes unchecked | use the format the value actually has (`uri-reference` for a relative path), or drop it in an `overlay` |
|
|
29
|
+
|
|
30
|
+
## Lists and paging
|
|
31
|
+
|
|
32
|
+
| The API tester assumes | when it does not hold | declare |
|
|
33
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
|
|
34
|
+
| Paging parameters carry recognizable names (`limit`, `page`, `offset`, `cursor`, …) | the role is unresolved and the paging checks do not apply | the parameter's name or default, or [`x-query`](tags.md#x-query) `maxLimit` |
|
|
35
|
+
| A set has ended when a page is empty, shorter than a full page already seen, or the envelope says so — and, when the envelope carries both a total and a more-pages flag, they agree | The API tester keeps reading; it never takes the requested page size as proof | nothing: a server may serve fewer rows than asked for |
|
|
36
|
+
| A list response names its paging facts as the API tester knows them: the next cursor `nextCursor` / `next_cursor` / `cursor` / `next`, the total `total` / `count`, the more-pages flag `hasMore` / `has_more`; a next cursor is text or a number | that fact is not read, and a cursor walk ends after its first page | `x-query.envelope`, config `query.envelope` |
|
|
37
|
+
| A server pages by one mechanism consistently | a read that sees pages repeat stops and is unresolved | — |
|
|
38
|
+
| A set larger than 500 records is too large to compare whole | checks that need the whole set are unresolved, not failed | smaller cohorts, or a filtered scope |
|
|
39
|
+
|
|
40
|
+
## Queries
|
|
41
|
+
|
|
42
|
+
| The API tester assumes | when it does not hold | declare |
|
|
43
|
+
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
|
|
44
|
+
| Filtering is written in a grammar the document demonstrates (PostgREST, colon, equality), or one declared as a template | filter checks do not apply; a free-text filter whose grammar is not recognized gets no terms | `x-query.grammar` (preset or template), config `query.grammar` |
|
|
45
|
+
| Sorting is written in a grammar the document demonstrates (dotted, prefixed, colon, spaced), or one declared as a template | the inferred grammar is used | `x-query.sortGrammar`, config `query.sortGrammar` |
|
|
46
|
+
| Unknown operators, sort directions and malformed terms are probed only on a declared grammar | those checks do not apply | `x-query.grammar` / `sortGrammar` |
|
|
47
|
+
| Without `x-query`, every scalar property can be filtered, sorted and selected, bar sorting by the list's own path parameters | probes reach fields the backend never indexed; findings name the guess | `x-query` `filterable` / `sortable` / `selectable` |
|
|
48
|
+
| A declared operator is accepted for a value of the field's own type | — | per-field `ops` and `type` in `x-query` |
|
|
49
|
+
| Only 400 and 422 mean "this capability is not supported" | 401, 403, 404 and 429 leave the check unresolved; a 5xx is a finding | — |
|
|
50
|
+
| Each query role's parameter goes by a name the API tester knows: `filter` / `where` / `query` / `conditions`, `sort` / `order_by`, `per_page` / `limit`, `page`, `offset`, `cursor` and the like | that role's checks do not apply, naming the parameter they would have sent | `x-query.params`, config `query.params` |
|
|
51
|
+
| A free-text search parameter is named `q`, `search`, `query_text`, `term`, `keyword`, `text`, or `searchTerm` / `search_term`, and its declaration does not say it takes `key:value` pairs, a `:` pattern or a non-string | search checks do not apply | `x-query.searchable`, `x-query.params.search` |
|
|
52
|
+
| A backend may ignore a query parameter it does not declare | no probe is sent to one; the check that needed it does not apply, naming the parameter | the parameter on the list operation |
|
|
53
|
+
| Paging is by page number, by rows skipped (`offset`, `skip`, `start`, `from`) or by cursor; a total alone (`totalCount`) is enough to stop a walk | paging checks do not apply | — |
|
|
54
|
+
| A page size of 0 or past the maximum may be refused or clamped | the out-of-range check does not apply | `x-query.limitOutOfRange: reject` |
|
|
55
|
+
| A create answers the record, or wraps it under `data` / `item` / `result` / `record` beside an id | the record is the object holding what was sent; its identity comes from it or from the envelope's id | — |
|
|
56
|
+
| An alias of an allowed operator is allowed | — | `x-query.aliases` |
|
|
57
|
+
|
|
58
|
+
## Ordering
|
|
59
|
+
|
|
60
|
+
| The API tester assumes | when it does not hold | declare |
|
|
61
|
+
| --------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------- | -------------------------- |
|
|
62
|
+
| Numbers sort numerically | `sort.numeric-order-is-numeric` reports text order | — |
|
|
63
|
+
| Text sorts by one consistent collation — binary, case-insensitive or locale — whichever the backend shows first | a sequence sorted under none of them is a finding | `x-query.sortCollation` |
|
|
64
|
+
| Nulls sit together at one end, the same end every time | nulls in the middle, or switching ends, is a finding | `x-query.sortDefaultNulls` |
|
|
65
|
+
| Descending is ascending reversed, up to ties | — | — |
|
|
66
|
+
| Tied records may come back in any order unless a tiebreak is declared | — | `x-query.stableTiebreak` |
|
|
67
|
+
|
|
68
|
+
## Writes
|
|
69
|
+
|
|
70
|
+
| The API tester assumes | when it does not hold | declare |
|
|
71
|
+
| --------------------------------------------------------------------- | -------------------------------------------------- | ---------------------------------------------------------------- |
|
|
72
|
+
| `PATCH` changes only the fields it names | the minimality and lost-update checks report it | — |
|
|
73
|
+
| `PUT` replaces the whole record | partial-update checks stand down on a PUT-only API | the update operation's method |
|
|
74
|
+
| A field the server owns is marked `readOnly` or generated | The API tester would try to write it | `readOnly`, or [`x-generated`](tags.md#x-immutable--x-generated) |
|
|
75
|
+
| A field that must never change after create is declared | not tested | [`x-immutable`](tags.md#x-immutable--x-generated) |
|
|
76
|
+
| A `writeOnly` field is accepted and not returned | — | `writeOnly` |
|
|
77
|
+
| A header named like `Idempotency-Key` promises replay | the replay check does not apply | the header's name |
|
|
78
|
+
| A unique column set is declared, and a duplicate is refused with 409 | — | [`x-unique`](tags.md#x-unique) |
|
|
79
|
+
| A deleted record leaves the default listing, unless it is a tombstone | — | [`x-soft-delete`](tags.md#x-soft-delete) |
|
|
80
|
+
|
|
81
|
+
## Errors and statuses
|
|
82
|
+
|
|
83
|
+
| The API tester assumes | when it does not hold | declare |
|
|
84
|
+
| ------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------- | ------------------------------------------ |
|
|
85
|
+
| A refusal of invalid input is 400 or 422; of a wrong content type, 415 (when documented); of a conflict, 409 | any other refusal leaves the check unresolved | — |
|
|
86
|
+
| A 5xx is never the right answer to bad input | it is a finding | — |
|
|
87
|
+
| Every status an operation returns is documented, ranges (`2XX`) and `default` included | the status check reports the gap, apart from what deliberately invalid probes drew | the response |
|
|
88
|
+
| A documented feature gate answers 403 with `vars.type: feature_gate` | the 403 is a backend failure | [`x-feature-gate`](tags.md#x-feature-gate) |
|
|
89
|
+
|
|
90
|
+
## Isolation and authorization
|
|
91
|
+
|
|
92
|
+
| The API tester assumes | when it does not hold | declare |
|
|
93
|
+
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
|
|
94
|
+
| A second principal with a different `tenant` or `scope` is another tenant | isolation checks do not apply | `principals` |
|
|
95
|
+
| The tenant is a path parameter, or declared | an inferred tenant makes a cross-tenant read an ambiguity, not a security finding | [`x-tenant`](tags.md#x-tenant) |
|
|
96
|
+
| A denial does not depend on whether the record exists | — | — |
|
|
97
|
+
| Higher `rank` can do everything a lower rank can | a lower rank seeing more is a finding | `rank` on principals |
|
|
98
|
+
| An invite grants nothing until accepted, and a revoke takes access away | — | [`x-invite`](tags.md#x-invite) and a peer's `inviteAs` |
|
|
99
|
+
| A record holding a credential the run depends on (an API key a security recipe minted) must never be changed or removed by a check; the mint's answer names its id, from the body or Location | a check whose request names such a record, whoever sends it, stands down naming it; the rest of its entity is tested on records the run makes; a mint that answers no id keeps its whole entity out of the run, saying why | answer the minted record's id, or declare it with `x-entity` `createdIdFrom` |
|
|
100
|
+
| A configured principal's own record is never removed or fully replaced by a check | a delete or a `PUT` of it stands down (a full replace could clear its sign-in fields); self-profile replaces run on disposable principals only | nothing: give the operation `x-fresh-principal` so the API tester can sign up a disposable for it |
|
|
101
|
+
|
|
102
|
+
## Async work, effects and pacing
|
|
103
|
+
|
|
104
|
+
| The API tester assumes | when it does not hold | declare |
|
|
105
|
+
| ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------- |
|
|
106
|
+
| A write is complete when it answers | — | [`x-async`](tags.md#x-async), [`x-wait`](tags.md#x-wait) |
|
|
107
|
+
| A read the API tester sends after a write sees it: every read carries the bypass `x-consistency` declares, else `Cache-Control: no-cache` | a cache that ignores both serves the API tester stale reads; the staleness window is measured on its own, past no bypass | [`x-consistency`](tags.md#x-consistency) |
|
|
108
|
+
| A write affects only its own entity and the routes it declares | other entities' changes are not tested | [`x-invalidate`](tags.md#x-invalidate), [`x-effects`](tags.md#x-effects) |
|
|
109
|
+
| Entities that share no parent, invalidated route or effect cannot observe each other | they are tested side by side | the shared relation, declared |
|
|
110
|
+
| A rate the document declares is the rate the backend enforces | a 429 under it is a finding; a config-supplied rate is only paced around | [`x-rate-limit`](tags.md#x-rate-limit--pacing-the-api-testers-own-traffic) |
|
|
111
|
+
|
|
112
|
+
## What the API tester never assumes
|
|
113
|
+
|
|
114
|
+
- That your data has a ground truth. Every oracle compares the API with itself.
|
|
115
|
+
- That the requested page size is the size served.
|
|
116
|
+
- That a field absent from the cohort cannot exist: a declared field is probed with a value of its
|
|
117
|
+
own type.
|
|
118
|
+
- That an unanswered question is a pass: a check that cannot conclude says why, and a check that
|
|
119
|
+
does not apply says what it needs.
|