@cyberart-io/engine 0.0.11 → 0.0.12
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/CHANGELOG.md +13 -0
- package/README.md +1 -0
- package/dist/headless.d.ts +180 -1
- package/dist/headless.js +1 -1
- package/dist/index.d.ts +185 -1
- package/dist/index.js +1 -1
- package/docs/job-orchestration.md +2 -1
- package/docs/loading-indicator.md +95 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,19 @@ All notable changes to `@cyberart-io/engine`. Each entry links the guide in `doc
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## 0.0.12 — 2026-09-08
|
|
8
|
+
|
|
9
|
+
Loading-indicator contract and job submit payload validation. Additive: existing exports keep their signatures.
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **Deterministic loading indicator** — `createLoadingIndicatorController`, `parseLoadingIndicatorParams`, `parseLoadingIndicatorSnapshot`, `loadingIndicatorEventContracts`. Host-facing presentation-only contract with validated params (`schemaVersion`, `seed`, `mode`, optional `progress`/`stage`/`context`, bounded presentation), lifecycle `start → update → complete | fail | cancel`, seeded variant derivation, reduced-motion static treatment, host `statusText`, cart-init fallback to built-in indicator, snapshot/restore fail-closed, and budget diagnostics. Reference cart: `fixtures/loadingPulseCart.ts`. [docs/loading-indicator.md](docs/loading-indicator.md) · [#64](https://github.com/cyberart-io/cyberart.io/pull/64)
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- **Job submit payload validation** — `createJobCoordinator.submit` validates `request` against the definition's `requestSchema` before mutation. Missing required fields and undeclared keys (unless `additionalProperties: true`) return structured `invalid-request` failures without creating jobs, emitting lifecycle events, or consuming idempotency keys. Shared helper: `validatePayloadAgainstSchema`. [docs/job-orchestration.md](docs/job-orchestration.md) · [#65](https://github.com/cyberart-io/cyberart.io/pull/65)
|
|
18
|
+
|
|
19
|
+
|
|
7
20
|
## 0.0.11 — 2026-09-06
|
|
8
21
|
|
|
9
22
|
Production-scenario overlap precedence and transactional reload. Additive: existing exports keep their signatures.
|
package/README.md
CHANGED
|
@@ -94,6 +94,7 @@ Full API for the event router, deterministic replay, and CI harness (so agents c
|
|
|
94
94
|
- [Presentation adapter](docs/presentation-adapter.md) — host-owned render model, intents, loading / error / unsupported
|
|
95
95
|
- [Asset resolver](docs/asset-resolver.md) — host-pluggable images/audio/fonts/spritesheets, cache, preload, fallbacks
|
|
96
96
|
- [Presentation cue](docs/presentation-cue.md) — deterministic `createPresentationTimeline`, duplicate policy, reduced-motion, lifecycle events
|
|
97
|
+
- [Loading indicator](docs/loading-indicator.md) — `createLoadingIndicatorController`, seeded loader carts, honest progress, snapshot/restore, fallback
|
|
97
98
|
- [Capability manifest](docs/capability-manifest.md) — versioned JSON for runtime features, phases, managers, assets, events, permissions, integrations
|
|
98
99
|
- [Executable modules](docs/executable-modules.md) — trusted versioned factories, host allowlists, isolation, per-module failures
|
|
99
100
|
- [Remote cart manifests](docs/remote-cart-manifest.md) — signed catalogs, declared asset hashes, inspectable host grants
|
package/dist/headless.d.ts
CHANGED
|
@@ -1284,6 +1284,8 @@ type PayloadSchema = {
|
|
|
1284
1284
|
/** Payload schema version. Bump on any field change. */
|
|
1285
1285
|
version: number;
|
|
1286
1286
|
fields: Record<string, PayloadFieldSpec>;
|
|
1287
|
+
/** When not `true`, validation rejects undeclared payload keys. */
|
|
1288
|
+
additionalProperties?: boolean;
|
|
1287
1289
|
};
|
|
1288
1290
|
type ContractDiagnostic = {
|
|
1289
1291
|
code: string;
|
|
@@ -2993,6 +2995,183 @@ declare function paintingPortal(portal: PortalLifecycle): {
|
|
|
2993
2995
|
};
|
|
2994
2996
|
declare function createPortalLifecycle(options?: CreatePortalLifecycleOptions): PortalLifecycle;
|
|
2995
2997
|
|
|
2998
|
+
/**
|
|
2999
|
+
* Copyright (c) 2026 Aaron Boyarsky
|
|
3000
|
+
* SPDX-License-Identifier: LicenseRef-CyberArt-Engine
|
|
3001
|
+
* See packages/engine/LICENSE
|
|
3002
|
+
*
|
|
3003
|
+
* Host-facing deterministic loading-indicator contract. Presentation-only:
|
|
3004
|
+
* carts vary by seeded parameters without inventing progress or mutating
|
|
3005
|
+
* authoritative host state.
|
|
3006
|
+
*/
|
|
3007
|
+
|
|
3008
|
+
declare const LOADING_INDICATOR_PARAM_SCHEMA_VERSION: 1;
|
|
3009
|
+
declare const LOADING_INDICATOR_SNAPSHOT_SCHEMA_VERSION: 1;
|
|
3010
|
+
declare const LOADING_INDICATOR_MODES: readonly ["indeterminate", "determinate"];
|
|
3011
|
+
type LoadingIndicatorMode = (typeof LOADING_INDICATOR_MODES)[number];
|
|
3012
|
+
declare const LOADING_INDICATOR_CONTEXTS: readonly ["travel", "worldgen", "content", "audio"];
|
|
3013
|
+
type LoadingIndicatorContext = (typeof LOADING_INDICATOR_CONTEXTS)[number];
|
|
3014
|
+
declare const LOADING_INDICATOR_MOTIFS: readonly ["pulse", "orbit", "bars", "ripple", "static"];
|
|
3015
|
+
type LoadingIndicatorMotif = (typeof LOADING_INDICATOR_MOTIFS)[number];
|
|
3016
|
+
declare const LOADING_INDICATOR_PHASES: readonly ["idle", "active", "completed", "failed", "canceled"];
|
|
3017
|
+
type LoadingIndicatorPhase = (typeof LOADING_INDICATOR_PHASES)[number];
|
|
3018
|
+
declare const LOADING_INDICATOR_STARTED_EVENT: "loading.indicator.started";
|
|
3019
|
+
declare const LOADING_INDICATOR_UPDATED_EVENT: "loading.indicator.updated";
|
|
3020
|
+
declare const LOADING_INDICATOR_COMPLETED_EVENT: "loading.indicator.completed";
|
|
3021
|
+
declare const LOADING_INDICATOR_FAILED_EVENT: "loading.indicator.failed";
|
|
3022
|
+
declare const LOADING_INDICATOR_CANCELED_EVENT: "loading.indicator.canceled";
|
|
3023
|
+
declare const LOADING_INDICATOR_DIAGNOSTIC_EVENT: "loading.indicator.diagnostic";
|
|
3024
|
+
declare const LOADING_INDICATOR_EVENTS: readonly ["loading.indicator.started", "loading.indicator.updated", "loading.indicator.completed", "loading.indicator.failed", "loading.indicator.canceled", "loading.indicator.diagnostic"];
|
|
3025
|
+
type LoadingIndicatorEventType = (typeof LOADING_INDICATOR_EVENTS)[number];
|
|
3026
|
+
declare const LOADING_INDICATOR_DIAGNOSTIC_CODES: readonly ["invalid-params", "invalid-snapshot", "schema-mismatch", "unknown-field", "cart-init-failed", "budget-exceeded", "invalid-state", "restore-failed"];
|
|
3027
|
+
type LoadingIndicatorDiagnosticCode = (typeof LOADING_INDICATOR_DIAGNOSTIC_CODES)[number];
|
|
3028
|
+
type LoadingIndicatorPresentation = {
|
|
3029
|
+
palette?: string;
|
|
3030
|
+
intensity?: number;
|
|
3031
|
+
motif?: LoadingIndicatorMotif;
|
|
3032
|
+
variant?: number;
|
|
3033
|
+
};
|
|
3034
|
+
type LoadingIndicatorParams = {
|
|
3035
|
+
schemaVersion: typeof LOADING_INDICATOR_PARAM_SCHEMA_VERSION;
|
|
3036
|
+
seed: string;
|
|
3037
|
+
mode: LoadingIndicatorMode;
|
|
3038
|
+
progress?: number;
|
|
3039
|
+
stage?: string;
|
|
3040
|
+
context?: LoadingIndicatorContext | string;
|
|
3041
|
+
statusText: string;
|
|
3042
|
+
presentation?: LoadingIndicatorPresentation;
|
|
3043
|
+
cartId?: string;
|
|
3044
|
+
};
|
|
3045
|
+
type LoadingIndicatorParamsInput = Omit<LoadingIndicatorParams, 'schemaVersion'> & {
|
|
3046
|
+
schemaVersion?: number;
|
|
3047
|
+
};
|
|
3048
|
+
type LoadingIndicatorVariant = {
|
|
3049
|
+
hue: number;
|
|
3050
|
+
motif: LoadingIndicatorMotif;
|
|
3051
|
+
variant: number;
|
|
3052
|
+
intensity: number;
|
|
3053
|
+
palette: string;
|
|
3054
|
+
};
|
|
3055
|
+
type LoadingIndicatorView = {
|
|
3056
|
+
phase: LoadingIndicatorPhase;
|
|
3057
|
+
mode: LoadingIndicatorMode;
|
|
3058
|
+
/** Host-supplied progress in determinate mode; null when indeterminate. */
|
|
3059
|
+
progress: number | null;
|
|
3060
|
+
stage: string | null;
|
|
3061
|
+
context: string | null;
|
|
3062
|
+
statusText: string;
|
|
3063
|
+
seed: string;
|
|
3064
|
+
variant: LoadingIndicatorVariant;
|
|
3065
|
+
usingFallback: boolean;
|
|
3066
|
+
cartId: string;
|
|
3067
|
+
frame: number;
|
|
3068
|
+
/** Presentation animation phase 0..1; static under reduced motion. */
|
|
3069
|
+
pulsePhase: number;
|
|
3070
|
+
reducedMotion: boolean;
|
|
3071
|
+
};
|
|
3072
|
+
type LoadingIndicatorEvent = {
|
|
3073
|
+
type: LoadingIndicatorEventType;
|
|
3074
|
+
atFrame: number;
|
|
3075
|
+
seed: string;
|
|
3076
|
+
mode: LoadingIndicatorMode;
|
|
3077
|
+
phase: LoadingIndicatorPhase;
|
|
3078
|
+
progress: number | null;
|
|
3079
|
+
stage: string | null;
|
|
3080
|
+
context: string | null;
|
|
3081
|
+
statusText: string;
|
|
3082
|
+
usingFallback: boolean;
|
|
3083
|
+
reasonCode?: string;
|
|
3084
|
+
};
|
|
3085
|
+
type LoadingIndicatorDiagnostic = {
|
|
3086
|
+
code: LoadingIndicatorDiagnosticCode | string;
|
|
3087
|
+
detail: string;
|
|
3088
|
+
path?: string;
|
|
3089
|
+
atFrame?: number;
|
|
3090
|
+
};
|
|
3091
|
+
type LoadingIndicatorSnapshot = {
|
|
3092
|
+
schemaVersion: typeof LOADING_INDICATOR_SNAPSHOT_SCHEMA_VERSION;
|
|
3093
|
+
frame: number;
|
|
3094
|
+
reducedMotion: boolean;
|
|
3095
|
+
phase: LoadingIndicatorPhase;
|
|
3096
|
+
params: LoadingIndicatorParams | null;
|
|
3097
|
+
variant: LoadingIndicatorVariant;
|
|
3098
|
+
usingFallback: boolean;
|
|
3099
|
+
fallbackReason: string | null;
|
|
3100
|
+
cartId: string;
|
|
3101
|
+
events: LoadingIndicatorEvent[];
|
|
3102
|
+
diagnostics: LoadingIndicatorDiagnostic[];
|
|
3103
|
+
/** Inspect event types in live order, including diagnostics. */
|
|
3104
|
+
eventLog?: LoadingIndicatorEventType[];
|
|
3105
|
+
};
|
|
3106
|
+
type LoadingIndicatorInspect = {
|
|
3107
|
+
destroyed: boolean;
|
|
3108
|
+
view: LoadingIndicatorView;
|
|
3109
|
+
events: LoadingIndicatorEventType[];
|
|
3110
|
+
diagnostics: LoadingIndicatorDiagnostic[];
|
|
3111
|
+
};
|
|
3112
|
+
type LoadingIndicatorMutationResult = {
|
|
3113
|
+
ok: true;
|
|
3114
|
+
view: LoadingIndicatorView;
|
|
3115
|
+
} | {
|
|
3116
|
+
ok: false;
|
|
3117
|
+
errors: LoadingIndicatorDiagnostic[];
|
|
3118
|
+
};
|
|
3119
|
+
type RestoreLoadingIndicatorResult = {
|
|
3120
|
+
ok: true;
|
|
3121
|
+
snapshot: LoadingIndicatorSnapshot;
|
|
3122
|
+
} | {
|
|
3123
|
+
ok: false;
|
|
3124
|
+
errors: LoadingIndicatorDiagnostic[];
|
|
3125
|
+
};
|
|
3126
|
+
type LoadingIndicatorBudgets = {
|
|
3127
|
+
maxStepFrames?: number;
|
|
3128
|
+
maxIntensity?: number;
|
|
3129
|
+
maxVariant?: number;
|
|
3130
|
+
};
|
|
3131
|
+
type LoadingIndicatorCartFactory = (seed: string, variant: LoadingIndicatorVariant) => LoadingIndicatorCartHandle | {
|
|
3132
|
+
ok: false;
|
|
3133
|
+
reason: string;
|
|
3134
|
+
};
|
|
3135
|
+
type LoadingIndicatorCartHandle = {
|
|
3136
|
+
step?(frames: number, view: LoadingIndicatorView): void;
|
|
3137
|
+
destroy?(): void;
|
|
3138
|
+
};
|
|
3139
|
+
type CreateLoadingIndicatorControllerOptions = {
|
|
3140
|
+
carts?: Record<string, LoadingIndicatorCartFactory | AnimationCart>;
|
|
3141
|
+
reducedMotion?: boolean;
|
|
3142
|
+
originFrame?: number;
|
|
3143
|
+
budgets?: LoadingIndicatorBudgets;
|
|
3144
|
+
router?: Pick<EventRouter, 'publish'>;
|
|
3145
|
+
defaultCartId?: string;
|
|
3146
|
+
};
|
|
3147
|
+
type LoadingIndicatorController = {
|
|
3148
|
+
start(input: LoadingIndicatorParamsInput): LoadingIndicatorMutationResult;
|
|
3149
|
+
update(input: Partial<LoadingIndicatorParamsInput>): LoadingIndicatorMutationResult;
|
|
3150
|
+
complete(): LoadingIndicatorMutationResult;
|
|
3151
|
+
fail(reasonCode?: string): LoadingIndicatorMutationResult;
|
|
3152
|
+
cancel(): LoadingIndicatorMutationResult;
|
|
3153
|
+
step(frames?: number): LoadingIndicatorEvent[];
|
|
3154
|
+
snapshot(): LoadingIndicatorSnapshot;
|
|
3155
|
+
restore(input: unknown): RestoreLoadingIndicatorResult;
|
|
3156
|
+
inspect(): LoadingIndicatorInspect;
|
|
3157
|
+
setReducedMotion(value: boolean): void;
|
|
3158
|
+
destroy(): void;
|
|
3159
|
+
readonly reducedMotion: boolean;
|
|
3160
|
+
readonly frame: number;
|
|
3161
|
+
};
|
|
3162
|
+
declare function loadingIndicatorEventContracts(): EventContract[];
|
|
3163
|
+
declare function isLoadingIndicatorEventType(value: unknown): value is LoadingIndicatorEventType;
|
|
3164
|
+
declare function isLoadingIndicatorMode(value: unknown): value is LoadingIndicatorMode;
|
|
3165
|
+
declare function parseLoadingIndicatorParams(input: unknown, path?: string): {
|
|
3166
|
+
ok: true;
|
|
3167
|
+
params: LoadingIndicatorParams;
|
|
3168
|
+
} | {
|
|
3169
|
+
ok: false;
|
|
3170
|
+
errors: LoadingIndicatorDiagnostic[];
|
|
3171
|
+
};
|
|
3172
|
+
declare function parseLoadingIndicatorSnapshot(input: unknown): RestoreLoadingIndicatorResult;
|
|
3173
|
+
declare function createLoadingIndicatorController(options?: CreateLoadingIndicatorControllerOptions): LoadingIndicatorController;
|
|
3174
|
+
|
|
2996
3175
|
/**
|
|
2997
3176
|
* Copyright (c) 2026 Aaron Boyarsky
|
|
2998
3177
|
* SPDX-License-Identifier: LicenseRef-CyberArt-Engine
|
|
@@ -4380,4 +4559,4 @@ type WriteComposedFrameResult = ComposedFrame & {
|
|
|
4380
4559
|
*/
|
|
4381
4560
|
declare function writeComposedFrame(compositor: Compositor, path?: string): Promise<WriteComposedFrameResult>;
|
|
4382
4561
|
|
|
4383
|
-
export { AUDIO_CUE_SNAPSHOT_SCHEMA_VERSION, type AudioCueDiagnostic, type BoundReplaySession, CONTENT_REVISION_ACTIVATED_EVENT, CONTENT_REVISION_SNAPSHOT_SCHEMA_VERSION, type CausationTreeNode, type ContentRevisionActivator, type ContentRevisionBundle, type ContentRevisionInspect, type ContentRevisionSnapshot, type CreateHeadlessHarnessOptions, type CreateHeadlessMultiCartHarnessOptions, type CreateProductionScenarioRunnerOptions, type CreateReplayInspectorOptions, type CreateSelectionTraceOptions, DEFAULT_HEADLESS_HEIGHT, DEFAULT_HEADLESS_WIDTH, DEFAULT_MAX_SELECTION_RECORDS, DEFAULT_PRODUCTION_SCENARIO_VIEWPORTS, type FrameBenchmarkOptions, type FrameBenchmarkResult, type GlyphAtlas, HEADLESS_PNG_DATA_URL, HOST_OWNED_AUDIO_EVENT_KINDS, type HeadlessAudioAdapter, type HeadlessAudioAdapterSnapshot, type HeadlessCanvas2DSettings, type HeadlessFrameError, type HeadlessHarness, type HeadlessImageFixture, type HeadlessInspect, type HeadlessJobWorker, type HeadlessMultiCartHarness, HeadlessUnsupportedOperationError, type HostGrantSet, type HostOwnedAudioEvent, type HostOwnedAudioEventKind, type HostOwnedAudioObserver, type HostOwnedAudioSnapshot, type InspectorRecord, type InstallHeadlessCanvasOptions, type JobCoordinator, type JobCoordinatorSnapshot, type JobInspect, PRESENTATION_BINDING_APPLIED_EVENT, PRESENTATION_BINDING_SNAPSHOT_SCHEMA_VERSION, PRODUCTION_SCENARIO_BOUNDARIES, PRODUCTION_SCENARIO_SCHEMA_VERSION, PRODUCTION_SCENARIO_SNAPSHOT_SCHEMA_VERSION, type PortalInspect, type PortalLifecycle, type PortalLifecycleSnapshot, type PresentationBindingInspect, type PresentationBindingManifest, type PresentationBindingRuntime, type PresentationBindingSnapshot, type PresentationSequenceDefinition, type PresentationSequenceInspect, type PresentationSequencePlayer, type PresentationSequenceSnapshot, type ProductionScenarioControl, type ProductionScenarioDefinition, type ProductionScenarioEvidenceBundle, type ProductionScenarioExpectation, type ProductionScenarioHost, type ProductionScenarioInputHitTest, type ProductionScenarioInputSurface, type ProductionScenarioLocalization, type ProductionScenarioObservation, type ProductionScenarioRunner, REDUCED_MOTION_ACTIVE_SEQUENCE_POLICY, REDUCED_MOTION_PARTICIPANT_IDS, type ReducedMotionActiveSequencePolicy, type ReducedMotionParticipantId, type ReducedMotionParticipantReport, type ReducedMotionPropagation, type RemoteCartInspect, type RemoteCartSandbox, type ReplayCompareResult, type ReplayInspector, type ReplayInspectorExport, type ReplayInspectorReport, type ReplayParticipantSummary, type ReplayTapeAction, type ReplayTraceFilter, type RestoreAudioCueResult, SELECTION_DECISION_KINDS, SELECTION_REASON_CODES, SELECTION_TRACE_SCHEMA_VERSION, SELECTION_TRACE_SENSITIVE_KEYS, type SelectionAssetResolution, type SelectionBindingEvaluation, type SelectionContentIdentity, type SelectionDecisionInput, type SelectionDecisionKind, type SelectionDecisionRecord, type SelectionPresentationDecision, type SelectionReasonCode, type SelectionSequenceDecision, type SelectionSnapshotProvenance, type SelectionStagingOutcome, type SelectionStagingResult, type SelectionTrace, type SelectionTraceExport, type SelectionTraceFilter, type SelectionTraceReport, type SemanticLayerController, type SemanticPublishedRegion, type SemanticRegionInspect, UPDATE_GOLDEN_ENV, type VisualArtifactPaths, type VisualArtifacts, type VisualCompareOptions, type VisualCompareResult, type VisualLayerCapture, type VisualLayerController, type VisualLayerInspect, WORLD_PATCH_ACCEPTED_EVENT, WORLD_PATCH_SNAPSHOT_SCHEMA_VERSION, type WorldGraph, type WorldGraphInspect, type WorldGraphProjection, type WorldGraphSnapshot, type WorldPatchApplier, type WorldPatchInspect, type WorldPatchSnapshot, type WorldPersistenceAdapter, type WriteComposedFrameResult, assertPixelsEqual, assertPngDataUrlsEqual, attachHeadlessCanvas2D, attachSelectionTrace, benchmarkCartFrames, cabinetPortal, captureVisualLayers, compareImageData, compareReplayTraces, contentRevisionEventContracts, createContentRevisionActivator, createDefaultGlyphAtlas, createHeadlessAudioAdapter, createHeadlessHarness, createHeadlessJobWorker, createHeadlessMultiCartHarness, createHostGrantSet, createImageFixture, createJobCoordinator, createMemoryJobPersistence, createMemoryWorldPersistence, createPortalLifecycle, createPresentationBindingRuntime, createPresentationSequencePlayer, createProductionScenarioRunner, createRemoteCartSandbox, createRemoteContentAdapter, createReplayInspector, createSelectionTrace, createSemanticLayerController, createStaticContentAdapter, createVisualLayerController, createWorldGraph, createWorldPatchApplier, decodePng, definePresentationBindings, definePresentationSequence, defineProductionScenario, encodePng, encodePngDataUrl, evaluatePresentationBindings, fnv1aHex, formatFrameBenchmarkResult, getHeadlessSurface, imageDataFromPngDataUrl, installHeadlessCanvas, isHostOwnedAudioEventKind, isSelectionDecisionKind, isSelectionReasonCode, jobEventContracts, localizeProductionScenarioFailure, makeImageData, paintingPortal, parseAudioCueSnapshot, presentationBindingEventContracts, presentationSequenceEventContracts, productionScenarioEventContracts, recordSelectionDecision, replayExportedTrace, setDefaultGlyphAtlas, shouldUpdateGolden, worldGraphEventContracts, worldPatchEventContracts, writeComposedFrame, writeVisualArtifacts };
|
|
4562
|
+
export { AUDIO_CUE_SNAPSHOT_SCHEMA_VERSION, type AudioCueDiagnostic, type BoundReplaySession, CONTENT_REVISION_ACTIVATED_EVENT, CONTENT_REVISION_SNAPSHOT_SCHEMA_VERSION, type CausationTreeNode, type ContentRevisionActivator, type ContentRevisionBundle, type ContentRevisionInspect, type ContentRevisionSnapshot, type CreateHeadlessHarnessOptions, type CreateHeadlessMultiCartHarnessOptions, type CreateLoadingIndicatorControllerOptions, type CreateProductionScenarioRunnerOptions, type CreateReplayInspectorOptions, type CreateSelectionTraceOptions, DEFAULT_HEADLESS_HEIGHT, DEFAULT_HEADLESS_WIDTH, DEFAULT_MAX_SELECTION_RECORDS, DEFAULT_PRODUCTION_SCENARIO_VIEWPORTS, type FrameBenchmarkOptions, type FrameBenchmarkResult, type GlyphAtlas, HEADLESS_PNG_DATA_URL, HOST_OWNED_AUDIO_EVENT_KINDS, type HeadlessAudioAdapter, type HeadlessAudioAdapterSnapshot, type HeadlessCanvas2DSettings, type HeadlessFrameError, type HeadlessHarness, type HeadlessImageFixture, type HeadlessInspect, type HeadlessJobWorker, type HeadlessMultiCartHarness, HeadlessUnsupportedOperationError, type HostGrantSet, type HostOwnedAudioEvent, type HostOwnedAudioEventKind, type HostOwnedAudioObserver, type HostOwnedAudioSnapshot, type InspectorRecord, type InstallHeadlessCanvasOptions, type JobCoordinator, type JobCoordinatorSnapshot, type JobInspect, LOADING_INDICATOR_CANCELED_EVENT, LOADING_INDICATOR_COMPLETED_EVENT, LOADING_INDICATOR_CONTEXTS, LOADING_INDICATOR_DIAGNOSTIC_CODES, LOADING_INDICATOR_DIAGNOSTIC_EVENT, LOADING_INDICATOR_EVENTS, LOADING_INDICATOR_FAILED_EVENT, LOADING_INDICATOR_MODES, LOADING_INDICATOR_MOTIFS, LOADING_INDICATOR_PARAM_SCHEMA_VERSION, LOADING_INDICATOR_PHASES, LOADING_INDICATOR_SNAPSHOT_SCHEMA_VERSION, LOADING_INDICATOR_STARTED_EVENT, LOADING_INDICATOR_UPDATED_EVENT, type LoadingIndicatorBudgets, type LoadingIndicatorCartFactory, type LoadingIndicatorCartHandle, type LoadingIndicatorContext, type LoadingIndicatorController, type LoadingIndicatorDiagnostic, type LoadingIndicatorDiagnosticCode, type LoadingIndicatorEvent, type LoadingIndicatorEventType, type LoadingIndicatorInspect, type LoadingIndicatorMode, type LoadingIndicatorMotif, type LoadingIndicatorMutationResult, type LoadingIndicatorParams, type LoadingIndicatorParamsInput, type LoadingIndicatorPhase, type LoadingIndicatorPresentation, type LoadingIndicatorSnapshot, type LoadingIndicatorVariant, type LoadingIndicatorView, PRESENTATION_BINDING_APPLIED_EVENT, PRESENTATION_BINDING_SNAPSHOT_SCHEMA_VERSION, PRODUCTION_SCENARIO_BOUNDARIES, PRODUCTION_SCENARIO_SCHEMA_VERSION, PRODUCTION_SCENARIO_SNAPSHOT_SCHEMA_VERSION, type PortalInspect, type PortalLifecycle, type PortalLifecycleSnapshot, type PresentationBindingInspect, type PresentationBindingManifest, type PresentationBindingRuntime, type PresentationBindingSnapshot, type PresentationSequenceDefinition, type PresentationSequenceInspect, type PresentationSequencePlayer, type PresentationSequenceSnapshot, type ProductionScenarioControl, type ProductionScenarioDefinition, type ProductionScenarioEvidenceBundle, type ProductionScenarioExpectation, type ProductionScenarioHost, type ProductionScenarioInputHitTest, type ProductionScenarioInputSurface, type ProductionScenarioLocalization, type ProductionScenarioObservation, type ProductionScenarioRunner, REDUCED_MOTION_ACTIVE_SEQUENCE_POLICY, REDUCED_MOTION_PARTICIPANT_IDS, type ReducedMotionActiveSequencePolicy, type ReducedMotionParticipantId, type ReducedMotionParticipantReport, type ReducedMotionPropagation, type RemoteCartInspect, type RemoteCartSandbox, type ReplayCompareResult, type ReplayInspector, type ReplayInspectorExport, type ReplayInspectorReport, type ReplayParticipantSummary, type ReplayTapeAction, type ReplayTraceFilter, type RestoreAudioCueResult, type RestoreLoadingIndicatorResult, SELECTION_DECISION_KINDS, SELECTION_REASON_CODES, SELECTION_TRACE_SCHEMA_VERSION, SELECTION_TRACE_SENSITIVE_KEYS, type SelectionAssetResolution, type SelectionBindingEvaluation, type SelectionContentIdentity, type SelectionDecisionInput, type SelectionDecisionKind, type SelectionDecisionRecord, type SelectionPresentationDecision, type SelectionReasonCode, type SelectionSequenceDecision, type SelectionSnapshotProvenance, type SelectionStagingOutcome, type SelectionStagingResult, type SelectionTrace, type SelectionTraceExport, type SelectionTraceFilter, type SelectionTraceReport, type SemanticLayerController, type SemanticPublishedRegion, type SemanticRegionInspect, UPDATE_GOLDEN_ENV, type VisualArtifactPaths, type VisualArtifacts, type VisualCompareOptions, type VisualCompareResult, type VisualLayerCapture, type VisualLayerController, type VisualLayerInspect, WORLD_PATCH_ACCEPTED_EVENT, WORLD_PATCH_SNAPSHOT_SCHEMA_VERSION, type WorldGraph, type WorldGraphInspect, type WorldGraphProjection, type WorldGraphSnapshot, type WorldPatchApplier, type WorldPatchInspect, type WorldPatchSnapshot, type WorldPersistenceAdapter, type WriteComposedFrameResult, assertPixelsEqual, assertPngDataUrlsEqual, attachHeadlessCanvas2D, attachSelectionTrace, benchmarkCartFrames, cabinetPortal, captureVisualLayers, compareImageData, compareReplayTraces, contentRevisionEventContracts, createContentRevisionActivator, createDefaultGlyphAtlas, createHeadlessAudioAdapter, createHeadlessHarness, createHeadlessJobWorker, createHeadlessMultiCartHarness, createHostGrantSet, createImageFixture, createJobCoordinator, createLoadingIndicatorController, createMemoryJobPersistence, createMemoryWorldPersistence, createPortalLifecycle, createPresentationBindingRuntime, createPresentationSequencePlayer, createProductionScenarioRunner, createRemoteCartSandbox, createRemoteContentAdapter, createReplayInspector, createSelectionTrace, createSemanticLayerController, createStaticContentAdapter, createVisualLayerController, createWorldGraph, createWorldPatchApplier, decodePng, definePresentationBindings, definePresentationSequence, defineProductionScenario, encodePng, encodePngDataUrl, evaluatePresentationBindings, fnv1aHex, formatFrameBenchmarkResult, getHeadlessSurface, imageDataFromPngDataUrl, installHeadlessCanvas, isHostOwnedAudioEventKind, isLoadingIndicatorEventType, isLoadingIndicatorMode, isSelectionDecisionKind, isSelectionReasonCode, jobEventContracts, loadingIndicatorEventContracts, localizeProductionScenarioFailure, makeImageData, paintingPortal, parseAudioCueSnapshot, parseLoadingIndicatorParams, parseLoadingIndicatorSnapshot, presentationBindingEventContracts, presentationSequenceEventContracts, productionScenarioEventContracts, recordSelectionDecision, replayExportedTrace, setDefaultGlyphAtlas, shouldUpdateGolden, worldGraphEventContracts, worldPatchEventContracts, writeComposedFrame, writeVisualArtifacts };
|