@e2edev/e2e 0.2.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 +104 -0
- package/dist/agent/act-validation.d.ts +27 -0
- package/dist/agent/act-validation.d.ts.map +1 -0
- package/dist/agent/act-validation.js +121 -0
- package/dist/agent/act-validation.js.map +1 -0
- package/dist/agent/act.d.ts +27 -0
- package/dist/agent/act.d.ts.map +1 -0
- package/dist/agent/act.js +775 -0
- package/dist/agent/act.js.map +1 -0
- package/dist/agent/actions.d.ts +66 -0
- package/dist/agent/actions.d.ts.map +1 -0
- package/dist/agent/actions.js +82 -0
- package/dist/agent/actions.js.map +1 -0
- package/dist/agent/ai-sdk.d.ts +16 -0
- package/dist/agent/ai-sdk.d.ts.map +1 -0
- package/dist/agent/ai-sdk.js +59 -0
- package/dist/agent/ai-sdk.js.map +1 -0
- package/dist/agent/call-options.d.ts +10 -0
- package/dist/agent/call-options.d.ts.map +1 -0
- package/dist/agent/call-options.js +28 -0
- package/dist/agent/call-options.js.map +1 -0
- package/dist/agent/default-agent.d.ts +22 -0
- package/dist/agent/default-agent.d.ts.map +1 -0
- package/dist/agent/default-agent.js +354 -0
- package/dist/agent/default-agent.js.map +1 -0
- package/dist/agent/error.d.ts +53 -0
- package/dist/agent/error.d.ts.map +1 -0
- package/dist/agent/error.js +94 -0
- package/dist/agent/error.js.map +1 -0
- package/dist/agent/executor.d.ts +238 -0
- package/dist/agent/executor.d.ts.map +1 -0
- package/dist/agent/executor.js +56 -0
- package/dist/agent/executor.js.map +1 -0
- package/dist/agent/index.d.ts +15 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +304 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/invocation.d.ts +194 -0
- package/dist/agent/invocation.d.ts.map +1 -0
- package/dist/agent/invocation.js +389 -0
- package/dist/agent/invocation.js.map +1 -0
- package/dist/agent/ledger.d.ts +24 -0
- package/dist/agent/ledger.d.ts.map +1 -0
- package/dist/agent/ledger.js +48 -0
- package/dist/agent/ledger.js.map +1 -0
- package/dist/agent/loop-guards.d.ts +35 -0
- package/dist/agent/loop-guards.d.ts.map +1 -0
- package/dist/agent/loop-guards.js +110 -0
- package/dist/agent/loop-guards.js.map +1 -0
- package/dist/agent/model/adapter.d.ts +97 -0
- package/dist/agent/model/adapter.d.ts.map +1 -0
- package/dist/agent/model/adapter.js +40 -0
- package/dist/agent/model/adapter.js.map +1 -0
- package/dist/agent/model/router.d.ts +36 -0
- package/dist/agent/model/router.d.ts.map +1 -0
- package/dist/agent/model/router.js +45 -0
- package/dist/agent/model/router.js.map +1 -0
- package/dist/agent/model/schema.d.ts +16 -0
- package/dist/agent/model/schema.d.ts.map +1 -0
- package/dist/agent/model/schema.js +37 -0
- package/dist/agent/model/schema.js.map +1 -0
- package/dist/agent/model/sdk.d.ts +28 -0
- package/dist/agent/model/sdk.d.ts.map +1 -0
- package/dist/agent/model/sdk.js +258 -0
- package/dist/agent/model/sdk.js.map +1 -0
- package/dist/agent/observation.d.ts +70 -0
- package/dist/agent/observation.d.ts.map +1 -0
- package/dist/agent/observation.js +174 -0
- package/dist/agent/observation.js.map +1 -0
- package/dist/agent/phases.d.ts +71 -0
- package/dist/agent/phases.d.ts.map +1 -0
- package/dist/agent/phases.js +124 -0
- package/dist/agent/phases.js.map +1 -0
- package/dist/agent/prompts.d.ts +40 -0
- package/dist/agent/prompts.d.ts.map +1 -0
- package/dist/agent/prompts.js +104 -0
- package/dist/agent/prompts.js.map +1 -0
- package/dist/agent/protocol.d.ts +31 -0
- package/dist/agent/protocol.d.ts.map +1 -0
- package/dist/agent/protocol.js +67 -0
- package/dist/agent/protocol.js.map +1 -0
- package/dist/agent/public.d.ts +12 -0
- package/dist/agent/public.d.ts.map +1 -0
- package/dist/agent/public.js +12 -0
- package/dist/agent/public.js.map +1 -0
- package/dist/agent/replay.d.ts +61 -0
- package/dist/agent/replay.d.ts.map +1 -0
- package/dist/agent/replay.js +185 -0
- package/dist/agent/replay.js.map +1 -0
- package/dist/agent/secrets.d.ts +22 -0
- package/dist/agent/secrets.d.ts.map +1 -0
- package/dist/agent/secrets.js +63 -0
- package/dist/agent/secrets.js.map +1 -0
- package/dist/agent/step-cache.d.ts +156 -0
- package/dist/agent/step-cache.d.ts.map +1 -0
- package/dist/agent/step-cache.js +301 -0
- package/dist/agent/step-cache.js.map +1 -0
- package/dist/agent/tool-loop.d.ts +51 -0
- package/dist/agent/tool-loop.d.ts.map +1 -0
- package/dist/agent/tool-loop.js +331 -0
- package/dist/agent/tool-loop.js.map +1 -0
- package/dist/agent/tool.d.ts +39 -0
- package/dist/agent/tool.d.ts.map +1 -0
- package/dist/agent/tool.js +52 -0
- package/dist/agent/tool.js.map +1 -0
- package/dist/backend/contract.d.ts +186 -0
- package/dist/backend/contract.d.ts.map +1 -0
- package/dist/backend/contract.js +65 -0
- package/dist/backend/contract.js.map +1 -0
- package/dist/backend/index.d.ts +316 -0
- package/dist/backend/index.d.ts.map +1 -0
- package/dist/backend/index.js +219 -0
- package/dist/backend/index.js.map +1 -0
- package/dist/backend/session.d.ts +23 -0
- package/dist/backend/session.d.ts.map +1 -0
- package/dist/backend/session.js +213 -0
- package/dist/backend/session.js.map +1 -0
- package/dist/backend/surface.d.ts +83 -0
- package/dist/backend/surface.d.ts.map +1 -0
- package/dist/backend/surface.js +11 -0
- package/dist/backend/surface.js.map +1 -0
- package/dist/cache/anchors.d.ts +37 -0
- package/dist/cache/anchors.d.ts.map +1 -0
- package/dist/cache/anchors.js +89 -0
- package/dist/cache/anchors.js.map +1 -0
- package/dist/cache/context.d.ts +74 -0
- package/dist/cache/context.d.ts.map +1 -0
- package/dist/cache/context.js +82 -0
- package/dist/cache/context.js.map +1 -0
- package/dist/cache/decide.d.ts +42 -0
- package/dist/cache/decide.d.ts.map +1 -0
- package/dist/cache/decide.js +47 -0
- package/dist/cache/decide.js.map +1 -0
- package/dist/cache/identity.d.ts +113 -0
- package/dist/cache/identity.d.ts.map +1 -0
- package/dist/cache/identity.js +109 -0
- package/dist/cache/identity.js.map +1 -0
- package/dist/cache/recorder.d.ts +76 -0
- package/dist/cache/recorder.d.ts.map +1 -0
- package/dist/cache/recorder.js +143 -0
- package/dist/cache/recorder.js.map +1 -0
- package/dist/cache/relocate.d.ts +69 -0
- package/dist/cache/relocate.d.ts.map +1 -0
- package/dist/cache/relocate.js +125 -0
- package/dist/cache/relocate.js.map +1 -0
- package/dist/cache/store.d.ts +68 -0
- package/dist/cache/store.d.ts.map +1 -0
- package/dist/cache/store.js +106 -0
- package/dist/cache/store.js.map +1 -0
- package/dist/cache/trace.d.ts +146 -0
- package/dist/cache/trace.d.ts.map +1 -0
- package/dist/cache/trace.js +249 -0
- package/dist/cache/trace.js.map +1 -0
- package/dist/cli/bin.d.ts +3 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/bin.js +4 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/index.d.ts +4 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +108 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/init.d.ts +6 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +101 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/collect/collect.d.ts +44 -0
- package/dist/collect/collect.d.ts.map +1 -0
- package/dist/collect/collect.js +89 -0
- package/dist/collect/collect.js.map +1 -0
- package/dist/collect/registry.d.ts +47 -0
- package/dist/collect/registry.d.ts.map +1 -0
- package/dist/collect/registry.js +262 -0
- package/dist/collect/registry.js.map +1 -0
- package/dist/collect/select.d.ts +54 -0
- package/dist/collect/select.d.ts.map +1 -0
- package/dist/collect/select.js +230 -0
- package/dist/collect/select.js.map +1 -0
- package/dist/config/agent.d.ts +91 -0
- package/dist/config/agent.d.ts.map +1 -0
- package/dist/config/agent.js +232 -0
- package/dist/config/agent.js.map +1 -0
- package/dist/config/load.d.ts +23 -0
- package/dist/config/load.d.ts.map +1 -0
- package/dist/config/load.js +75 -0
- package/dist/config/load.js.map +1 -0
- package/dist/config/resolve.d.ts +94 -0
- package/dist/config/resolve.d.ts.map +1 -0
- package/dist/config/resolve.js +500 -0
- package/dist/config/resolve.js.map +1 -0
- package/dist/config/validate.d.ts +6 -0
- package/dist/config/validate.d.ts.map +1 -0
- package/dist/config/validate.js +21 -0
- package/dist/config/validate.js.map +1 -0
- package/dist/credentials.d.ts +7 -0
- package/dist/credentials.d.ts.map +1 -0
- package/dist/credentials.js +42 -0
- package/dist/credentials.js.map +1 -0
- package/dist/expect/async.d.ts +5 -0
- package/dist/expect/async.d.ts.map +1 -0
- package/dist/expect/async.js +186 -0
- package/dist/expect/async.js.map +1 -0
- package/dist/expect/index.d.ts +7 -0
- package/dist/expect/index.d.ts.map +1 -0
- package/dist/expect/index.js +23 -0
- package/dist/expect/index.js.map +1 -0
- package/dist/expect/values.d.ts +4 -0
- package/dist/expect/values.d.ts.map +1 -0
- package/dist/expect/values.js +108 -0
- package/dist/expect/values.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/ai-trace.d.ts +151 -0
- package/dist/internal/ai-trace.d.ts.map +1 -0
- package/dist/internal/ai-trace.js +360 -0
- package/dist/internal/ai-trace.js.map +1 -0
- package/dist/internal/brands.d.ts +9 -0
- package/dist/internal/brands.d.ts.map +1 -0
- package/dist/internal/brands.js +9 -0
- package/dist/internal/brands.js.map +1 -0
- package/dist/internal/debug.d.ts +43 -0
- package/dist/internal/debug.d.ts.map +1 -0
- package/dist/internal/debug.js +102 -0
- package/dist/internal/debug.js.map +1 -0
- package/dist/internal/errors.d.ts +98 -0
- package/dist/internal/errors.d.ts.map +1 -0
- package/dist/internal/errors.js +212 -0
- package/dist/internal/errors.js.map +1 -0
- package/dist/internal/globs.d.ts +29 -0
- package/dist/internal/globs.d.ts.map +1 -0
- package/dist/internal/globs.js +126 -0
- package/dist/internal/globs.js.map +1 -0
- package/dist/internal/ids.d.ts +32 -0
- package/dist/internal/ids.d.ts.map +1 -0
- package/dist/internal/ids.js +124 -0
- package/dist/internal/ids.js.map +1 -0
- package/dist/internal/json-value.d.ts +15 -0
- package/dist/internal/json-value.d.ts.map +1 -0
- package/dist/internal/json-value.js +61 -0
- package/dist/internal/json-value.js.map +1 -0
- package/dist/internal/package-version.d.ts +6 -0
- package/dist/internal/package-version.d.ts.map +1 -0
- package/dist/internal/package-version.js +14 -0
- package/dist/internal/package-version.js.map +1 -0
- package/dist/internal/realm-slot.d.ts +13 -0
- package/dist/internal/realm-slot.d.ts.map +1 -0
- package/dist/internal/realm-slot.js +23 -0
- package/dist/internal/realm-slot.js.map +1 -0
- package/dist/internal/redact.d.ts +33 -0
- package/dist/internal/redact.d.ts.map +1 -0
- package/dist/internal/redact.js +56 -0
- package/dist/internal/redact.js.map +1 -0
- package/dist/internal/regexp.d.ts +10 -0
- package/dist/internal/regexp.d.ts.map +1 -0
- package/dist/internal/regexp.js +27 -0
- package/dist/internal/regexp.js.map +1 -0
- package/dist/internal/text.d.ts +39 -0
- package/dist/internal/text.d.ts.map +1 -0
- package/dist/internal/text.js +66 -0
- package/dist/internal/text.js.map +1 -0
- package/dist/internal/time.d.ts +37 -0
- package/dist/internal/time.d.ts.map +1 -0
- package/dist/internal/time.js +91 -0
- package/dist/internal/time.js.map +1 -0
- package/dist/internal/trace.d.ts +18 -0
- package/dist/internal/trace.d.ts.map +1 -0
- package/dist/internal/trace.js +46 -0
- package/dist/internal/trace.js.map +1 -0
- package/dist/internal/urls.d.ts +31 -0
- package/dist/internal/urls.d.ts.map +1 -0
- package/dist/internal/urls.js +95 -0
- package/dist/internal/urls.js.map +1 -0
- package/dist/locator/engine.d.ts +65 -0
- package/dist/locator/engine.d.ts.map +1 -0
- package/dist/locator/engine.js +164 -0
- package/dist/locator/engine.js.map +1 -0
- package/dist/locator/expression.d.ts +19 -0
- package/dist/locator/expression.d.ts.map +1 -0
- package/dist/locator/expression.js +85 -0
- package/dist/locator/expression.js.map +1 -0
- package/dist/locator/screen.d.ts +36 -0
- package/dist/locator/screen.d.ts.map +1 -0
- package/dist/locator/screen.js +281 -0
- package/dist/locator/screen.js.map +1 -0
- package/dist/report/build.d.ts +214 -0
- package/dist/report/build.d.ts.map +1 -0
- package/dist/report/build.js +346 -0
- package/dist/report/build.js.map +1 -0
- package/dist/report/code-frame.d.ts +20 -0
- package/dist/report/code-frame.d.ts.map +1 -0
- package/dist/report/code-frame.js +73 -0
- package/dist/report/code-frame.js.map +1 -0
- package/dist/report/debug-steps.d.ts +14 -0
- package/dist/report/debug-steps.d.ts.map +1 -0
- package/dist/report/debug-steps.js +85 -0
- package/dist/report/debug-steps.js.map +1 -0
- package/dist/report/list.d.ts +80 -0
- package/dist/report/list.d.ts.map +1 -0
- package/dist/report/list.js +372 -0
- package/dist/report/list.js.map +1 -0
- package/dist/report/live-status.d.ts +51 -0
- package/dist/report/live-status.d.ts.map +1 -0
- package/dist/report/live-status.js +162 -0
- package/dist/report/live-status.js.map +1 -0
- package/dist/report/write.d.ts +4 -0
- package/dist/report/write.d.ts.map +1 -0
- package/dist/report/write.js +13 -0
- package/dist/report/write.js.map +1 -0
- package/dist/run/app-process.d.ts +18 -0
- package/dist/run/app-process.d.ts.map +1 -0
- package/dist/run/app-process.js +112 -0
- package/dist/run/app-process.js.map +1 -0
- package/dist/run/artifacts.d.ts +51 -0
- package/dist/run/artifacts.d.ts.map +1 -0
- package/dist/run/artifacts.js +114 -0
- package/dist/run/artifacts.js.map +1 -0
- package/dist/run/events.d.ts +100 -0
- package/dist/run/events.d.ts.map +1 -0
- package/dist/run/events.js +59 -0
- package/dist/run/events.js.map +1 -0
- package/dist/run/execute.d.ts +119 -0
- package/dist/run/execute.d.ts.map +1 -0
- package/dist/run/execute.js +555 -0
- package/dist/run/execute.js.map +1 -0
- package/dist/run/fixtures.d.ts +40 -0
- package/dist/run/fixtures.d.ts.map +1 -0
- package/dist/run/fixtures.js +408 -0
- package/dist/run/fixtures.js.map +1 -0
- package/dist/run/in-process.d.ts +24 -0
- package/dist/run/in-process.d.ts.map +1 -0
- package/dist/run/in-process.js +120 -0
- package/dist/run/in-process.js.map +1 -0
- package/dist/run/public.d.ts +19 -0
- package/dist/run/public.d.ts.map +1 -0
- package/dist/run/public.js +11 -0
- package/dist/run/public.js.map +1 -0
- package/dist/run/realm.d.ts +52 -0
- package/dist/run/realm.d.ts.map +1 -0
- package/dist/run/realm.js +101 -0
- package/dist/run/realm.js.map +1 -0
- package/dist/run/records.d.ts +87 -0
- package/dist/run/records.d.ts.map +1 -0
- package/dist/run/records.js +3 -0
- package/dist/run/records.js.map +1 -0
- package/dist/run/retry.d.ts +18 -0
- package/dist/run/retry.d.ts.map +1 -0
- package/dist/run/retry.js +33 -0
- package/dist/run/retry.js.map +1 -0
- package/dist/run/runner.d.ts +49 -0
- package/dist/run/runner.d.ts.map +1 -0
- package/dist/run/runner.js +375 -0
- package/dist/run/runner.js.map +1 -0
- package/dist/run/scheduler.d.ts +45 -0
- package/dist/run/scheduler.d.ts.map +1 -0
- package/dist/run/scheduler.js +512 -0
- package/dist/run/scheduler.js.map +1 -0
- package/dist/run/serial.d.ts +52 -0
- package/dist/run/serial.d.ts.map +1 -0
- package/dist/run/serial.js +247 -0
- package/dist/run/serial.js.map +1 -0
- package/dist/run/sessions.d.ts +54 -0
- package/dist/run/sessions.d.ts.map +1 -0
- package/dist/run/sessions.js +221 -0
- package/dist/run/sessions.js.map +1 -0
- package/dist/run/steps.d.ts +196 -0
- package/dist/run/steps.d.ts.map +1 -0
- package/dist/run/steps.js +151 -0
- package/dist/run/steps.js.map +1 -0
- package/dist/run/unit-runner.d.ts +30 -0
- package/dist/run/unit-runner.d.ts.map +1 -0
- package/dist/run/unit-runner.js +11 -0
- package/dist/run/unit-runner.js.map +1 -0
- package/dist/run/units.d.ts +50 -0
- package/dist/run/units.d.ts.map +1 -0
- package/dist/run/units.js +103 -0
- package/dist/run/units.js.map +1 -0
- package/dist/run/worker/entry.d.ts +8 -0
- package/dist/run/worker/entry.d.ts.map +1 -0
- package/dist/run/worker/entry.js +137 -0
- package/dist/run/worker/entry.js.map +1 -0
- package/dist/run/worker/handle.d.ts +10 -0
- package/dist/run/worker/handle.d.ts.map +1 -0
- package/dist/run/worker/handle.js +74 -0
- package/dist/run/worker/handle.js.map +1 -0
- package/dist/run/worker/protocol.d.ts +129 -0
- package/dist/run/worker/protocol.d.ts.map +1 -0
- package/dist/run/worker/protocol.js +18 -0
- package/dist/run/worker/protocol.js.map +1 -0
- package/dist/run/worker/session.d.ts +69 -0
- package/dist/run/worker/session.d.ts.map +1 -0
- package/dist/run/worker/session.js +123 -0
- package/dist/run/worker/session.js.map +1 -0
- package/dist/types.d.ts +630 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/package.json +91 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,630 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public sdk-0.1 types. These mirror the canonical declarations in
|
|
3
|
+
* spec/api/e2e.d.ts; the spec file wins on any divergence.
|
|
4
|
+
*/
|
|
5
|
+
import type { credentialBrand, expectationBrand, secretBrand, testCaseBrand } from './internal/brands.ts';
|
|
6
|
+
import type { StepExecutor } from './agent/executor.ts';
|
|
7
|
+
import type { BackendHandle } from './backend/index.ts';
|
|
8
|
+
import type { TraceCacheStore } from './cache/store.ts';
|
|
9
|
+
export type { CacheReadResult, TraceCacheStore } from './cache/store.ts';
|
|
10
|
+
export type { ActionTrace, RecordedAction, TraceEntry, TraceTargetDescriptor, } from './cache/trace.ts';
|
|
11
|
+
export type JsonPrimitive = string | number | boolean | null;
|
|
12
|
+
export type JsonValue = JsonPrimitive | {
|
|
13
|
+
readonly [key: string]: JsonValue;
|
|
14
|
+
} | readonly JsonValue[];
|
|
15
|
+
export type Platform = 'web' | 'ios' | 'android' | (string & {});
|
|
16
|
+
export type Capability = string;
|
|
17
|
+
export type ScrollDirection = 'up' | 'down' | 'left' | 'right';
|
|
18
|
+
export type Momentum = 'none' | 'slow' | 'fast';
|
|
19
|
+
/** Opaque host-side value accepted only by sensitive input sinks. */
|
|
20
|
+
export interface Secret {
|
|
21
|
+
readonly name: string;
|
|
22
|
+
readonly purpose: 'password' | 'one-time-code' | 'generic-secret';
|
|
23
|
+
readonly [secretBrand]: true;
|
|
24
|
+
}
|
|
25
|
+
/** Named test identity. The password remains an opaque Secret. */
|
|
26
|
+
export interface Credential {
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly username: string;
|
|
29
|
+
readonly password: Secret;
|
|
30
|
+
readonly [credentialBrand]: true;
|
|
31
|
+
}
|
|
32
|
+
export interface Credentials {
|
|
33
|
+
/** Resolves a named credential without exposing its password. */
|
|
34
|
+
user(name: string): Credential;
|
|
35
|
+
}
|
|
36
|
+
export interface StandardSchemaV1<Input = unknown, Output = Input> {
|
|
37
|
+
readonly '~standard': StandardSchemaV1.Props<Input, Output>;
|
|
38
|
+
}
|
|
39
|
+
export declare namespace StandardSchemaV1 {
|
|
40
|
+
interface Props<Input = unknown, Output = Input> {
|
|
41
|
+
readonly version: 1;
|
|
42
|
+
readonly vendor: string;
|
|
43
|
+
readonly validate: (value: unknown, options?: Options | undefined) => Result<Output> | Promise<Result<Output>>;
|
|
44
|
+
readonly types?: Types<Input, Output> | undefined;
|
|
45
|
+
}
|
|
46
|
+
interface Options {
|
|
47
|
+
readonly libraryOptions?: Record<string, unknown> | undefined;
|
|
48
|
+
}
|
|
49
|
+
interface Types<Input = unknown, Output = Input> {
|
|
50
|
+
readonly input: Input;
|
|
51
|
+
readonly output: Output;
|
|
52
|
+
}
|
|
53
|
+
type Result<Output> = SuccessResult<Output> | FailureResult;
|
|
54
|
+
interface SuccessResult<Output> {
|
|
55
|
+
readonly value: Output;
|
|
56
|
+
readonly issues?: undefined;
|
|
57
|
+
}
|
|
58
|
+
interface FailureResult {
|
|
59
|
+
readonly issues: readonly Issue[];
|
|
60
|
+
}
|
|
61
|
+
interface Issue {
|
|
62
|
+
readonly message: string;
|
|
63
|
+
readonly path?: readonly (PropertyKey | PathSegment)[] | undefined;
|
|
64
|
+
}
|
|
65
|
+
interface PathSegment {
|
|
66
|
+
readonly key: PropertyKey;
|
|
67
|
+
}
|
|
68
|
+
type InferOutput<Schema extends StandardSchemaV1> = NonNullable<Schema['~standard']['types']>['output'];
|
|
69
|
+
}
|
|
70
|
+
export type AgentParam = JsonPrimitive | Secret | readonly AgentParam[] | {
|
|
71
|
+
readonly [key: string]: AgentParam;
|
|
72
|
+
};
|
|
73
|
+
export type AgentParams = Readonly<Record<string, AgentParam>>;
|
|
74
|
+
/**
|
|
75
|
+
* What evidence the model is given: the semantic tree, a masked screenshot of
|
|
76
|
+
* the current observation, or both.
|
|
77
|
+
*
|
|
78
|
+
* - `false` — the tree.
|
|
79
|
+
* - `true` — the tree and a screenshot, on every call.
|
|
80
|
+
* - `'fallback'` — the tree, escalating to add a screenshot once the tree turns
|
|
81
|
+
* out not to describe the target.
|
|
82
|
+
* - `'only'` — the screenshot, and not the tree.
|
|
83
|
+
*
|
|
84
|
+
* `'only'` exists because a tree sent alongside pixels is a cheaper path to an
|
|
85
|
+
* answer, and a model will take it: asked whether a form is covered by an
|
|
86
|
+
* overlay, it can read from the tree that the form is present and named and
|
|
87
|
+
* answer yes, while the pixels show the overlay. For a judgment that is about
|
|
88
|
+
* what the screen presents, the tree is a distractor, so the mode that means it
|
|
89
|
+
* removes it. It also costs fewer input tokens than `true`, not more.
|
|
90
|
+
*
|
|
91
|
+
* A judgment always produces an answer from the tree, so `'fallback'` behaves
|
|
92
|
+
* like `false` for `assert`, `waitFor`, and `extract`; use `true` or `'only'`
|
|
93
|
+
* to have pixels judged.
|
|
94
|
+
*
|
|
95
|
+
* In every mode that sends pixels but also the tree, pixel evidence degrades
|
|
96
|
+
* away rather than failing the call when it cannot be proven redacted. `'only'`
|
|
97
|
+
* has nothing to degrade to, so it fails with `POLICY_DENIED` instead of
|
|
98
|
+
* answering the wrong question from the tree.
|
|
99
|
+
*/
|
|
100
|
+
export type VisionMode = boolean | 'fallback' | 'only';
|
|
101
|
+
export interface VisionOption {
|
|
102
|
+
vision?: VisionMode;
|
|
103
|
+
}
|
|
104
|
+
export interface AgentOptions extends VisionOption {
|
|
105
|
+
timeout?: number;
|
|
106
|
+
maxSteps?: number;
|
|
107
|
+
maxModelCalls?: number;
|
|
108
|
+
}
|
|
109
|
+
export interface AgentSchemaOptions<Schema extends StandardSchemaV1> extends AgentOptions {
|
|
110
|
+
schema: Schema;
|
|
111
|
+
}
|
|
112
|
+
export interface AgentResult {
|
|
113
|
+
readonly ok: true;
|
|
114
|
+
}
|
|
115
|
+
export interface AgentResultWithData<Output> extends AgentResult {
|
|
116
|
+
readonly data: Output;
|
|
117
|
+
}
|
|
118
|
+
export type AgentErrorCode = 'AUTH_CREDENTIAL_UNAVAILABLE' | 'AUTH_CREDENTIAL_INVALID' | 'AUTHENTICATION_FAILED' | 'ENVIRONMENT_UNAVAILABLE' | 'SEED_DATA_MISSING' | 'TEST_SETUP_FAILED' | 'MODEL_UNAVAILABLE' | 'MODEL_PROVIDER_FAILED' | 'MODEL_OUTPUT_INVALID' | 'APP_UNREACHABLE' | 'APP_NOT_OPEN' | 'LOCATOR_NOT_FOUND' | 'LOCATOR_AMBIGUOUS' | 'ACTION_FAILED' | 'AUTOMATION_UNSUPPORTED' | 'POLICY_DENIED' | 'STEP_BUDGET_EXHAUSTED' | 'STEP_TIMEOUT' | 'STEP_NO_CONCLUSION' | 'ASSERTION_FAILED' | 'CANCELLED';
|
|
119
|
+
export interface Agent {
|
|
120
|
+
/** Plans a flow and validates its structured result with Standard Schema v1. */
|
|
121
|
+
act<Schema extends StandardSchemaV1>(instruction: string, params: AgentParams | undefined, options: AgentSchemaOptions<Schema>): Promise<AgentResultWithData<StandardSchemaV1.InferOutput<Schema>>>;
|
|
122
|
+
/** Plans and executes a bounded multi-action flow. */
|
|
123
|
+
act(instruction: string, params?: AgentParams, options?: AgentOptions): Promise<AgentResult>;
|
|
124
|
+
/** Polls a natural-language condition until true or timed out. */
|
|
125
|
+
waitFor(condition: string, options?: VisionOption & {
|
|
126
|
+
timeout?: number;
|
|
127
|
+
intervalMs?: number;
|
|
128
|
+
maxModelCalls?: number;
|
|
129
|
+
}): Promise<void>;
|
|
130
|
+
/** Extracts and validates structured screen data. */
|
|
131
|
+
extract<Schema extends StandardSchemaV1>(instruction: string, options: VisionOption & {
|
|
132
|
+
schema: Schema;
|
|
133
|
+
timeout?: number;
|
|
134
|
+
maxModelCalls?: number;
|
|
135
|
+
}): Promise<StandardSchemaV1.InferOutput<Schema>>;
|
|
136
|
+
/** Judges a natural-language assertion against fresh observations. */
|
|
137
|
+
assert(assertion: string, options?: VisionOption & {
|
|
138
|
+
timeout?: number;
|
|
139
|
+
screenshot?: boolean;
|
|
140
|
+
}): Promise<void>;
|
|
141
|
+
}
|
|
142
|
+
export type Role = 'button' | 'link' | 'textbox' | 'checkbox' | 'switch' | 'slider' | 'image' | 'heading' | 'tab' | 'menuitem' | 'listitem' | 'status' | 'dialog' | 'alert';
|
|
143
|
+
export type TextMatch = string | RegExp;
|
|
144
|
+
export interface TextMatchOptions {
|
|
145
|
+
exact?: boolean;
|
|
146
|
+
}
|
|
147
|
+
export interface RoleOptions extends TextMatchOptions {
|
|
148
|
+
name?: TextMatch;
|
|
149
|
+
checked?: boolean;
|
|
150
|
+
disabled?: boolean;
|
|
151
|
+
selected?: boolean;
|
|
152
|
+
expanded?: boolean;
|
|
153
|
+
hidden?: boolean;
|
|
154
|
+
}
|
|
155
|
+
export interface ActionOptions {
|
|
156
|
+
timeout?: number;
|
|
157
|
+
}
|
|
158
|
+
export interface SwipeOptions {
|
|
159
|
+
direction: ScrollDirection;
|
|
160
|
+
momentum?: Momentum;
|
|
161
|
+
}
|
|
162
|
+
export type SelectOption = string | {
|
|
163
|
+
label: string;
|
|
164
|
+
index?: never;
|
|
165
|
+
} | {
|
|
166
|
+
label?: never;
|
|
167
|
+
index: number;
|
|
168
|
+
};
|
|
169
|
+
export interface Screen {
|
|
170
|
+
/** Creates a lazy role query. */
|
|
171
|
+
getByRole(role: Role, options?: RoleOptions): Locator;
|
|
172
|
+
/** Creates a lazy accessible-label query. */
|
|
173
|
+
getByLabel(text: TextMatch, options?: TextMatchOptions): Locator;
|
|
174
|
+
/** Creates a lazy placeholder query. */
|
|
175
|
+
getByPlaceholder(text: TextMatch, options?: TextMatchOptions): Locator;
|
|
176
|
+
/** Creates a lazy visible-text query. */
|
|
177
|
+
getByText(text: TextMatch, options?: TextMatchOptions): Locator;
|
|
178
|
+
/** Creates a lazy displayed-value query. */
|
|
179
|
+
getByDisplayValue(value: TextMatch, options?: TextMatchOptions): Locator;
|
|
180
|
+
/** Creates a lazy test-id query. */
|
|
181
|
+
getByTestId(id: string): Locator;
|
|
182
|
+
/** Performs a viewport-level swipe. */
|
|
183
|
+
swipe(options: SwipeOptions): Promise<void>;
|
|
184
|
+
/** Scrolls until a locator resolves visibly or times out. */
|
|
185
|
+
scrollUntilVisible(target: Locator, options?: {
|
|
186
|
+
direction?: ScrollDirection;
|
|
187
|
+
timeout?: number;
|
|
188
|
+
}): Promise<void>;
|
|
189
|
+
}
|
|
190
|
+
export interface Locator extends Screen {
|
|
191
|
+
/** Taps exactly one matching actionable node. */
|
|
192
|
+
tap(options?: ActionOptions): Promise<void>;
|
|
193
|
+
/** Alias of tap. */
|
|
194
|
+
click(options?: ActionOptions): Promise<void>;
|
|
195
|
+
/** Double-taps exactly one matching actionable node. */
|
|
196
|
+
doubleTap(options?: ActionOptions): Promise<void>;
|
|
197
|
+
/** Long-presses exactly one matching actionable node. */
|
|
198
|
+
longPress(options?: ActionOptions & {
|
|
199
|
+
durationMs?: number;
|
|
200
|
+
}): Promise<void>;
|
|
201
|
+
/** Fills exactly one input. Secret values are never logged. */
|
|
202
|
+
fill(value: string | Secret, options?: ActionOptions): Promise<void>;
|
|
203
|
+
/** Clears exactly one input. */
|
|
204
|
+
clear(options?: ActionOptions): Promise<void>;
|
|
205
|
+
/** Sends one key to exactly one node. */
|
|
206
|
+
press(key: string, options?: ActionOptions): Promise<void>;
|
|
207
|
+
/** Checks exactly one node. */
|
|
208
|
+
check(options?: ActionOptions): Promise<void>;
|
|
209
|
+
/** Unchecks exactly one node. */
|
|
210
|
+
uncheck(options?: ActionOptions): Promise<void>;
|
|
211
|
+
/** Selects one option from exactly one control. */
|
|
212
|
+
selectOption(value: SelectOption, options?: ActionOptions): Promise<void>;
|
|
213
|
+
/** Focuses exactly one node. */
|
|
214
|
+
focus(options?: ActionOptions): Promise<void>;
|
|
215
|
+
/** Hovers over exactly one matching actionable node. */
|
|
216
|
+
hover(options?: ActionOptions): Promise<void>;
|
|
217
|
+
/** Sets the files of exactly one file input; paths resolve from the project root. */
|
|
218
|
+
setInputFiles(paths: string | readonly string[], options?: ActionOptions): Promise<void>;
|
|
219
|
+
/** Drags exactly one node to exactly one target. */
|
|
220
|
+
dragTo(target: Locator, options?: ActionOptions): Promise<void>;
|
|
221
|
+
/** Scrolls exactly one node into view. */
|
|
222
|
+
scrollIntoView(options?: ActionOptions): Promise<void>;
|
|
223
|
+
/** Performs a swipe scoped to exactly one node. */
|
|
224
|
+
swipe(options: SwipeOptions & ActionOptions): Promise<void>;
|
|
225
|
+
/** Reads normalized text without retrying for a particular value. */
|
|
226
|
+
textContent(): Promise<string | null>;
|
|
227
|
+
/** Reads the current input value. */
|
|
228
|
+
inputValue(): Promise<string>;
|
|
229
|
+
/** Reads one exposed attribute. */
|
|
230
|
+
getAttribute(name: string): Promise<string | null>;
|
|
231
|
+
/** Reads current visibility. */
|
|
232
|
+
isVisible(): Promise<boolean>;
|
|
233
|
+
/** Reads current enabled state. */
|
|
234
|
+
isEnabled(): Promise<boolean>;
|
|
235
|
+
/** Reads current checked state. */
|
|
236
|
+
isChecked(): Promise<boolean>;
|
|
237
|
+
/** Reads the current viewport-relative rectangle. */
|
|
238
|
+
boundingBox(): Promise<{
|
|
239
|
+
x: number;
|
|
240
|
+
y: number;
|
|
241
|
+
width: number;
|
|
242
|
+
height: number;
|
|
243
|
+
} | null>;
|
|
244
|
+
/** Counts current matches without auto-waiting. */
|
|
245
|
+
count(): Promise<number>;
|
|
246
|
+
/** Waits for the requested locator state. */
|
|
247
|
+
waitFor(options?: {
|
|
248
|
+
state?: 'visible' | 'hidden';
|
|
249
|
+
timeout?: number;
|
|
250
|
+
}): Promise<void>;
|
|
251
|
+
/** Adds deterministic locator filters. */
|
|
252
|
+
filter(options: {
|
|
253
|
+
hasText?: TextMatch;
|
|
254
|
+
has?: Locator;
|
|
255
|
+
}): Locator;
|
|
256
|
+
/** Selects the first current match. */
|
|
257
|
+
first(): Locator;
|
|
258
|
+
/** Selects the last current match. */
|
|
259
|
+
last(): Locator;
|
|
260
|
+
/** Selects one zero-based current match. */
|
|
261
|
+
nth(index: number): Locator;
|
|
262
|
+
}
|
|
263
|
+
export interface App {
|
|
264
|
+
/** Opens the configured app URL or a path relative to it. */
|
|
265
|
+
open(path?: string): Promise<void>;
|
|
266
|
+
/** Recreates the execution context while preserving persisted state. */
|
|
267
|
+
restart(): Promise<void>;
|
|
268
|
+
/** Clears persisted client state and relaunches. */
|
|
269
|
+
clearState(): Promise<void>;
|
|
270
|
+
/** Navigates back once. */
|
|
271
|
+
back(): Promise<void>;
|
|
272
|
+
/** Opens an allowed deep or universal link. */
|
|
273
|
+
deepLink(url: string): Promise<void>;
|
|
274
|
+
/** Captures a redacted evidence screenshot. */
|
|
275
|
+
screenshot(label?: string): Promise<string>;
|
|
276
|
+
}
|
|
277
|
+
export interface SetupSession {
|
|
278
|
+
/** Saves state under a setup-declared name. */
|
|
279
|
+
save(name: string): Promise<void>;
|
|
280
|
+
}
|
|
281
|
+
export interface TestFixtures {
|
|
282
|
+
readonly agent: Agent;
|
|
283
|
+
readonly app: App;
|
|
284
|
+
readonly screen: Screen;
|
|
285
|
+
readonly platform: Platform;
|
|
286
|
+
}
|
|
287
|
+
export interface SetupFixtures extends TestFixtures {
|
|
288
|
+
readonly session: SetupSession;
|
|
289
|
+
}
|
|
290
|
+
export interface SuiteFixtures {
|
|
291
|
+
readonly platform: Platform;
|
|
292
|
+
}
|
|
293
|
+
export interface TestOptions {
|
|
294
|
+
timeout?: number;
|
|
295
|
+
retries?: number;
|
|
296
|
+
tags?: readonly string[];
|
|
297
|
+
skip?: boolean | string;
|
|
298
|
+
only?: boolean;
|
|
299
|
+
platforms?: readonly Platform[];
|
|
300
|
+
requires?: readonly Capability[];
|
|
301
|
+
session?: string;
|
|
302
|
+
agentContext?: string;
|
|
303
|
+
}
|
|
304
|
+
export interface DescribeOptions extends Omit<TestOptions, 'only'> {
|
|
305
|
+
serial?: boolean;
|
|
306
|
+
}
|
|
307
|
+
export interface SetupOptions extends Omit<TestOptions, 'session' | 'only' | 'skip'> {
|
|
308
|
+
/** Session names this setup test MUST save. */
|
|
309
|
+
sessions: readonly string[];
|
|
310
|
+
}
|
|
311
|
+
export type TestFn<Fixtures = TestFixtures> = (fixtures: Fixtures) => void | Promise<void>;
|
|
312
|
+
export type SetupFn<Fixtures = TestFixtures> = (fixtures: Fixtures & SetupFixtures) => void | Promise<void>;
|
|
313
|
+
export type TestHookFn<Fixtures = TestFixtures> = (fixtures: Fixtures) => void | Promise<void>;
|
|
314
|
+
export type SuiteHookFn = (fixtures: SuiteFixtures) => void | Promise<void>;
|
|
315
|
+
export type SynchronousBody<Result> = Extract<Result, PromiseLike<unknown>> extends never ? () => Result : never;
|
|
316
|
+
export interface TestCase {
|
|
317
|
+
readonly [testCaseBrand]: true;
|
|
318
|
+
}
|
|
319
|
+
export interface TestAPI<Fixtures = TestFixtures> {
|
|
320
|
+
/** Registers one test synchronously during module evaluation. */
|
|
321
|
+
(title: string, fn: TestFn<Fixtures>): TestCase;
|
|
322
|
+
/** Registers one configured test synchronously during module evaluation. */
|
|
323
|
+
(title: string, options: TestOptions, fn: TestFn<Fixtures>): TestCase;
|
|
324
|
+
/** Registers one skipped test. */
|
|
325
|
+
skip(title: string, fn: TestFn<Fixtures>): TestCase;
|
|
326
|
+
/** Registers one focused local test. CI rejects focused tests. */
|
|
327
|
+
only(title: string, fn: TestFn<Fixtures>): TestCase;
|
|
328
|
+
/** Registers one setup test with statically declared session outputs. */
|
|
329
|
+
setup(title: string, options: SetupOptions, fn: SetupFn<Fixtures>): TestCase;
|
|
330
|
+
/**
|
|
331
|
+
* Returns the same runtime `test`, typed with a backend's contributed
|
|
332
|
+
* fixtures. A pure type refinement — the fixtures still resolve from the
|
|
333
|
+
* target's backend at runtime — so a project types its device/desktop/web
|
|
334
|
+
* surface without a global `declare module` augmentation:
|
|
335
|
+
*
|
|
336
|
+
* export const test = base.extend<{ device: Device }>();
|
|
337
|
+
*/
|
|
338
|
+
extend<Extra>(): TestAPI<Fixtures & Extra>;
|
|
339
|
+
/** Declares a group synchronously. */
|
|
340
|
+
describe<Result>(title: string, body: SynchronousBody<Result>): void;
|
|
341
|
+
/** Declares a configured group synchronously. */
|
|
342
|
+
describe<Result>(title: string, options: DescribeOptions, body: SynchronousBody<Result>): void;
|
|
343
|
+
/** Registers a test-attempt setup hook. */
|
|
344
|
+
beforeEach(fn: TestHookFn<Fixtures>): void;
|
|
345
|
+
/** Registers a test-attempt teardown hook. */
|
|
346
|
+
afterEach(fn: TestHookFn<Fixtures>): void;
|
|
347
|
+
/** Registers a suite-instance setup hook. */
|
|
348
|
+
beforeAll(fn: SuiteHookFn): void;
|
|
349
|
+
/** Registers a suite-instance teardown hook. */
|
|
350
|
+
afterAll(fn: SuiteHookFn): void;
|
|
351
|
+
}
|
|
352
|
+
export interface AsyncExpectation {
|
|
353
|
+
readonly not: AsyncExpectation;
|
|
354
|
+
/** Waits for visibility. */
|
|
355
|
+
toBeVisible(options?: {
|
|
356
|
+
timeout?: number;
|
|
357
|
+
}): Promise<void>;
|
|
358
|
+
/** Waits for hidden or absent state. */
|
|
359
|
+
toBeHidden(options?: {
|
|
360
|
+
timeout?: number;
|
|
361
|
+
}): Promise<void>;
|
|
362
|
+
/** Waits for enabled state. */
|
|
363
|
+
toBeEnabled(options?: {
|
|
364
|
+
timeout?: number;
|
|
365
|
+
}): Promise<void>;
|
|
366
|
+
/** Waits for disabled state. */
|
|
367
|
+
toBeDisabled(options?: {
|
|
368
|
+
timeout?: number;
|
|
369
|
+
}): Promise<void>;
|
|
370
|
+
/** Waits for checked state. */
|
|
371
|
+
toBeChecked(options?: {
|
|
372
|
+
timeout?: number;
|
|
373
|
+
}): Promise<void>;
|
|
374
|
+
/** Waits for selected state. */
|
|
375
|
+
toBeSelected(options?: {
|
|
376
|
+
timeout?: number;
|
|
377
|
+
}): Promise<void>;
|
|
378
|
+
/** Waits for expanded state. */
|
|
379
|
+
toBeExpanded(options?: {
|
|
380
|
+
timeout?: number;
|
|
381
|
+
}): Promise<void>;
|
|
382
|
+
/** Waits for exact normalized text. */
|
|
383
|
+
toHaveText(expected: TextMatch, options?: {
|
|
384
|
+
timeout?: number;
|
|
385
|
+
}): Promise<void>;
|
|
386
|
+
/** Waits for contained normalized text. */
|
|
387
|
+
toContainText(expected: TextMatch, options?: {
|
|
388
|
+
timeout?: number;
|
|
389
|
+
}): Promise<void>;
|
|
390
|
+
/** Waits for an input value. */
|
|
391
|
+
toHaveValue(expected: TextMatch, options?: {
|
|
392
|
+
timeout?: number;
|
|
393
|
+
}): Promise<void>;
|
|
394
|
+
/** Waits for an exact match count. */
|
|
395
|
+
toHaveCount(expected: number, options?: {
|
|
396
|
+
timeout?: number;
|
|
397
|
+
}): Promise<void>;
|
|
398
|
+
/** Waits for an accessible name. */
|
|
399
|
+
toHaveAccessibleName(expected: TextMatch, options?: {
|
|
400
|
+
timeout?: number;
|
|
401
|
+
}): Promise<void>;
|
|
402
|
+
}
|
|
403
|
+
/**
|
|
404
|
+
* An object that carries its own expectation surface, so `expect(object)`
|
|
405
|
+
* returns `E`. Backend-contributed fixtures attach one through
|
|
406
|
+
* `BackendFixtureContext.expectable`; core never declares a platform's
|
|
407
|
+
* matchers, it only routes to them.
|
|
408
|
+
*/
|
|
409
|
+
export interface Expectable<E> {
|
|
410
|
+
readonly [expectationBrand]: E;
|
|
411
|
+
}
|
|
412
|
+
export interface ValueExpectation<T> {
|
|
413
|
+
readonly not: ValueExpectation<T>;
|
|
414
|
+
/** Compares with Object.is. */
|
|
415
|
+
toBe(expected: T): void;
|
|
416
|
+
/** Performs recursive structural equality. */
|
|
417
|
+
toEqual(expected: unknown): void;
|
|
418
|
+
/** Requires a truthy value. */
|
|
419
|
+
toBeTruthy(): void;
|
|
420
|
+
/** Requires a falsy value. */
|
|
421
|
+
toBeFalsy(): void;
|
|
422
|
+
/** Requires null. */
|
|
423
|
+
toBeNull(): void;
|
|
424
|
+
/** Requires undefined. */
|
|
425
|
+
toBeUndefined(): void;
|
|
426
|
+
/** Requires a non-nullish value. */
|
|
427
|
+
toBeDefined(): void;
|
|
428
|
+
/** Requires string or collection containment. */
|
|
429
|
+
toContain(expected: unknown): void;
|
|
430
|
+
/** Requires a string or regexp match. */
|
|
431
|
+
toMatch(expected: string | RegExp): void;
|
|
432
|
+
/** Requires a numeric lower bound. */
|
|
433
|
+
toBeGreaterThan(expected: number): void;
|
|
434
|
+
/** Requires a numeric upper bound. */
|
|
435
|
+
toBeLessThan(expected: number): void;
|
|
436
|
+
}
|
|
437
|
+
export interface CommandConfig {
|
|
438
|
+
executable: string;
|
|
439
|
+
args?: readonly string[];
|
|
440
|
+
cwd?: string;
|
|
441
|
+
env?: Readonly<Record<string, string>>;
|
|
442
|
+
startupTimeout?: number;
|
|
443
|
+
shutdownTimeout?: number;
|
|
444
|
+
}
|
|
445
|
+
export interface AppConfig {
|
|
446
|
+
url?: string;
|
|
447
|
+
command?: CommandConfig;
|
|
448
|
+
readyUrl?: string;
|
|
449
|
+
allowedOrigins?: readonly string[];
|
|
450
|
+
environment?: 'test' | 'staging' | 'production';
|
|
451
|
+
allowProduction?: boolean;
|
|
452
|
+
/**
|
|
453
|
+
* Stable logical identity of the app under test. By default cache and
|
|
454
|
+
* session identity derive from the base URL's origin, so an ephemeral
|
|
455
|
+
* per-deploy origin (a PR preview) cold-starts every entry. Setting an
|
|
456
|
+
* explicit identity keys them by what the app *is* instead of where it
|
|
457
|
+
* happens to be served this run. Never set one identity across genuinely
|
|
458
|
+
* different apps or environments — recorded traces would replay across them.
|
|
459
|
+
*/
|
|
460
|
+
identity?: string;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* One target: a named surface on one platform, served by a backend (RFC0002).
|
|
464
|
+
* What the target can do is graded from the backend's declared capabilities;
|
|
465
|
+
* with no `backend` the target is agent-tools-only and everything runs opaque.
|
|
466
|
+
*/
|
|
467
|
+
export interface Target {
|
|
468
|
+
name: string;
|
|
469
|
+
platform: Platform;
|
|
470
|
+
backend?: BackendHandle;
|
|
471
|
+
}
|
|
472
|
+
export interface ModelConfig {
|
|
473
|
+
provider: string;
|
|
474
|
+
id: string;
|
|
475
|
+
endpoint?: string;
|
|
476
|
+
/** Environment variable containing the provider credential. */
|
|
477
|
+
apiKeyEnv?: string;
|
|
478
|
+
}
|
|
479
|
+
/**
|
|
480
|
+
* A live AI SDK language model instance, e.g. `openai('gpt-4o')` from
|
|
481
|
+
* `@ai-sdk/openai` or any other provider implementing the AI SDK
|
|
482
|
+
* `LanguageModelV2+` specification. The instance owns its own transport and
|
|
483
|
+
* credentials. Detection is structural, so any AI SDK provider package works
|
|
484
|
+
* without this runner depending on it.
|
|
485
|
+
*/
|
|
486
|
+
export interface ModelInstance {
|
|
487
|
+
readonly specificationVersion: string;
|
|
488
|
+
readonly provider: string;
|
|
489
|
+
readonly modelId: string;
|
|
490
|
+
}
|
|
491
|
+
/** Trace cache posture. In CI, `read-write` is forced down to `read-only`. */
|
|
492
|
+
export type CacheMode = 'off' | 'read-only' | 'read-write';
|
|
493
|
+
/**
|
|
494
|
+
* Trace cache configuration. The store abstraction is the cloud seam: the
|
|
495
|
+
* default file store keeps entries under `.e2e/cache/`, and a custom
|
|
496
|
+
* `TraceCacheStore` (Redis, an API — anything implementing read/write over
|
|
497
|
+
* key digests) replaces it wholesale. Like agents and model instances, a
|
|
498
|
+
* store never crosses a process boundary: workers re-resolve the config
|
|
499
|
+
* module and construct their own.
|
|
500
|
+
*/
|
|
501
|
+
export interface CacheConfig {
|
|
502
|
+
mode?: CacheMode;
|
|
503
|
+
/** Custom entry store; undefined selects the file store at `dir`. */
|
|
504
|
+
store?: TraceCacheStore;
|
|
505
|
+
/** File store directory, resolved against the project root. */
|
|
506
|
+
dir?: string;
|
|
507
|
+
}
|
|
508
|
+
/**
|
|
509
|
+
* One produced artifact as handed to an `ArtifactStore`, the moment it is
|
|
510
|
+
* complete on disk: its bytes, digest, and report identity. `path` is the
|
|
511
|
+
* report-relative path the record carries, stable across runs of the same
|
|
512
|
+
* test, so a host may use it as its own key.
|
|
513
|
+
*/
|
|
514
|
+
export interface StoredArtifact {
|
|
515
|
+
readonly kind: 'screenshot' | 'trace' | 'video' | 'download' | 'log';
|
|
516
|
+
readonly mediaType: string;
|
|
517
|
+
readonly bytes: Uint8Array;
|
|
518
|
+
readonly size: number;
|
|
519
|
+
readonly sha256: string;
|
|
520
|
+
/** Report-relative path with `/` separators. */
|
|
521
|
+
readonly path: string;
|
|
522
|
+
readonly runId: string;
|
|
523
|
+
readonly testId: string;
|
|
524
|
+
readonly attemptId: string;
|
|
525
|
+
/** The step that produced it, when one was running. */
|
|
526
|
+
readonly stepId?: string;
|
|
527
|
+
}
|
|
528
|
+
/**
|
|
529
|
+
* Where artifacts go. The default keeps them under the artifacts directory,
|
|
530
|
+
* and the report records their paths. A host-supplied store (object storage,
|
|
531
|
+
* an API) receives every artifact as it is produced — not after the run — and
|
|
532
|
+
* returns its own reference, which the report records as the artifact's
|
|
533
|
+
* `ref` beside the local path. The cloud seam for evidence, the way
|
|
534
|
+
* `TraceCacheStore` is for traces. A failed `put` never fails the run: the
|
|
535
|
+
* record simply carries no `ref`. Like every live value, a store never
|
|
536
|
+
* crosses a process boundary.
|
|
537
|
+
*/
|
|
538
|
+
export interface ArtifactStore {
|
|
539
|
+
put(artifact: StoredArtifact): Promise<{
|
|
540
|
+
readonly ref: string;
|
|
541
|
+
}>;
|
|
542
|
+
}
|
|
543
|
+
/** Artifact configuration: which kinds to capture, and where they go. */
|
|
544
|
+
export interface ArtifactsConfig {
|
|
545
|
+
/** Kinds to capture; defaults to screenshot and trace. */
|
|
546
|
+
kinds?: readonly ('trace' | 'screenshot')[];
|
|
547
|
+
/** Host store every produced artifact is handed to; undefined keeps files local only. */
|
|
548
|
+
store?: ArtifactStore;
|
|
549
|
+
}
|
|
550
|
+
/** Agent options for the built-in agent; `agent` also accepts a StepExecutor. */
|
|
551
|
+
export interface AgentConfig {
|
|
552
|
+
/**
|
|
553
|
+
* The step executor `agent.act()` dispatches to, alongside the options —
|
|
554
|
+
* a custom brain no longer forfeits `model`, budgets, or `context`
|
|
555
|
+
* (RFC0002). Omitted selects the built-in agent.
|
|
556
|
+
*/
|
|
557
|
+
executor?: StepExecutor;
|
|
558
|
+
model?: string | ModelConfig | ModelInstance;
|
|
559
|
+
/** Model used by calls with `vision`; falls back to `model`. */
|
|
560
|
+
visionModel?: string | ModelConfig | ModelInstance;
|
|
561
|
+
maxSteps?: number;
|
|
562
|
+
maxModelCalls?: number;
|
|
563
|
+
maxObservationBytes?: number;
|
|
564
|
+
context?: string;
|
|
565
|
+
/** Project-wide default for the per-call `vision` option. */
|
|
566
|
+
vision?: VisionMode;
|
|
567
|
+
}
|
|
568
|
+
export interface E2EConfig {
|
|
569
|
+
specVersion?: '0.1';
|
|
570
|
+
projectId?: string;
|
|
571
|
+
app?: AppConfig;
|
|
572
|
+
targets?: readonly Target[];
|
|
573
|
+
tests?: string | readonly string[];
|
|
574
|
+
timeout?: number;
|
|
575
|
+
launchTimeout?: number;
|
|
576
|
+
actionTimeout?: number;
|
|
577
|
+
assertionTimeout?: number;
|
|
578
|
+
cleanupTimeout?: number;
|
|
579
|
+
retries?: number;
|
|
580
|
+
workers?: number;
|
|
581
|
+
/** Artifact kinds, or `{ kinds, store }` to also hand every artifact to a host store. */
|
|
582
|
+
artifacts?: readonly ('trace' | 'screenshot')[] | ArtifactsConfig;
|
|
583
|
+
reporters?: readonly ('list' | 'json')[];
|
|
584
|
+
screen?: {
|
|
585
|
+
testIdAttribute?: string;
|
|
586
|
+
};
|
|
587
|
+
/**
|
|
588
|
+
* Either the agent options block, or the agent itself: `createAgent(...)`
|
|
589
|
+
* from `@e2edev/e2e/agent`, or any hand-rolled `StepExecutor` (RFC0001 layer 4).
|
|
590
|
+
* With an agent value, the model falls back to `E2E_MODEL` and every other
|
|
591
|
+
* option keeps its default. Agents never cross a process boundary: workers
|
|
592
|
+
* re-resolve the config module and construct their own, exactly like model
|
|
593
|
+
* instances.
|
|
594
|
+
*/
|
|
595
|
+
agent?: AgentConfig | StepExecutor;
|
|
596
|
+
/**
|
|
597
|
+
* The adaptive trace cache (spec 10-determinism.md). Opt-out: unset means
|
|
598
|
+
* `read-write`, and `'off'` — or the `--no-cache` flag, which wins over the
|
|
599
|
+
* config — disables it. A string is shorthand for `{ mode }`. In CI,
|
|
600
|
+
* `read-write` is forced down to `read-only`: committed caches are
|
|
601
|
+
* untrusted input, and a CI run never publishes what it learned.
|
|
602
|
+
*/
|
|
603
|
+
cache?: CacheMode | CacheConfig;
|
|
604
|
+
/**
|
|
605
|
+
* Enforced resource ceilings only. A limit exists here exactly when the
|
|
606
|
+
* runner has an enforcement site for it; aspirational knobs are not
|
|
607
|
+
* accepted, so a configured limit is never a silent no-op.
|
|
608
|
+
*/
|
|
609
|
+
limits?: {
|
|
610
|
+
maxAgentContextBytes?: number;
|
|
611
|
+
maxLedgerBytes?: number;
|
|
612
|
+
maxEventsPerStep?: number;
|
|
613
|
+
maxModelTokensPerCall?: number;
|
|
614
|
+
};
|
|
615
|
+
credentials?: Readonly<Record<string, {
|
|
616
|
+
username: string;
|
|
617
|
+
password: string | SecretProvider;
|
|
618
|
+
allowedOrigins?: readonly string[];
|
|
619
|
+
}>>;
|
|
620
|
+
}
|
|
621
|
+
/**
|
|
622
|
+
* Resolves a secret's plaintext at fill time — a vault lookup, a freshly
|
|
623
|
+
* computed TOTP — instead of a value baked at config load. Called on every
|
|
624
|
+
* fill after the full authorization policy passes; the resolved value goes
|
|
625
|
+
* straight to the trusted driver, joins runner-side redaction, and is never
|
|
626
|
+
* logged, cached, or sent to a model. Like executors and stores, a provider
|
|
627
|
+
* never crosses a process boundary: workers re-resolve the config module.
|
|
628
|
+
*/
|
|
629
|
+
export type SecretProvider = () => string | Promise<string>;
|
|
630
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|