@opensteer/protocol 0.7.1 → 0.7.2
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/dist/index.cjs +30 -40
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +24 -26
- package/dist/index.d.ts +24 -26
- package/dist/index.js +29 -38
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/json.ts","../src/validation.ts","../src/version.ts","../src/binary-location.ts","../src/identity.ts","../src/geometry.ts","../src/metadata.ts","../src/network.ts","../src/captcha.ts","../src/requests.ts","../src/storage.ts","../src/snapshots.ts","../src/capabilities.ts","../src/cloud.ts","../src/errors.ts","../src/events.ts","../src/artifacts.ts","../src/traces.ts","../src/envelopes.ts","../src/session-info.ts","../src/automation.ts","../src/operations.ts","../src/rest.ts","../src/diff.ts","../src/minimize.ts","../src/probe.ts","../src/scripts.ts","../src/reverse.ts","../src/interaction.ts","../src/semantic.ts","../src/mcp.ts","../src/computer-use-bridge.ts","../src/dom-action-bridge.ts"],"names":["jsonValueSchema","targetByElementSchema","targetByDescriptionSchema","targetBySelectorSchema"],"mappings":"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","file":"index.cjs","sourcesContent":["export type JsonPrimitive = boolean | number | string | null;\n\nexport type JsonValue = JsonPrimitive | JsonObject | JsonArray;\n\nexport interface JsonObject {\n readonly [key: string]: JsonValue;\n}\n\nexport type JsonArray = readonly JsonValue[];\n\nexport type JsonSchemaType =\n | \"string\"\n | \"number\"\n | \"integer\"\n | \"boolean\"\n | \"object\"\n | \"array\"\n | \"null\";\n\nexport interface JsonSchema {\n readonly $id?: string;\n readonly $schema?: string;\n readonly title?: string;\n readonly description?: string;\n readonly type?: JsonSchemaType | readonly JsonSchemaType[];\n readonly enum?: readonly JsonPrimitive[];\n readonly const?: JsonValue;\n readonly format?: string;\n readonly pattern?: string;\n readonly minLength?: number;\n readonly maxLength?: number;\n readonly minimum?: number;\n readonly maximum?: number;\n readonly exclusiveMinimum?: number;\n readonly exclusiveMaximum?: number;\n readonly minItems?: number;\n readonly maxItems?: number;\n readonly uniqueItems?: boolean;\n readonly items?: JsonSchema;\n readonly properties?: Readonly<Record<string, JsonSchema>>;\n readonly required?: readonly string[];\n readonly additionalProperties?: boolean | JsonSchema;\n readonly oneOf?: readonly JsonSchema[];\n readonly anyOf?: readonly JsonSchema[];\n readonly allOf?: readonly JsonSchema[];\n readonly default?: JsonValue;\n readonly examples?: readonly JsonValue[];\n}\n\nexport const JSON_SCHEMA_DRAFT_2020_12 = \"https://json-schema.org/draft/2020-12/schema\";\n\nexport function defineSchema<TSchema extends JsonSchema>(schema: TSchema): TSchema {\n return schema;\n}\n\nexport function stringSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"string\",\n ...options,\n });\n}\n\nexport function numberSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"number\",\n ...options,\n });\n}\n\nexport function integerSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"integer\",\n ...options,\n });\n}\n\nexport function literalSchema(\n value: JsonValue,\n options: Omit<JsonSchema, \"const\"> = {},\n): JsonSchema {\n return defineSchema({\n const: value,\n ...options,\n });\n}\n\nexport function enumSchema(\n values: readonly JsonPrimitive[],\n options: Omit<JsonSchema, \"enum\"> = {},\n): JsonSchema {\n return defineSchema({\n enum: values,\n ...options,\n });\n}\n\nexport function arraySchema(\n items: JsonSchema,\n options: Omit<JsonSchema, \"type\" | \"items\"> = {},\n): JsonSchema {\n return defineSchema({\n type: \"array\",\n items,\n ...options,\n });\n}\n\nexport function objectSchema(\n properties: Readonly<Record<string, JsonSchema>>,\n options: Omit<JsonSchema, \"type\" | \"properties\"> & {\n readonly required?: readonly string[];\n readonly additionalProperties?: boolean | JsonSchema;\n } = {},\n): JsonSchema {\n const { required, additionalProperties, ...rest } = options;\n\n return defineSchema({\n type: \"object\",\n properties,\n ...rest,\n ...(required === undefined ? {} : { required }),\n ...(additionalProperties === undefined\n ? { additionalProperties: false }\n : { additionalProperties }),\n });\n}\n\nexport function recordSchema(\n valueSchema: JsonSchema,\n options: Omit<JsonSchema, \"type\" | \"additionalProperties\"> = {},\n): JsonSchema {\n return defineSchema({\n type: \"object\",\n additionalProperties: valueSchema,\n ...options,\n });\n}\n\nexport function oneOfSchema(\n members: readonly JsonSchema[],\n options: Omit<JsonSchema, \"oneOf\"> = {},\n): JsonSchema {\n return defineSchema({\n oneOf: members,\n ...options,\n });\n}\n","import type { JsonSchema, JsonSchemaType, JsonValue } from \"./json.js\";\n\nexport interface JsonSchemaValidationIssue {\n readonly path: string;\n readonly message: string;\n}\n\nexport function validateJsonSchema(\n schema: JsonSchema,\n value: unknown,\n path = \"$\",\n): readonly JsonSchemaValidationIssue[] {\n return validateSchemaNode(schema, value, path);\n}\n\nfunction validateSchemaNode(\n schema: JsonSchema,\n value: unknown,\n path: string,\n): JsonSchemaValidationIssue[] {\n const issues: JsonSchemaValidationIssue[] = [];\n\n if (\"const\" in schema && !isJsonValueEqual(schema.const, value)) {\n issues.push({\n path,\n message: `must equal ${JSON.stringify(schema.const)}`,\n });\n return issues;\n }\n\n if (\n schema.enum !== undefined &&\n !schema.enum.some((candidate) => isJsonValueEqual(candidate, value))\n ) {\n issues.push({\n path,\n message: `must be one of ${schema.enum.map((candidate) => JSON.stringify(candidate)).join(\", \")}`,\n });\n return issues;\n }\n\n if (schema.oneOf !== undefined) {\n const branchIssues = schema.oneOf.map((member) => validateSchemaNode(member, value, path));\n const validBranches = branchIssues.filter((current) => current.length === 0).length;\n if (validBranches !== 1) {\n issues.push({\n path,\n message:\n validBranches === 0\n ? \"must match exactly one supported shape\"\n : \"matches multiple supported shapes\",\n });\n return issues;\n }\n }\n\n if (schema.anyOf !== undefined) {\n const hasMatch = schema.anyOf.some(\n (member) => validateSchemaNode(member, value, path).length === 0,\n );\n if (!hasMatch) {\n issues.push({\n path,\n message: \"must match at least one supported shape\",\n });\n return issues;\n }\n }\n\n if (schema.allOf !== undefined) {\n for (const member of schema.allOf) {\n issues.push(...validateSchemaNode(member, value, path));\n }\n if (issues.length > 0) {\n return issues;\n }\n }\n\n if (schema.type !== undefined && !matchesSchemaType(schema.type, value)) {\n issues.push({\n path,\n message: `must be ${describeSchemaType(schema.type)}`,\n });\n return issues;\n }\n\n if (typeof value === \"string\") {\n if (schema.minLength !== undefined && value.length < schema.minLength) {\n issues.push({\n path,\n message: `must have length >= ${String(schema.minLength)}`,\n });\n }\n if (schema.maxLength !== undefined && value.length > schema.maxLength) {\n issues.push({\n path,\n message: `must have length <= ${String(schema.maxLength)}`,\n });\n }\n if (schema.pattern !== undefined && !new RegExp(schema.pattern).test(value)) {\n issues.push({\n path,\n message: `must match pattern ${schema.pattern}`,\n });\n }\n return issues;\n }\n\n if (typeof value === \"number\") {\n if (schema.minimum !== undefined && value < schema.minimum) {\n issues.push({\n path,\n message: `must be >= ${String(schema.minimum)}`,\n });\n }\n if (schema.maximum !== undefined && value > schema.maximum) {\n issues.push({\n path,\n message: `must be <= ${String(schema.maximum)}`,\n });\n }\n if (schema.exclusiveMinimum !== undefined && value <= schema.exclusiveMinimum) {\n issues.push({\n path,\n message: `must be > ${String(schema.exclusiveMinimum)}`,\n });\n }\n if (schema.exclusiveMaximum !== undefined && value >= schema.exclusiveMaximum) {\n issues.push({\n path,\n message: `must be < ${String(schema.exclusiveMaximum)}`,\n });\n }\n return issues;\n }\n\n if (Array.isArray(value)) {\n if (schema.minItems !== undefined && value.length < schema.minItems) {\n issues.push({\n path,\n message: `must have at least ${String(schema.minItems)} items`,\n });\n }\n if (schema.maxItems !== undefined && value.length > schema.maxItems) {\n issues.push({\n path,\n message: `must have at most ${String(schema.maxItems)} items`,\n });\n }\n if (schema.uniqueItems) {\n const seen = new Set<string>();\n for (const item of value) {\n const key = JSON.stringify(item);\n if (seen.has(key)) {\n issues.push({\n path,\n message: \"must not contain duplicate items\",\n });\n break;\n }\n seen.add(key);\n }\n }\n if (schema.items !== undefined) {\n for (let index = 0; index < value.length; index += 1) {\n issues.push(...validateSchemaNode(schema.items, value[index], `${path}[${String(index)}]`));\n }\n }\n return issues;\n }\n\n if (isPlainObject(value)) {\n const properties = schema.properties ?? {};\n for (const requiredKey of schema.required ?? []) {\n if (!(requiredKey in value)) {\n issues.push({\n path: joinObjectPath(path, requiredKey),\n message: \"is required\",\n });\n }\n }\n\n for (const [key, propertyValue] of Object.entries(value)) {\n const propertySchema = properties[key];\n if (propertySchema !== undefined) {\n issues.push(\n ...validateSchemaNode(propertySchema, propertyValue, joinObjectPath(path, key)),\n );\n continue;\n }\n\n if (schema.additionalProperties === false) {\n issues.push({\n path: joinObjectPath(path, key),\n message: \"is not allowed\",\n });\n continue;\n }\n\n if (schema.additionalProperties !== undefined && schema.additionalProperties !== true) {\n issues.push(\n ...validateSchemaNode(\n schema.additionalProperties,\n propertyValue,\n joinObjectPath(path, key),\n ),\n );\n }\n }\n }\n\n return issues;\n}\n\nfunction matchesSchemaType(\n expected: JsonSchemaType | readonly JsonSchemaType[],\n value: unknown,\n): boolean {\n const candidates = Array.isArray(expected) ? expected : [expected];\n return candidates.some((candidate) => matchesSingleSchemaType(candidate, value));\n}\n\nfunction matchesSingleSchemaType(expected: JsonSchemaType, value: unknown): boolean {\n switch (expected) {\n case \"string\":\n return typeof value === \"string\";\n case \"number\":\n return typeof value === \"number\" && Number.isFinite(value);\n case \"integer\":\n return typeof value === \"number\" && Number.isInteger(value);\n case \"boolean\":\n return typeof value === \"boolean\";\n case \"null\":\n return value === null;\n case \"array\":\n return Array.isArray(value);\n case \"object\":\n return isPlainObject(value);\n }\n}\n\nfunction describeSchemaType(expected: JsonSchemaType | readonly JsonSchemaType[]): string {\n const candidates = Array.isArray(expected) ? expected : [expected];\n return candidates.join(\" or \");\n}\n\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\n return Object.prototype.toString.call(value) === \"[object Object]\";\n}\n\nfunction joinObjectPath(base: string, key: string): string {\n return `${base}.${key}`;\n}\n\nfunction isJsonValueEqual(expected: JsonValue | undefined, actual: unknown): boolean {\n if (expected === undefined) {\n return actual === undefined;\n }\n if (\n expected === null ||\n typeof expected === \"string\" ||\n typeof expected === \"number\" ||\n typeof expected === \"boolean\"\n ) {\n return actual === expected;\n }\n if (Array.isArray(expected)) {\n return (\n Array.isArray(actual) &&\n actual.length === expected.length &&\n expected.every((entry, index) => isJsonValueEqual(entry, actual[index]))\n );\n }\n if (!isPlainObject(actual)) {\n return false;\n }\n\n const expectedObject = expected as Record<string, JsonValue>;\n const expectedKeys = Object.keys(expectedObject).sort((left, right) => left.localeCompare(right));\n const actualKeys = Object.keys(actual).sort((left, right) => left.localeCompare(right));\n return (\n expectedKeys.length === actualKeys.length &&\n expectedKeys.every(\n (key, index) =>\n key === actualKeys[index] && isJsonValueEqual(expectedObject[key], actual[key]),\n )\n );\n}\n","import {\n JSON_SCHEMA_DRAFT_2020_12,\n literalSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport const OPENSTEER_PROTOCOL_NAME = \"opensteer\";\nexport const OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION = 2 as const;\nexport const OPENSTEER_PROTOCOL_VERSION = `0.${OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION}.0`;\nexport const OPENSTEER_PROTOCOL_REVISION_DATE = \"2026-03-13\";\nexport const OPENSTEER_PROTOCOL_MEDIA_TYPE = `application/vnd.${OPENSTEER_PROTOCOL_NAME}+json;version=${OPENSTEER_PROTOCOL_VERSION}`;\nexport const OPENSTEER_PROTOCOL_REST_BASE_PATH = `/api/v${OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION}`;\n\nexport type OpensteerProtocolName = typeof OPENSTEER_PROTOCOL_NAME;\nexport type OpensteerProtocolVersion = typeof OPENSTEER_PROTOCOL_VERSION;\n\nexport interface OpensteerProtocolDescriptor {\n readonly protocol: OpensteerProtocolName;\n readonly version: OpensteerProtocolVersion;\n readonly revisionDate: string;\n readonly mediaType: string;\n readonly restBasePath: string;\n}\n\nexport const opensteerProtocolDescriptor: OpensteerProtocolDescriptor = {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: OPENSTEER_PROTOCOL_VERSION,\n revisionDate: OPENSTEER_PROTOCOL_REVISION_DATE,\n mediaType: OPENSTEER_PROTOCOL_MEDIA_TYPE,\n restBasePath: OPENSTEER_PROTOCOL_REST_BASE_PATH,\n};\n\nexport const opensteerProtocolDescriptorSchema: JsonSchema = objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n revisionDate: stringSchema({\n format: \"date\",\n description: \"Calendar revision for this protocol snapshot.\",\n }),\n mediaType: stringSchema({\n description: \"Canonical media type for JSON payloads using this protocol revision.\",\n }),\n restBasePath: stringSchema({\n description: \"Base HTTP path for the canonical REST transport.\",\n }),\n },\n {\n $schema: JSON_SCHEMA_DRAFT_2020_12,\n $id: \"https://opensteer.dev/schemas/protocol/descriptor.json\",\n title: \"OpensteerProtocolDescriptor\",\n required: [\"protocol\", \"version\", \"revisionDate\", \"mediaType\", \"restBasePath\"],\n },\n);\n\nexport function isSupportedProtocolVersion(value: string): value is OpensteerProtocolVersion {\n return value === OPENSTEER_PROTOCOL_VERSION;\n}\n\nexport function assertSupportedProtocolVersion(value: string): OpensteerProtocolVersion {\n if (!isSupportedProtocolVersion(value)) {\n throw new RangeError(\n `unsupported protocol version ${value}; expected ${OPENSTEER_PROTOCOL_VERSION}`,\n );\n }\n\n return value;\n}\n","import type { JsonSchema } from \"./json.js\";\nimport { enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport interface ExternalBinaryLocation {\n readonly delivery: \"external\";\n readonly uri: string;\n readonly mimeType: string;\n readonly byteLength: number;\n readonly sha256: string;\n}\n\nexport const externalBinaryLocationSchema: JsonSchema = objectSchema(\n {\n delivery: enumSchema([\"external\"] as const),\n uri: stringSchema(),\n mimeType: stringSchema(),\n byteLength: integerSchema({ minimum: 0 }),\n sha256: stringSchema(),\n },\n {\n title: \"ExternalBinaryLocation\",\n required: [\"delivery\", \"uri\", \"mimeType\", \"byteLength\", \"sha256\"],\n },\n);\n","export type {\n SessionRef,\n PageRef,\n FrameRef,\n DocumentRef,\n NodeRef,\n NetworkRequestId,\n DownloadRef,\n DialogRef,\n ChooserRef,\n WorkerRef,\n DocumentEpoch,\n NodeLocator,\n} from \"@opensteer/browser-core\";\n\nexport {\n createSessionRef,\n createPageRef,\n createFrameRef,\n createDocumentRef,\n createNodeRef,\n createNetworkRequestId,\n createDownloadRef,\n createDialogRef,\n createChooserRef,\n createWorkerRef,\n isSessionRef,\n isPageRef,\n isFrameRef,\n isDocumentRef,\n isNodeRef,\n isNetworkRequestId,\n isDownloadRef,\n isDialogRef,\n isChooserRef,\n isWorkerRef,\n serializeRef,\n createDocumentEpoch,\n nextDocumentEpoch,\n serializeDocumentEpoch,\n createNodeLocator,\n} from \"@opensteer/browser-core\";\n\nimport type {\n SessionRef,\n PageRef,\n FrameRef,\n DocumentRef,\n NodeRef,\n NetworkRequestId,\n DownloadRef,\n DialogRef,\n ChooserRef,\n WorkerRef,\n} from \"@opensteer/browser-core\";\n\nimport {\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport type OpensteerRef =\n | SessionRef\n | PageRef\n | FrameRef\n | DocumentRef\n | NodeRef\n | NetworkRequestId\n | DownloadRef\n | DialogRef\n | ChooserRef\n | WorkerRef;\n\ntype RefPrefix =\n | \"session\"\n | \"page\"\n | \"frame\"\n | \"document\"\n | \"node\"\n | \"request\"\n | \"download\"\n | \"dialog\"\n | \"chooser\"\n | \"worker\";\n\nexport interface ParsedOpensteerRef {\n readonly kind: RefPrefix;\n readonly value: string;\n}\n\nconst refPrefixes = [\n \"session\",\n \"page\",\n \"frame\",\n \"document\",\n \"node\",\n \"request\",\n \"download\",\n \"dialog\",\n \"chooser\",\n \"worker\",\n] as const satisfies readonly RefPrefix[];\n\nfunction parsePrefixedRef(value: string): ParsedOpensteerRef | null {\n const separatorIndex = value.indexOf(\":\");\n if (separatorIndex <= 0 || separatorIndex === value.length - 1) {\n return null;\n }\n\n const kind = value.slice(0, separatorIndex);\n if (!refPrefixes.includes(kind as RefPrefix)) {\n return null;\n }\n\n return {\n kind: kind as RefPrefix,\n value: value.slice(separatorIndex + 1),\n };\n}\n\nexport function isOpensteerRef(value: string): value is OpensteerRef {\n return parsePrefixedRef(value) !== null;\n}\n\nexport function parseOpensteerRef(value: string): ParsedOpensteerRef | null {\n return parsePrefixedRef(value);\n}\n\nfunction prefixedRefSchema(prefix: RefPrefix, title: string): JsonSchema {\n return stringSchema({\n title,\n pattern: `^${prefix}:.+$`,\n });\n}\n\nexport const opensteerRefKindSchema: JsonSchema = enumSchema(refPrefixes, {\n title: \"OpensteerRefKind\",\n});\n\nexport const sessionRefSchema = prefixedRefSchema(\"session\", \"SessionRef\");\nexport const pageRefSchema = prefixedRefSchema(\"page\", \"PageRef\");\nexport const frameRefSchema = prefixedRefSchema(\"frame\", \"FrameRef\");\nexport const documentRefSchema = prefixedRefSchema(\"document\", \"DocumentRef\");\nexport const nodeRefSchema = prefixedRefSchema(\"node\", \"NodeRef\");\nexport const networkRequestIdSchema = prefixedRefSchema(\"request\", \"NetworkRequestId\");\nexport const downloadRefSchema = prefixedRefSchema(\"download\", \"DownloadRef\");\nexport const dialogRefSchema = prefixedRefSchema(\"dialog\", \"DialogRef\");\nexport const chooserRefSchema = prefixedRefSchema(\"chooser\", \"ChooserRef\");\nexport const workerRefSchema = prefixedRefSchema(\"worker\", \"WorkerRef\");\n\nexport const opensteerRefSchema: JsonSchema = oneOfSchema(\n [\n sessionRefSchema,\n pageRefSchema,\n frameRefSchema,\n documentRefSchema,\n nodeRefSchema,\n networkRequestIdSchema,\n downloadRefSchema,\n dialogRefSchema,\n chooserRefSchema,\n workerRefSchema,\n ],\n {\n title: \"OpensteerRef\",\n },\n);\n\nexport const documentEpochSchema: JsonSchema = integerSchema({\n title: \"DocumentEpoch\",\n minimum: 0,\n});\n\nexport const nodeLocatorSchema: JsonSchema = objectSchema(\n {\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n },\n {\n title: \"NodeLocator\",\n required: [\"documentRef\", \"documentEpoch\", \"nodeRef\"],\n },\n);\n","export type {\n Point,\n Size,\n Rect,\n Quad,\n ScrollOffset,\n CoordinateSpace,\n LayoutViewport,\n VisualViewport,\n DevicePixelRatio,\n PageScaleFactor,\n PageZoomFactor,\n ViewportMetrics,\n} from \"@opensteer/browser-core\";\n\nimport { arraySchema, enumSchema, numberSchema, objectSchema, type JsonSchema } from \"./json.js\";\n\nexport const pointSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"Point\",\n required: [\"x\", \"y\"],\n },\n);\n\nexport const sizeSchema: JsonSchema = objectSchema(\n {\n width: numberSchema({ minimum: 0 }),\n height: numberSchema({ minimum: 0 }),\n },\n {\n title: \"Size\",\n required: [\"width\", \"height\"],\n },\n);\n\nexport const rectSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n width: numberSchema({ minimum: 0 }),\n height: numberSchema({ minimum: 0 }),\n },\n {\n title: \"Rect\",\n required: [\"x\", \"y\", \"width\", \"height\"],\n },\n);\n\nexport const quadSchema: JsonSchema = arraySchema(pointSchema, {\n title: \"Quad\",\n minItems: 4,\n maxItems: 4,\n});\n\nexport const scrollOffsetSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"ScrollOffset\",\n required: [\"x\", \"y\"],\n },\n);\n\nexport const coordinateSpaceSchema: JsonSchema = enumSchema(\n [\n \"document-css\",\n \"layout-viewport-css\",\n \"visual-viewport-css\",\n \"computer-display-css\",\n \"window\",\n \"screen\",\n \"device-pixel\",\n ] as const,\n {\n title: \"CoordinateSpace\",\n },\n);\n\nexport const layoutViewportSchema: JsonSchema = objectSchema(\n {\n origin: pointSchema,\n size: sizeSchema,\n },\n {\n title: \"LayoutViewport\",\n required: [\"origin\", \"size\"],\n },\n);\n\nexport const visualViewportSchema: JsonSchema = objectSchema(\n {\n origin: pointSchema,\n offsetWithinLayoutViewport: scrollOffsetSchema,\n size: sizeSchema,\n },\n {\n title: \"VisualViewport\",\n required: [\"origin\", \"offsetWithinLayoutViewport\", \"size\"],\n },\n);\n\nexport const viewportMetricsSchema: JsonSchema = objectSchema(\n {\n layoutViewport: layoutViewportSchema,\n visualViewport: visualViewportSchema,\n scrollOffset: scrollOffsetSchema,\n contentSize: sizeSchema,\n devicePixelRatio: numberSchema({ exclusiveMinimum: 0 }),\n pageScaleFactor: numberSchema({ exclusiveMinimum: 0 }),\n pageZoomFactor: numberSchema({ exclusiveMinimum: 0 }),\n },\n {\n title: \"ViewportMetrics\",\n required: [\n \"layoutViewport\",\n \"visualViewport\",\n \"scrollOffset\",\n \"contentSize\",\n \"devicePixelRatio\",\n \"pageScaleFactor\",\n \"pageZoomFactor\",\n ],\n },\n);\n","export type { PageLifecycleState, PageInfo, FrameInfo } from \"@opensteer/browser-core\";\n\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport { enumSchema, objectSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const pageLifecycleStateSchema: JsonSchema = enumSchema(\n [\"opening\", \"open\", \"closing\", \"closed\", \"crashed\"] as const,\n {\n title: \"PageLifecycleState\",\n },\n);\n\nexport const pageInfoSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n sessionRef: sessionRefSchema,\n openerPageRef: pageRefSchema,\n url: stringSchema({\n description: \"Current main-frame URL.\",\n }),\n title: stringSchema(),\n lifecycleState: pageLifecycleStateSchema,\n },\n {\n title: \"PageInfo\",\n required: [\"pageRef\", \"sessionRef\", \"url\", \"title\", \"lifecycleState\"],\n },\n);\n\nexport const frameInfoSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n pageRef: pageRefSchema,\n parentFrameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n name: stringSchema(),\n isMainFrame: {\n type: \"boolean\",\n },\n },\n {\n title: \"FrameInfo\",\n required: [\"frameRef\", \"pageRef\", \"documentRef\", \"documentEpoch\", \"url\", \"isMainFrame\"],\n },\n);\n","export type {\n HeaderEntry,\n BodyPayloadEncoding,\n NetworkCaptureState,\n NetworkRecordKind,\n NetworkResourceType,\n NetworkInitiatorType,\n NetworkInitiator,\n NetworkTiming,\n NetworkTransferSizes,\n NetworkSourceMetadata,\n} from \"@opensteer/browser-core\";\n\nexport { createHeaderEntry } from \"@opensteer/browser-core\";\n\nimport type {\n BodyPayloadEncoding,\n DocumentRef,\n FrameRef,\n HeaderEntry,\n NetworkCaptureState,\n NetworkInitiator,\n NetworkRecordKind,\n NetworkRequestId,\n NetworkResourceType,\n NetworkSourceMetadata,\n NetworkTiming,\n NetworkTransferSizes,\n PageRef,\n SessionRef,\n WorkerRef,\n} from \"@opensteer/browser-core\";\n\nimport {\n documentRefSchema,\n frameRefSchema,\n networkRequestIdSchema,\n pageRefSchema,\n sessionRefSchema,\n workerRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport interface BodyPayload {\n readonly data: string;\n readonly encoding: BodyPayloadEncoding;\n readonly mimeType?: string;\n readonly charset?: string;\n readonly truncated: boolean;\n readonly capturedByteLength: number;\n readonly originalByteLength?: number;\n}\n\nexport interface NetworkRecord {\n readonly kind: NetworkRecordKind;\n readonly requestId: NetworkRequestId;\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly method: string;\n readonly url: string;\n readonly requestHeaders: readonly HeaderEntry[];\n readonly responseHeaders: readonly HeaderEntry[];\n readonly status?: number;\n readonly statusText?: string;\n readonly resourceType: NetworkResourceType;\n readonly redirectFromRequestId?: NetworkRequestId;\n readonly redirectToRequestId?: NetworkRequestId;\n readonly navigationRequest: boolean;\n readonly initiator?: NetworkInitiator;\n readonly timing?: NetworkTiming;\n readonly transfer?: NetworkTransferSizes;\n readonly source?: NetworkSourceMetadata;\n readonly captureState: NetworkCaptureState;\n readonly requestBodyState: NetworkCaptureState;\n readonly responseBodyState: NetworkCaptureState;\n readonly requestBodySkipReason?: string;\n readonly responseBodySkipReason?: string;\n readonly requestBodyError?: string;\n readonly responseBodyError?: string;\n readonly requestBody?: BodyPayload;\n readonly responseBody?: BodyPayload;\n}\n\nexport type NetworkQuerySource = \"live\" | \"saved\";\n\nexport interface NetworkQueryRecord {\n readonly recordId: string;\n readonly source: NetworkQuerySource;\n readonly actionId?: string;\n readonly tags?: readonly string[];\n readonly savedAt?: number;\n readonly record: NetworkRecord;\n}\n\nexport function createBodyPayload(\n data: string,\n options: {\n readonly encoding?: BodyPayloadEncoding;\n readonly mimeType?: string;\n readonly charset?: string;\n readonly truncated?: boolean;\n readonly originalByteLength?: number;\n } = {},\n): BodyPayload {\n const capturedByteLength = Buffer.from(data, \"base64\").byteLength;\n\n return {\n data,\n encoding: options.encoding ?? \"identity\",\n truncated: options.truncated ?? false,\n capturedByteLength,\n ...(options.mimeType === undefined ? {} : { mimeType: options.mimeType }),\n ...(options.charset === undefined ? {} : { charset: options.charset }),\n ...(options.originalByteLength === undefined\n ? {}\n : { originalByteLength: options.originalByteLength }),\n };\n}\n\nexport function bodyPayloadFromUtf8(\n value: string,\n options: {\n readonly mimeType?: string;\n readonly encoding?: BodyPayloadEncoding;\n readonly truncated?: boolean;\n readonly originalByteLength?: number;\n } = {},\n): BodyPayload {\n return createBodyPayload(Buffer.from(value, \"utf8\").toString(\"base64\"), {\n ...(options.mimeType === undefined ? {} : { mimeType: options.mimeType }),\n ...(options.encoding === undefined ? {} : { encoding: options.encoding }),\n ...(options.truncated === undefined ? {} : { truncated: options.truncated }),\n ...(options.originalByteLength === undefined\n ? {}\n : { originalByteLength: options.originalByteLength }),\n charset: \"utf-8\",\n });\n}\n\nexport const headerEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"HeaderEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nexport const bodyPayloadEncodingSchema: JsonSchema = enumSchema(\n [\"identity\", \"base64\", \"gzip\", \"deflate\", \"brotli\", \"unknown\"] as const,\n {\n title: \"BodyPayloadEncoding\",\n },\n);\n\nexport const bodyPayloadSchema: JsonSchema = objectSchema(\n {\n data: stringSchema({\n description: \"Binary payload encoded as base64.\",\n }),\n encoding: bodyPayloadEncodingSchema,\n mimeType: stringSchema(),\n charset: stringSchema(),\n truncated: {\n type: \"boolean\",\n },\n capturedByteLength: integerSchema({ minimum: 0 }),\n originalByteLength: integerSchema({ minimum: 0 }),\n },\n {\n title: \"BodyPayload\",\n required: [\"data\", \"encoding\", \"truncated\", \"capturedByteLength\"],\n },\n);\n\nexport const networkRecordKindSchema: JsonSchema = enumSchema(\n [\"http\", \"websocket\", \"event-stream\"] as const,\n {\n title: \"NetworkRecordKind\",\n },\n);\n\nexport const networkCaptureStateSchema: JsonSchema = enumSchema(\n [\"pending\", \"complete\", \"failed\", \"skipped\"] as const,\n {\n title: \"NetworkCaptureState\",\n },\n);\n\nexport const networkResourceTypeSchema: JsonSchema = enumSchema(\n [\n \"document\",\n \"stylesheet\",\n \"image\",\n \"media\",\n \"font\",\n \"script\",\n \"fetch\",\n \"xhr\",\n \"websocket\",\n \"event-stream\",\n \"manifest\",\n \"texttrack\",\n \"beacon\",\n \"ping\",\n \"preflight\",\n \"other\",\n ] as const,\n {\n title: \"NetworkResourceType\",\n },\n);\n\nexport const networkInitiatorTypeSchema: JsonSchema = enumSchema(\n [\"parser\", \"script\", \"preload\", \"redirect\", \"user\", \"service-worker\", \"other\"] as const,\n {\n title: \"NetworkInitiatorType\",\n },\n);\n\nexport const networkInitiatorSchema: JsonSchema = objectSchema(\n {\n type: networkInitiatorTypeSchema,\n url: stringSchema(),\n lineNumber: integerSchema({ minimum: 0 }),\n columnNumber: integerSchema({ minimum: 0 }),\n requestId: networkRequestIdSchema,\n stackTrace: arraySchema(stringSchema()),\n },\n {\n title: \"NetworkInitiator\",\n required: [\"type\"],\n },\n);\n\nexport const networkTimingSchema: JsonSchema = objectSchema(\n {\n requestStartMs: numberSchema(),\n dnsStartMs: numberSchema(),\n dnsEndMs: numberSchema(),\n connectStartMs: numberSchema(),\n connectEndMs: numberSchema(),\n sslStartMs: numberSchema(),\n sslEndMs: numberSchema(),\n requestSentMs: numberSchema(),\n responseStartMs: numberSchema(),\n responseEndMs: numberSchema(),\n workerStartMs: numberSchema(),\n workerReadyMs: numberSchema(),\n },\n {\n title: \"NetworkTiming\",\n },\n);\n\nexport const networkTransferSizesSchema: JsonSchema = objectSchema(\n {\n requestHeadersBytes: integerSchema({ minimum: 0 }),\n responseHeadersBytes: integerSchema({ minimum: 0 }),\n encodedBodyBytes: integerSchema({ minimum: 0 }),\n decodedBodyBytes: integerSchema({ minimum: 0 }),\n transferSizeBytes: integerSchema({ minimum: 0 }),\n },\n {\n title: \"NetworkTransferSizes\",\n },\n);\n\nexport const networkSourceMetadataSchema: JsonSchema = objectSchema(\n {\n protocol: stringSchema(),\n remoteAddress: objectSchema(\n {\n ip: stringSchema(),\n port: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n fromServiceWorker: {\n type: \"boolean\",\n },\n fromDiskCache: {\n type: \"boolean\",\n },\n fromMemoryCache: {\n type: \"boolean\",\n },\n workerRef: workerRefSchema,\n },\n {\n title: \"NetworkSourceMetadata\",\n },\n);\n\nexport const networkRecordSchema: JsonSchema = objectSchema(\n {\n kind: networkRecordKindSchema,\n requestId: networkRequestIdSchema,\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n method: stringSchema(),\n url: stringSchema(),\n requestHeaders: arraySchema(headerEntrySchema),\n responseHeaders: arraySchema(headerEntrySchema),\n status: integerSchema({ minimum: 0 }),\n statusText: stringSchema(),\n resourceType: networkResourceTypeSchema,\n redirectFromRequestId: networkRequestIdSchema,\n redirectToRequestId: networkRequestIdSchema,\n navigationRequest: {\n type: \"boolean\",\n },\n initiator: networkInitiatorSchema,\n timing: networkTimingSchema,\n transfer: networkTransferSizesSchema,\n source: networkSourceMetadataSchema,\n captureState: networkCaptureStateSchema,\n requestBodyState: networkCaptureStateSchema,\n responseBodyState: networkCaptureStateSchema,\n requestBodySkipReason: stringSchema(),\n responseBodySkipReason: stringSchema(),\n requestBodyError: stringSchema(),\n responseBodyError: stringSchema(),\n requestBody: bodyPayloadSchema,\n responseBody: bodyPayloadSchema,\n },\n {\n title: \"NetworkRecord\",\n required: [\n \"kind\",\n \"requestId\",\n \"sessionRef\",\n \"method\",\n \"url\",\n \"requestHeaders\",\n \"responseHeaders\",\n \"resourceType\",\n \"navigationRequest\",\n \"captureState\",\n \"requestBodyState\",\n \"responseBodyState\",\n ],\n },\n);\n\nexport const networkQuerySourceSchema: JsonSchema = enumSchema([\"live\", \"saved\"] as const, {\n title: \"NetworkQuerySource\",\n});\n\nexport const networkQueryRecordSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n source: networkQuerySourceSchema,\n actionId: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n savedAt: integerSchema({ minimum: 0 }),\n record: networkRecordSchema,\n },\n {\n title: \"NetworkQueryRecord\",\n required: [\"recordId\", \"source\", \"record\"],\n },\n);\n\nexport const orderedHeadersSchema: JsonSchema = arraySchema(headerEntrySchema, {\n title: \"OrderedHeaders\",\n});\n","import type { JsonSchema } from \"./json.js\";\nimport { enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\n\nexport type CaptchaType = \"recaptcha-v2\" | \"hcaptcha\" | \"turnstile\";\nexport type CaptchaProvider = \"2captcha\" | \"capsolver\";\n\nexport interface CaptchaDetectionResult {\n readonly type: CaptchaType;\n readonly siteKey: string;\n readonly pageUrl: string;\n}\n\nexport interface OpensteerCaptchaSolveInput {\n readonly provider: CaptchaProvider;\n readonly apiKey: string;\n readonly pageRef?: PageRef;\n readonly timeoutMs?: number;\n readonly type?: CaptchaType;\n readonly siteKey?: string;\n readonly pageUrl?: string;\n}\n\nexport interface OpensteerCaptchaSolveOutput {\n readonly captcha: CaptchaDetectionResult;\n readonly token: string;\n readonly injected: boolean;\n readonly provider: CaptchaProvider;\n}\n\nexport const captchaTypeSchema: JsonSchema = enumSchema(\n [\"recaptcha-v2\", \"hcaptcha\", \"turnstile\"] as const,\n {\n title: \"CaptchaType\",\n },\n);\n\nexport const captchaProviderSchema: JsonSchema = enumSchema([\"2captcha\", \"capsolver\"] as const, {\n title: \"CaptchaProvider\",\n});\n\nexport const captchaDetectionResultSchema: JsonSchema = objectSchema(\n {\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n },\n {\n title: \"CaptchaDetectionResult\",\n required: [\"type\", \"siteKey\", \"pageUrl\"],\n },\n);\n\nexport const opensteerCaptchaSolveInputSchema: JsonSchema = objectSchema(\n {\n provider: captchaProviderSchema,\n apiKey: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 1 }),\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerCaptchaSolveInput\",\n required: [\"provider\", \"apiKey\"],\n },\n);\n\nexport const opensteerCaptchaSolveOutputSchema: JsonSchema = objectSchema(\n {\n captcha: captchaDetectionResultSchema,\n token: stringSchema({ minLength: 1 }),\n injected: { type: \"boolean\" },\n provider: captchaProviderSchema,\n },\n {\n title: \"OpensteerCaptchaSolveOutput\",\n required: [\"captcha\", \"token\", \"injected\", \"provider\"],\n },\n);\n","import type { HeaderEntry } from \"./network.js\";\nimport {\n bodyPayloadSchema,\n headerEntrySchema,\n networkQueryRecordSchema,\n networkResourceTypeSchema,\n type BodyPayload,\n type NetworkQueryRecord,\n type NetworkResourceType,\n} from \"./network.js\";\nimport type { CaptchaProvider, CaptchaType } from \"./captcha.js\";\nimport { captchaProviderSchema, captchaTypeSchema } from \"./captcha.js\";\nimport type { JsonSchema, JsonValue } from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n} from \"./json.js\";\n\nexport type OpensteerRequestScalar = string | number | boolean;\nexport type TransportKind =\n | \"direct-http\"\n | \"matched-tls\"\n | \"context-http\"\n | \"page-http\"\n | \"session-http\";\n\nexport interface OpensteerRequestEntry {\n readonly name: string;\n readonly value: string;\n}\n\nexport type OpensteerRequestParameterLocation = \"path\" | \"query\" | \"header\";\n\nexport interface OpensteerRequestPlanParameter {\n readonly name: string;\n readonly in: OpensteerRequestParameterLocation;\n readonly wireName?: string;\n readonly required?: boolean;\n readonly description?: string;\n readonly defaultValue?: string;\n}\n\nexport interface OpensteerRequestPlanTransport {\n readonly kind: TransportKind;\n readonly requiresBrowser?: boolean;\n readonly requireSameOrigin?: boolean;\n readonly cookieJar?: string;\n}\n\nexport interface OpensteerRequestPlanEndpoint {\n readonly method: string;\n readonly urlTemplate: string;\n readonly defaultQuery?: readonly OpensteerRequestEntry[];\n readonly defaultHeaders?: readonly OpensteerRequestEntry[];\n}\n\nexport type OpensteerRequestPlanBodyKind = \"json\" | \"form\" | \"text\";\n\nexport interface OpensteerRequestPlanBody {\n readonly kind?: OpensteerRequestPlanBodyKind;\n readonly contentType?: string;\n readonly required?: boolean;\n readonly description?: string;\n readonly template?: JsonValue | string;\n readonly fields?: readonly OpensteerRequestEntry[];\n}\n\nexport interface OpensteerRequestPlanResponseExpectation {\n readonly status: number | readonly number[];\n readonly contentType?: string;\n}\n\nexport interface OpensteerRecipeRef {\n readonly key: string;\n readonly version?: string;\n}\n\nexport type OpensteerAuthRecipeRef = OpensteerRecipeRef;\n\nexport interface OpensteerRequestFailurePolicyHeaderMatch {\n readonly name: string;\n readonly valueIncludes: string;\n}\n\nexport interface OpensteerRequestFailurePolicy {\n readonly statusCodes?: readonly number[];\n readonly finalUrlIncludes?: readonly string[];\n readonly responseHeaders?: readonly OpensteerRequestFailurePolicyHeaderMatch[];\n readonly responseBodyIncludes?: readonly string[];\n}\n\nexport interface OpensteerRequestRetryBackoffPolicy {\n readonly strategy?: \"fixed\" | \"exponential\";\n readonly delayMs: number;\n readonly maxDelayMs?: number;\n}\n\nexport interface OpensteerRequestRetryPolicy {\n readonly maxRetries: number;\n readonly backoff?: OpensteerRequestRetryBackoffPolicy;\n readonly respectRetryAfter?: boolean;\n readonly failurePolicy?: OpensteerRequestFailurePolicy;\n}\n\nexport type OpensteerRecipeCachePolicy = \"none\" | \"untilFailure\";\n\nexport interface OpensteerRequestPlanRecipeBinding {\n readonly recipe: OpensteerRecipeRef;\n readonly cachePolicy?: OpensteerRecipeCachePolicy;\n}\n\nexport interface OpensteerRequestPlanRecoverBinding extends OpensteerRequestPlanRecipeBinding {\n readonly failurePolicy: OpensteerRequestFailurePolicy;\n}\n\nexport interface OpensteerRequestPlanRecipes {\n readonly prepare?: OpensteerRequestPlanRecipeBinding;\n readonly recover?: OpensteerRequestPlanRecoverBinding;\n}\n\nexport interface OpensteerRequestPlanAuth {\n readonly strategy: \"session-cookie\" | \"bearer-token\" | \"api-key\" | \"custom\";\n readonly recipe?: OpensteerRecipeRef;\n readonly failurePolicy?: OpensteerRequestFailurePolicy;\n readonly description?: string;\n}\n\nexport interface OpensteerRequestPlanPayload {\n readonly transport: OpensteerRequestPlanTransport;\n readonly endpoint: OpensteerRequestPlanEndpoint;\n readonly parameters?: readonly OpensteerRequestPlanParameter[];\n readonly body?: OpensteerRequestPlanBody;\n readonly response?: OpensteerRequestPlanResponseExpectation;\n readonly recipes?: OpensteerRequestPlanRecipes;\n readonly retryPolicy?: OpensteerRequestRetryPolicy;\n readonly auth?: OpensteerRequestPlanAuth;\n}\n\nexport interface OpensteerRegistryProvenance {\n readonly source: string;\n readonly sourceId?: string;\n readonly capturedAt?: number;\n readonly notes?: string;\n}\n\nexport interface OpensteerRequestPlanFreshness {\n readonly lastValidatedAt?: number;\n readonly staleAt?: number;\n readonly expiresAt?: number;\n}\n\nexport interface OpensteerRequestPlanRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly freshness?: OpensteerRequestPlanFreshness;\n readonly payload: OpensteerRequestPlanPayload;\n}\n\nexport interface OpensteerRecipeStepHeaderCapture {\n readonly name: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepBodyJsonPointerCapture {\n readonly pointer: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepBodyTextCapture {\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepResponseCapture {\n readonly header?: OpensteerRecipeStepHeaderCapture;\n readonly bodyJsonPointer?: OpensteerRecipeStepBodyJsonPointerCapture;\n readonly bodyText?: OpensteerRecipeStepBodyTextCapture;\n}\n\nexport interface OpensteerRecipeRequestStepInput {\n readonly url: string;\n readonly transport?: TransportKind;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly method?: string;\n readonly headers?: Readonly<Record<string, string>>;\n readonly query?: Readonly<Record<string, string>>;\n readonly body?: OpensteerRequestBodyInput;\n readonly followRedirects?: boolean;\n}\n\nexport interface OpensteerRecipeGotoStep {\n readonly kind: \"goto\";\n readonly url: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerRecipeReloadStep {\n readonly kind: \"reload\";\n readonly networkTag?: string;\n}\n\nexport interface OpensteerRecipeWaitForUrlStep {\n readonly kind: \"waitForUrl\";\n readonly includes: string;\n readonly timeoutMs?: number;\n}\n\nexport interface OpensteerRecipeWaitForNetworkStep {\n readonly kind: \"waitForNetwork\";\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly includeBodies?: boolean;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeWaitForCookieStep {\n readonly kind: \"waitForCookie\";\n readonly name: string;\n readonly url?: string;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeWaitForStorageStep {\n readonly kind: \"waitForStorage\";\n readonly area: \"local\" | \"session\";\n readonly origin: string;\n readonly key: string;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeReadCookieStep {\n readonly kind: \"readCookie\";\n readonly name: string;\n readonly url?: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeReadStorageStep {\n readonly kind: \"readStorage\";\n readonly area: \"local\" | \"session\";\n readonly origin: string;\n readonly key: string;\n readonly pageUrl?: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeEvaluateStep {\n readonly kind: \"evaluate\";\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeSyncCookiesToJarStep {\n readonly kind: \"syncCookiesToJar\";\n readonly jar: string;\n readonly urls?: readonly string[];\n}\n\nexport interface OpensteerRecipeRequestStep {\n readonly kind: \"request\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerAuthRecipeSessionRequestStep {\n readonly kind: \"sessionRequest\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerAuthRecipeDirectRequestStep {\n readonly kind: \"directRequest\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerRecipeSolveCaptchaStep {\n readonly kind: \"solveCaptcha\";\n readonly provider: CaptchaProvider;\n readonly apiKey: string;\n readonly pageRef?: PageRef;\n readonly timeoutMs?: number;\n readonly type?: CaptchaType;\n readonly siteKey?: string;\n readonly pageUrl?: string;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeHookRef {\n readonly specifier: string;\n readonly export: string;\n}\n\nexport type OpensteerAuthRecipeHookRef = OpensteerRecipeHookRef;\n\nexport interface OpensteerRecipeHookStep {\n readonly kind: \"hook\";\n readonly hook: OpensteerRecipeHookRef;\n}\n\nexport type OpensteerRecipeStep =\n | OpensteerRecipeGotoStep\n | OpensteerRecipeReloadStep\n | OpensteerRecipeWaitForUrlStep\n | OpensteerRecipeWaitForNetworkStep\n | OpensteerRecipeWaitForCookieStep\n | OpensteerRecipeWaitForStorageStep\n | OpensteerRecipeReadCookieStep\n | OpensteerRecipeReadStorageStep\n | OpensteerRecipeEvaluateStep\n | OpensteerRecipeSyncCookiesToJarStep\n | OpensteerRecipeRequestStep\n | OpensteerAuthRecipeSessionRequestStep\n | OpensteerAuthRecipeDirectRequestStep\n | OpensteerRecipeSolveCaptchaStep\n | OpensteerRecipeHookStep;\n\nexport type OpensteerAuthRecipeStep = OpensteerRecipeStep;\n\nexport interface OpensteerRecipeRetryOverrides {\n readonly params?: Readonly<Record<string, string>>;\n readonly headers?: Readonly<Record<string, string>>;\n readonly query?: Readonly<Record<string, string>>;\n readonly body?: Readonly<Record<string, string>>;\n}\n\nexport type OpensteerAuthRecipeRetryOverrides = OpensteerRecipeRetryOverrides;\n\nexport interface OpensteerRecipePayload {\n readonly description?: string;\n readonly steps: readonly OpensteerRecipeStep[];\n readonly outputs?: OpensteerRecipeRetryOverrides;\n}\n\nexport type OpensteerAuthRecipePayload = OpensteerRecipePayload;\n\nexport interface OpensteerRecipeRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerRecipePayload;\n}\n\nexport type OpensteerAuthRecipeRecord = OpensteerRecipeRecord;\n\nexport interface OpensteerNetworkQueryInput {\n readonly source?: \"live\" | \"saved\";\n readonly pageRef?: PageRef;\n readonly recordId?: string;\n readonly requestId?: string;\n readonly actionId?: string;\n readonly tag?: string;\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n readonly includeBodies?: boolean;\n readonly limit?: number;\n}\n\nexport interface OpensteerNetworkQueryOutput {\n readonly records: readonly NetworkQueryRecord[];\n}\n\nexport interface OpensteerNetworkSaveInput {\n readonly pageRef?: PageRef;\n readonly recordId?: string;\n readonly requestId?: string;\n readonly actionId?: string;\n readonly tag: string;\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n}\n\nexport interface OpensteerNetworkSaveOutput {\n readonly savedCount: number;\n}\n\nexport interface OpensteerNetworkClearInput {\n readonly tag?: string;\n}\n\nexport interface OpensteerNetworkClearOutput {\n readonly clearedCount: number;\n}\n\nexport interface OpensteerWriteRequestPlanInput {\n readonly id?: string;\n readonly key: string;\n readonly version: string;\n readonly tags?: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly freshness?: OpensteerRequestPlanFreshness;\n readonly payload: OpensteerRequestPlanPayload;\n}\n\nexport interface OpensteerGetRequestPlanInput {\n readonly key: string;\n readonly version?: string;\n}\n\nexport interface OpensteerListRequestPlansInput {\n readonly key?: string;\n}\n\nexport interface OpensteerListRequestPlansOutput {\n readonly plans: readonly OpensteerRequestPlanRecord[];\n}\n\nexport interface OpensteerWriteRecipeInput {\n readonly id?: string;\n readonly key: string;\n readonly version: string;\n readonly tags?: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerRecipePayload;\n}\n\nexport type OpensteerWriteAuthRecipeInput = OpensteerWriteRecipeInput;\n\nexport interface OpensteerGetRecipeInput {\n readonly key: string;\n readonly version?: string;\n}\n\nexport type OpensteerGetAuthRecipeInput = OpensteerGetRecipeInput;\n\nexport interface OpensteerListRecipesInput {\n readonly key?: string;\n}\n\nexport type OpensteerListAuthRecipesInput = OpensteerListRecipesInput;\n\nexport interface OpensteerListRecipesOutput {\n readonly recipes: readonly OpensteerRecipeRecord[];\n}\n\nexport type OpensteerListAuthRecipesOutput = OpensteerListRecipesOutput;\n\nexport interface OpensteerRunRecipeInput {\n readonly key: string;\n readonly version?: string;\n readonly variables?: Readonly<Record<string, string>>;\n}\n\nexport type OpensteerRunAuthRecipeInput = OpensteerRunRecipeInput;\n\nexport interface OpensteerRunRecipeOutput {\n readonly recipe: {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n };\n readonly variables: Readonly<Record<string, string>>;\n readonly overrides?: OpensteerRecipeRetryOverrides;\n}\n\nexport type OpensteerRunAuthRecipeOutput = OpensteerRunRecipeOutput;\n\nexport type OpensteerRequestScalarMap = Readonly<Record<string, OpensteerRequestScalar>>;\n\nexport interface OpensteerJsonRequestBodyInput {\n readonly json: JsonValue;\n readonly contentType?: string;\n}\n\nexport interface OpensteerTextRequestBodyInput {\n readonly text: string;\n readonly contentType?: string;\n}\n\nexport interface OpensteerBase64RequestBodyInput {\n readonly base64: string;\n readonly contentType?: string;\n}\n\nexport type OpensteerRequestBodyInput =\n | OpensteerJsonRequestBodyInput\n | OpensteerTextRequestBodyInput\n | OpensteerBase64RequestBodyInput;\n\nexport interface OpensteerRequestExecuteInput {\n readonly key: string;\n readonly version?: string;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly params?: OpensteerRequestScalarMap;\n readonly query?: OpensteerRequestScalarMap;\n readonly headers?: OpensteerRequestScalarMap;\n readonly bodyVars?: OpensteerRequestScalarMap;\n readonly body?: OpensteerRequestBodyInput;\n readonly validateResponse?: boolean;\n}\n\nexport interface OpensteerRawRequestInput {\n readonly transport?: TransportKind;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly url: string;\n readonly method?: string;\n readonly headers?: readonly HeaderEntry[];\n readonly body?: OpensteerRequestBodyInput;\n readonly followRedirects?: boolean;\n}\n\nexport interface OpensteerRequestTransportResult {\n readonly method: string;\n readonly url: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n}\n\nexport interface OpensteerRequestResponseResult {\n readonly url: string;\n readonly status: number;\n readonly statusText: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly redirected: boolean;\n}\n\nexport interface OpensteerRequestExecuteOutput {\n readonly plan: {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n };\n readonly request: OpensteerRequestTransportResult;\n readonly response: OpensteerRequestResponseResult;\n readonly recovery?: {\n readonly attempted: boolean;\n readonly succeeded: boolean;\n readonly matchedFailurePolicy?: boolean;\n readonly recipe?: {\n readonly key: string;\n readonly version: string;\n };\n };\n readonly data?: unknown;\n}\n\nexport interface OpensteerRawRequestOutput {\n readonly recordId: string;\n readonly request: OpensteerRequestTransportResult;\n readonly response: OpensteerRequestResponseResult;\n readonly data?: unknown;\n}\n\nexport interface OpensteerInferRequestPlanInput {\n readonly recordId: string;\n readonly key: string;\n readonly version: string;\n readonly transport?: TransportKind;\n}\n\nexport const opensteerRequestScalarSchema: JsonSchema = oneOfSchema(\n [stringSchema(), { type: \"number\" }, { type: \"boolean\" }],\n {\n title: \"OpensteerRequestScalar\",\n },\n);\n\nconst opensteerRequestScalarMapSchema: JsonSchema = recordSchema(opensteerRequestScalarSchema, {\n title: \"OpensteerRequestScalarMap\",\n});\n\nexport const opensteerRequestEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n },\n {\n title: \"OpensteerRequestEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nexport const opensteerRequestPlanParameterLocationSchema: JsonSchema = enumSchema(\n [\"path\", \"query\", \"header\"] as const,\n {\n title: \"OpensteerRequestParameterLocation\",\n },\n);\n\nexport const opensteerRequestPlanParameterSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n in: opensteerRequestPlanParameterLocationSchema,\n wireName: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n defaultValue: stringSchema(),\n },\n {\n title: \"OpensteerRequestPlanParameter\",\n required: [\"name\", \"in\"],\n },\n);\n\nexport const opensteerRequestPlanTransportSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\n \"direct-http\",\n \"matched-tls\",\n \"context-http\",\n \"page-http\",\n \"session-http\",\n ] as const),\n requiresBrowser: { type: \"boolean\" },\n requireSameOrigin: { type: \"boolean\" },\n cookieJar: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanTransport\",\n required: [\"kind\"],\n },\n);\n\nexport const opensteerRequestPlanEndpointSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n urlTemplate: stringSchema({ minLength: 1 }),\n defaultQuery: arraySchema(opensteerRequestEntrySchema),\n defaultHeaders: arraySchema(opensteerRequestEntrySchema),\n },\n {\n title: \"OpensteerRequestPlanEndpoint\",\n required: [\"method\", \"urlTemplate\"],\n },\n);\n\nexport const opensteerRequestPlanBodySchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"json\", \"form\", \"text\"] as const),\n contentType: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n template: defineSchema({\n title: \"JsonValue\",\n }),\n fields: arraySchema(opensteerRequestEntrySchema),\n },\n {\n title: \"OpensteerRequestPlanBody\",\n },\n);\n\nexport const transportKindSchema: JsonSchema = enumSchema(\n [\"direct-http\", \"matched-tls\", \"context-http\", \"page-http\", \"session-http\"] as const,\n {\n title: \"TransportKind\",\n },\n);\n\nconst opensteerRequestPlanStatusSchema: JsonSchema = oneOfSchema(\n [\n integerSchema({ minimum: 100, maximum: 599 }),\n arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n ],\n {\n title: \"OpensteerRequestPlanResponseStatus\",\n },\n);\n\nexport const opensteerRequestPlanResponseExpectationSchema: JsonSchema = objectSchema(\n {\n status: opensteerRequestPlanStatusSchema,\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanResponseExpectation\",\n required: [\"status\"],\n },\n);\n\nexport const opensteerRecipeRefSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeRef\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerAuthRecipeRefSchema: JsonSchema = opensteerRecipeRefSchema;\n\nexport const opensteerRequestFailurePolicyHeaderMatchSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n valueIncludes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestFailurePolicyHeaderMatch\",\n required: [\"name\", \"valueIncludes\"],\n },\n);\n\nexport const opensteerRequestFailurePolicySchema: JsonSchema = objectSchema(\n {\n statusCodes: arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n finalUrlIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseHeaders: arraySchema(opensteerRequestFailurePolicyHeaderMatchSchema, {\n minItems: 1,\n }),\n responseBodyIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerRequestFailurePolicy\",\n },\n);\n\nexport const opensteerRequestRetryBackoffPolicySchema: JsonSchema = objectSchema(\n {\n strategy: enumSchema([\"fixed\", \"exponential\"] as const),\n delayMs: integerSchema({ minimum: 0 }),\n maxDelayMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerRequestRetryBackoffPolicy\",\n required: [\"delayMs\"],\n },\n);\n\nexport const opensteerRequestRetryPolicySchema: JsonSchema = objectSchema(\n {\n maxRetries: integerSchema({ minimum: 0 }),\n backoff: opensteerRequestRetryBackoffPolicySchema,\n respectRetryAfter: { type: \"boolean\" },\n failurePolicy: opensteerRequestFailurePolicySchema,\n },\n {\n title: \"OpensteerRequestRetryPolicy\",\n required: [\"maxRetries\"],\n },\n);\n\nexport const opensteerRecipeCachePolicySchema: JsonSchema = enumSchema(\n [\"none\", \"untilFailure\"] as const,\n {\n title: \"OpensteerRecipeCachePolicy\",\n },\n);\n\nexport const opensteerRequestPlanRecipeBindingSchema: JsonSchema = objectSchema(\n {\n recipe: opensteerRecipeRefSchema,\n cachePolicy: opensteerRecipeCachePolicySchema,\n },\n {\n title: \"OpensteerRequestPlanRecipeBinding\",\n required: [\"recipe\"],\n },\n);\n\nexport const opensteerRequestPlanRecoverBindingSchema: JsonSchema = objectSchema(\n {\n recipe: opensteerRecipeRefSchema,\n cachePolicy: opensteerRecipeCachePolicySchema,\n failurePolicy: opensteerRequestFailurePolicySchema,\n },\n {\n title: \"OpensteerRequestPlanRecoverBinding\",\n required: [\"recipe\", \"failurePolicy\"],\n },\n);\n\nexport const opensteerRequestPlanRecipesSchema: JsonSchema = objectSchema(\n {\n prepare: opensteerRequestPlanRecipeBindingSchema,\n recover: opensteerRequestPlanRecoverBindingSchema,\n },\n {\n title: \"OpensteerRequestPlanRecipes\",\n },\n);\n\nexport const opensteerRequestPlanAuthSchema: JsonSchema = objectSchema(\n {\n strategy: enumSchema([\"session-cookie\", \"bearer-token\", \"api-key\", \"custom\"] as const),\n recipe: opensteerRecipeRefSchema,\n failurePolicy: opensteerRequestFailurePolicySchema,\n description: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanAuth\",\n required: [\"strategy\"],\n },\n);\n\nexport const opensteerRequestPlanPayloadSchema: JsonSchema = objectSchema(\n {\n transport: opensteerRequestPlanTransportSchema,\n endpoint: opensteerRequestPlanEndpointSchema,\n parameters: arraySchema(opensteerRequestPlanParameterSchema),\n body: opensteerRequestPlanBodySchema,\n response: opensteerRequestPlanResponseExpectationSchema,\n recipes: opensteerRequestPlanRecipesSchema,\n retryPolicy: opensteerRequestRetryPolicySchema,\n auth: opensteerRequestPlanAuthSchema,\n },\n {\n title: \"OpensteerRequestPlanPayload\",\n required: [\"transport\", \"endpoint\"],\n },\n);\n\nexport const opensteerRegistryProvenanceSchema: JsonSchema = objectSchema(\n {\n source: stringSchema({ minLength: 1 }),\n sourceId: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRegistryProvenance\",\n required: [\"source\"],\n },\n);\n\nexport const opensteerRequestPlanFreshnessSchema: JsonSchema = objectSchema(\n {\n lastValidatedAt: integerSchema({ minimum: 0 }),\n staleAt: integerSchema({ minimum: 0 }),\n expiresAt: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerRequestPlanFreshness\",\n },\n);\n\nexport const opensteerRequestPlanRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n freshness: opensteerRequestPlanFreshnessSchema,\n payload: opensteerRequestPlanPayloadSchema,\n },\n {\n title: \"OpensteerRequestPlanRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst jsonValueSchema: JsonSchema = defineSchema({\n title: \"JsonValue\",\n});\n\nexport const opensteerRequestBodyInputSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n json: jsonValueSchema,\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerJsonRequestBodyInput\",\n required: [\"json\"],\n },\n ),\n objectSchema(\n {\n text: stringSchema(),\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerTextRequestBodyInput\",\n required: [\"text\"],\n },\n ),\n objectSchema(\n {\n base64: stringSchema(),\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerBase64RequestBodyInput\",\n required: [\"base64\"],\n },\n ),\n ],\n {\n title: \"OpensteerRequestBodyInput\",\n },\n);\n\nconst opensteerRecipeRetryOverridesSchema: JsonSchema = objectSchema(\n {\n params: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeParams\",\n }),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeHeaders\",\n }),\n query: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeQuery\",\n }),\n body: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeBodyVariables\",\n }),\n },\n {\n title: \"OpensteerRecipeRetryOverrides\",\n },\n);\n\nconst opensteerAuthRecipeRetryOverridesSchema: JsonSchema = opensteerRecipeRetryOverridesSchema;\n\nconst opensteerRecipeStepResponseCaptureSchema: JsonSchema = objectSchema(\n {\n header: objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeHeaderCapture\",\n required: [\"name\", \"saveAs\"],\n },\n ),\n bodyJsonPointer: objectSchema(\n {\n pointer: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeBodyJsonPointerCapture\",\n required: [\"pointer\", \"saveAs\"],\n },\n ),\n bodyText: objectSchema(\n {\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeBodyTextCapture\",\n required: [\"saveAs\"],\n },\n ),\n },\n {\n title: \"OpensteerRecipeStepResponseCapture\",\n },\n);\n\nconst opensteerRecipeRequestStepInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeRequestHeaders\",\n }),\n query: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeRequestQuery\",\n }),\n body: opensteerRequestBodyInputSchema,\n followRedirects: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRecipeRequestStepInput\",\n required: [\"url\"],\n },\n);\n\nexport const opensteerRecipeHookRefSchema: JsonSchema = objectSchema(\n {\n specifier: stringSchema({ minLength: 1 }),\n export: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeHookRef\",\n required: [\"specifier\", \"export\"],\n },\n);\n\nexport const opensteerAuthRecipeHookRefSchema: JsonSchema = opensteerRecipeHookRefSchema;\n\nexport const opensteerRecipeStepSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n kind: enumSchema([\"goto\"] as const),\n url: stringSchema({ minLength: 1 }),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeGotoStep\",\n required: [\"kind\", \"url\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"reload\"] as const),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeReloadStep\",\n required: [\"kind\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForUrl\"] as const),\n includes: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForUrlStep\",\n required: [\"kind\", \"includes\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForNetwork\"] as const),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n includeBodies: { type: \"boolean\" },\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeWaitForNetworkStep\",\n required: [\"kind\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForCookie\"] as const),\n name: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForCookieStep\",\n required: [\"kind\", \"name\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForStorage\"] as const),\n area: enumSchema([\"local\", \"session\"] as const),\n origin: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForStorageStep\",\n required: [\"kind\", \"area\", \"origin\", \"key\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"readCookie\"] as const),\n name: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeReadCookieStep\",\n required: [\"kind\", \"name\", \"saveAs\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"readStorage\"] as const),\n area: enumSchema([\"local\", \"session\"] as const),\n origin: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeReadStorageStep\",\n required: [\"kind\", \"area\", \"origin\", \"key\", \"saveAs\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"evaluate\"] as const),\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(jsonValueSchema),\n pageRef: pageRefSchema,\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeEvaluateStep\",\n required: [\"kind\", \"script\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"syncCookiesToJar\"] as const),\n jar: stringSchema({ minLength: 1 }),\n urls: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n }),\n },\n {\n title: \"OpensteerRecipeSyncCookiesToJarStep\",\n required: [\"kind\", \"jar\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"request\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerRecipeRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"sessionRequest\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerAuthRecipeSessionRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"directRequest\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerAuthRecipeDirectRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"solveCaptcha\"] as const),\n provider: captchaProviderSchema,\n apiKey: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 1 }),\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeSolveCaptchaStep\",\n required: [\"kind\", \"provider\", \"apiKey\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"hook\"] as const),\n hook: opensteerRecipeHookRefSchema,\n },\n {\n title: \"OpensteerRecipeHookStep\",\n required: [\"kind\", \"hook\"],\n },\n ),\n ],\n {\n title: \"OpensteerRecipeStep\",\n },\n);\n\nexport const opensteerAuthRecipeStepSchema: JsonSchema = opensteerRecipeStepSchema;\n\nexport const opensteerRecipePayloadSchema: JsonSchema = objectSchema(\n {\n description: stringSchema({ minLength: 1 }),\n steps: arraySchema(opensteerRecipeStepSchema, {\n minItems: 1,\n }),\n outputs: opensteerRecipeRetryOverridesSchema,\n },\n {\n title: \"OpensteerRecipePayload\",\n required: [\"steps\"],\n },\n);\n\nexport const opensteerAuthRecipePayloadSchema: JsonSchema = opensteerRecipePayloadSchema;\n\nexport const opensteerRecipeRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerRecipePayloadSchema,\n },\n {\n title: \"OpensteerRecipeRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerAuthRecipeRecordSchema: JsonSchema = opensteerRecipeRecordSchema;\n\nexport const opensteerNetworkQueryInputSchema: JsonSchema = objectSchema(\n {\n source: enumSchema([\"live\", \"saved\"] as const, {\n title: \"OpensteerNetworkQuerySource\",\n }),\n pageRef: pageRefSchema,\n recordId: stringSchema({ minLength: 1 }),\n requestId: stringSchema({ minLength: 1 }),\n actionId: stringSchema({ minLength: 1 }),\n tag: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n includeBodies: { type: \"boolean\" },\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n },\n {\n title: \"OpensteerNetworkQueryInput\",\n },\n);\n\nexport const opensteerNetworkQueryOutputSchema: JsonSchema = objectSchema(\n {\n records: arraySchema(networkQueryRecordSchema),\n },\n {\n title: \"OpensteerNetworkQueryOutput\",\n required: [\"records\"],\n },\n);\n\nexport const opensteerNetworkSaveInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n recordId: stringSchema({ minLength: 1 }),\n requestId: stringSchema({ minLength: 1 }),\n actionId: stringSchema({ minLength: 1 }),\n tag: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n },\n {\n title: \"OpensteerNetworkSaveInput\",\n required: [\"tag\"],\n },\n);\n\nexport const opensteerNetworkSaveOutputSchema: JsonSchema = objectSchema(\n {\n savedCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkSaveOutput\",\n required: [\"savedCount\"],\n },\n);\n\nexport const opensteerNetworkClearInputSchema: JsonSchema = objectSchema(\n {\n tag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerNetworkClearInput\",\n },\n);\n\nexport const opensteerNetworkClearOutputSchema: JsonSchema = objectSchema(\n {\n clearedCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkClearOutput\",\n required: [\"clearedCount\"],\n },\n);\n\nexport const opensteerWriteRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n freshness: opensteerRequestPlanFreshnessSchema,\n payload: opensteerRequestPlanPayloadSchema,\n },\n {\n title: \"OpensteerWriteRequestPlanInput\",\n required: [\"key\", \"version\", \"payload\"],\n },\n);\n\nexport const opensteerGetRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerGetRequestPlanInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerListRequestPlansInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerListRequestPlansInput\",\n },\n);\n\nexport const opensteerListRequestPlansOutputSchema: JsonSchema = objectSchema(\n {\n plans: arraySchema(opensteerRequestPlanRecordSchema),\n },\n {\n title: \"OpensteerListRequestPlansOutput\",\n required: [\"plans\"],\n },\n);\n\nexport const opensteerWriteRecipeInputSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerRecipePayloadSchema,\n },\n {\n title: \"OpensteerWriteRecipeInput\",\n required: [\"key\", \"version\", \"payload\"],\n },\n);\n\nexport const opensteerWriteAuthRecipeInputSchema: JsonSchema = opensteerWriteRecipeInputSchema;\n\nexport const opensteerGetRecipeInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerGetRecipeInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerGetAuthRecipeInputSchema: JsonSchema = opensteerGetRecipeInputSchema;\n\nexport const opensteerListRecipesInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerListRecipesInput\",\n },\n);\n\nexport const opensteerListAuthRecipesInputSchema: JsonSchema = opensteerListRecipesInputSchema;\n\nexport const opensteerListRecipesOutputSchema: JsonSchema = objectSchema(\n {\n recipes: arraySchema(opensteerRecipeRecordSchema),\n },\n {\n title: \"OpensteerListRecipesOutput\",\n required: [\"recipes\"],\n },\n);\n\nexport const opensteerListAuthRecipesOutputSchema: JsonSchema = opensteerListRecipesOutputSchema;\n\nexport const opensteerRunRecipeInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n variables: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeVariables\",\n }),\n },\n {\n title: \"OpensteerRunRecipeInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerRunAuthRecipeInputSchema: JsonSchema = opensteerRunRecipeInputSchema;\n\nexport const opensteerRunRecipeOutputSchema: JsonSchema = objectSchema(\n {\n recipe: objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRecipeRef\",\n required: [\"id\", \"key\", \"version\"],\n },\n ),\n variables: recordSchema(stringSchema(), {\n title: \"OpensteerResolvedRecipeVariables\",\n }),\n overrides: opensteerRecipeRetryOverridesSchema,\n },\n {\n title: \"OpensteerRunRecipeOutput\",\n required: [\"recipe\", \"variables\"],\n },\n);\n\nexport const opensteerRunAuthRecipeOutputSchema: JsonSchema = opensteerRunRecipeOutputSchema;\n\nexport const opensteerRequestExecuteInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n params: opensteerRequestScalarMapSchema,\n query: opensteerRequestScalarMapSchema,\n headers: opensteerRequestScalarMapSchema,\n bodyVars: opensteerRequestScalarMapSchema,\n body: opensteerRequestBodyInputSchema,\n validateResponse: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRequestExecuteInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerRawRequestInputSchema: JsonSchema = objectSchema(\n {\n transport: transportKindSchema,\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n headers: arraySchema(headerEntrySchema),\n body: opensteerRequestBodyInputSchema,\n followRedirects: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRawRequestInput\",\n required: [\"url\"],\n },\n);\n\nexport const opensteerRequestTransportResultSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n },\n {\n title: \"OpensteerRequestTransportResult\",\n required: [\"method\", \"url\", \"headers\"],\n },\n);\n\nexport const opensteerRequestResponseResultSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 100, maximum: 599 }),\n statusText: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n redirected: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRequestResponseResult\",\n required: [\"url\", \"status\", \"statusText\", \"headers\", \"redirected\"],\n },\n);\n\nexport const opensteerRequestExecuteOutputSchema: JsonSchema = objectSchema(\n {\n plan: objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRequestPlanRef\",\n required: [\"id\", \"key\", \"version\"],\n },\n ),\n request: opensteerRequestTransportResultSchema,\n response: opensteerRequestResponseResultSchema,\n recovery: objectSchema(\n {\n attempted: { type: \"boolean\" },\n succeeded: { type: \"boolean\" },\n matchedFailurePolicy: { type: \"boolean\" },\n recipe: objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRecoveryRecipeRef\",\n required: [\"key\", \"version\"],\n },\n ),\n },\n {\n title: \"OpensteerRequestRecoveryMetadata\",\n required: [\"attempted\", \"succeeded\"],\n },\n ),\n data: jsonValueSchema,\n },\n {\n title: \"OpensteerRequestExecuteOutput\",\n required: [\"plan\", \"request\", \"response\"],\n },\n);\n\nexport const opensteerRawRequestOutputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n request: opensteerRequestTransportResultSchema,\n response: opensteerRequestResponseResultSchema,\n data: jsonValueSchema,\n },\n {\n title: \"OpensteerRawRequestOutput\",\n required: [\"recordId\", \"request\", \"response\"],\n },\n);\n\nexport const opensteerInferRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n },\n {\n title: \"OpensteerInferRequestPlanInput\",\n required: [\"recordId\", \"key\", \"version\"],\n },\n);\n","export type {\n CookieSameSite,\n CookiePriority,\n CookieRecord,\n StorageEntry,\n IndexedDbRecord,\n IndexedDbIndexSnapshot,\n IndexedDbObjectStoreSnapshot,\n IndexedDbDatabaseSnapshot,\n StorageOriginSnapshot,\n SessionStorageSnapshot,\n StorageSnapshot,\n} from \"@opensteer/browser-core\";\n\nimport { frameRefSchema, pageRefSchema, sessionRefSchema } from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nconst jsonUnknownSchema: JsonSchema = {};\n\nexport const cookieSameSiteSchema: JsonSchema = enumSchema([\"strict\", \"lax\", \"none\"] as const, {\n title: \"CookieSameSite\",\n});\n\nexport const cookiePrioritySchema: JsonSchema = enumSchema([\"low\", \"medium\", \"high\"] as const, {\n title: \"CookiePriority\",\n});\n\nexport const cookieRecordSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n name: stringSchema(),\n value: stringSchema(),\n domain: stringSchema(),\n path: stringSchema(),\n secure: {\n type: \"boolean\",\n },\n httpOnly: {\n type: \"boolean\",\n },\n sameSite: cookieSameSiteSchema,\n priority: cookiePrioritySchema,\n partitionKey: stringSchema(),\n session: {\n type: \"boolean\",\n },\n expiresAt: {\n type: [\"number\", \"null\"],\n },\n },\n {\n title: \"CookieRecord\",\n required: [\"sessionRef\", \"name\", \"value\", \"domain\", \"path\", \"secure\", \"httpOnly\", \"session\"],\n },\n);\n\nexport const storageEntrySchema: JsonSchema = objectSchema(\n {\n key: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"StorageEntry\",\n required: [\"key\", \"value\"],\n },\n);\n\nexport const indexedDbRecordSchema: JsonSchema = objectSchema(\n {\n key: jsonUnknownSchema,\n primaryKey: jsonUnknownSchema,\n value: jsonUnknownSchema,\n },\n {\n title: \"IndexedDbRecord\",\n required: [\"key\", \"value\"],\n },\n);\n\nexport const indexedDbIndexSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n keyPath: {\n oneOf: [stringSchema(), arraySchema(stringSchema())],\n },\n multiEntry: {\n type: \"boolean\",\n },\n unique: {\n type: \"boolean\",\n },\n },\n {\n title: \"IndexedDbIndexSnapshot\",\n required: [\"name\", \"multiEntry\", \"unique\"],\n },\n);\n\nexport const indexedDbObjectStoreSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n keyPath: {\n oneOf: [stringSchema(), arraySchema(stringSchema())],\n },\n autoIncrement: {\n type: \"boolean\",\n },\n indexes: arraySchema(indexedDbIndexSnapshotSchema),\n records: arraySchema(indexedDbRecordSchema),\n },\n {\n title: \"IndexedDbObjectStoreSnapshot\",\n required: [\"name\", \"autoIncrement\", \"indexes\", \"records\"],\n },\n);\n\nexport const indexedDbDatabaseSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n version: numberSchema(),\n objectStores: arraySchema(indexedDbObjectStoreSnapshotSchema),\n },\n {\n title: \"IndexedDbDatabaseSnapshot\",\n required: [\"name\", \"version\", \"objectStores\"],\n },\n);\n\nexport const storageOriginSnapshotSchema: JsonSchema = objectSchema(\n {\n origin: stringSchema(),\n localStorage: arraySchema(storageEntrySchema),\n indexedDb: arraySchema(indexedDbDatabaseSnapshotSchema),\n },\n {\n title: \"StorageOriginSnapshot\",\n required: [\"origin\", \"localStorage\"],\n },\n);\n\nexport const sessionStorageSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n origin: stringSchema(),\n entries: arraySchema(storageEntrySchema),\n },\n {\n title: \"SessionStorageSnapshot\",\n required: [\"pageRef\", \"frameRef\", \"origin\", \"entries\"],\n },\n);\n\nexport const storageSnapshotSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n capturedAt: integerSchema({ minimum: 0 }),\n origins: arraySchema(storageOriginSnapshotSchema),\n sessionStorage: arraySchema(sessionStorageSnapshotSchema),\n },\n {\n title: \"StorageSnapshot\",\n required: [\"sessionRef\", \"capturedAt\", \"origins\"],\n },\n);\n","export type {\n ScreenshotFormat,\n HtmlSnapshot,\n DomSnapshotNode,\n ShadowDomSnapshotMode,\n DomSnapshot,\n HitTestResult,\n} from \"@opensteer/browser-core\";\n\nexport { findDomSnapshotNode, findDomSnapshotNodeByRef } from \"@opensteer/browser-core\";\n\nimport type { DocumentEpoch, DocumentRef, FrameRef, PageRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n nodeRefSchema,\n pageRefSchema,\n} from \"./identity.js\";\nimport type { ExternalBinaryLocation } from \"./binary-location.js\";\nimport { externalBinaryLocationSchema } from \"./binary-location.js\";\nimport type { CoordinateSpace, Rect, Size } from \"./geometry.js\";\nimport {\n coordinateSpaceSchema,\n pointSchema,\n quadSchema,\n rectSchema,\n sizeSchema,\n} from \"./geometry.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport interface ScreenshotArtifact {\n readonly pageRef: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n readonly payload: ExternalBinaryLocation;\n readonly format: \"png\" | \"jpeg\" | \"webp\";\n readonly size: Size;\n readonly coordinateSpace: CoordinateSpace;\n readonly clip?: Rect;\n}\n\nexport const screenshotFormatSchema: JsonSchema = enumSchema([\"png\", \"jpeg\", \"webp\"] as const, {\n title: \"ScreenshotFormat\",\n});\n\nexport const screenshotArtifactSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n payload: externalBinaryLocationSchema,\n format: screenshotFormatSchema,\n size: sizeSchema,\n coordinateSpace: coordinateSpaceSchema,\n clip: rectSchema,\n },\n {\n title: \"ScreenshotArtifact\",\n required: [\"pageRef\", \"payload\", \"format\", \"size\", \"coordinateSpace\"],\n },\n);\n\nexport const htmlSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n capturedAt: integerSchema({ minimum: 0 }),\n html: stringSchema(),\n },\n {\n title: \"HtmlSnapshot\",\n required: [\"pageRef\", \"frameRef\", \"documentRef\", \"documentEpoch\", \"url\", \"capturedAt\", \"html\"],\n },\n);\n\nexport const domSnapshotNodeSchema: JsonSchema = objectSchema(\n {\n snapshotNodeId: integerSchema({ minimum: 0 }),\n nodeRef: nodeRefSchema,\n parentSnapshotNodeId: integerSchema({ minimum: 0 }),\n childSnapshotNodeIds: arraySchema(integerSchema({ minimum: 0 })),\n shadowRootType: enumSchema([\"open\", \"closed\", \"user-agent\"] as const),\n shadowHostNodeRef: nodeRefSchema,\n contentDocumentRef: documentRefSchema,\n nodeType: integerSchema({ minimum: 0 }),\n nodeName: stringSchema(),\n nodeValue: stringSchema(),\n textContent: stringSchema(),\n computedStyle: objectSchema(\n {\n display: stringSchema(),\n visibility: stringSchema(),\n opacity: stringSchema(),\n position: stringSchema(),\n cursor: stringSchema(),\n overflowX: stringSchema(),\n overflowY: stringSchema(),\n },\n {\n required: [],\n },\n ),\n attributes: arraySchema(\n objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n required: [\"name\", \"value\"],\n },\n ),\n ),\n layout: objectSchema(\n {\n rect: rectSchema,\n quad: quadSchema,\n paintOrder: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n },\n {\n title: \"DomSnapshotNode\",\n required: [\n \"snapshotNodeId\",\n \"childSnapshotNodeIds\",\n \"nodeType\",\n \"nodeName\",\n \"nodeValue\",\n \"attributes\",\n ],\n },\n);\n\nexport const shadowDomSnapshotModeSchema: JsonSchema = enumSchema(\n [\"flattened\", \"preserved\", \"unsupported\"] as const,\n {\n title: \"ShadowDomSnapshotMode\",\n },\n);\n\nexport const domSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n parentDocumentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n capturedAt: integerSchema({ minimum: 0 }),\n rootSnapshotNodeId: integerSchema({ minimum: 0 }),\n shadowDomMode: shadowDomSnapshotModeSchema,\n geometryCoordinateSpace: coordinateSpaceSchema,\n nodes: arraySchema(domSnapshotNodeSchema),\n },\n {\n title: \"DomSnapshot\",\n required: [\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"url\",\n \"capturedAt\",\n \"rootSnapshotNodeId\",\n \"shadowDomMode\",\n \"nodes\",\n ],\n },\n);\n\nexport const hitTestResultSchema: JsonSchema = objectSchema(\n {\n inputPoint: pointSchema,\n inputCoordinateSpace: coordinateSpaceSchema,\n resolvedPoint: pointSchema,\n resolvedCoordinateSpace: coordinateSpaceSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n targetQuad: quadSchema,\n obscured: {\n type: \"boolean\",\n },\n pointerEventsSkipped: {\n type: \"boolean\",\n },\n },\n {\n title: \"HitTestResult\",\n required: [\n \"inputPoint\",\n \"inputCoordinateSpace\",\n \"resolvedPoint\",\n \"resolvedCoordinateSpace\",\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"obscured\",\n \"pointerEventsSkipped\",\n ],\n },\n);\n","import { arraySchema, enumSchema, objectSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const opensteerCapabilities = [\n \"sessions.manage\",\n \"pages.manage\",\n \"pages.navigate\",\n \"input.pointer\",\n \"input.keyboard\",\n \"input.touch\",\n \"artifacts.screenshot\",\n \"execution.pause\",\n \"execution.resume\",\n \"execution.freeze\",\n \"inspect.pages\",\n \"inspect.frames\",\n \"inspect.html\",\n \"inspect.domSnapshot\",\n \"inspect.text\",\n \"inspect.attributes\",\n \"inspect.hitTest\",\n \"inspect.viewportMetrics\",\n \"inspect.network\",\n \"inspect.networkBodies\",\n \"inspect.cookies\",\n \"inspect.localStorage\",\n \"inspect.sessionStorage\",\n \"inspect.indexedDb\",\n \"transport.sessionHttp\",\n \"instrumentation.initScripts\",\n \"instrumentation.routing\",\n \"events.pageLifecycle\",\n \"events.dialog\",\n \"events.download\",\n \"events.chooser\",\n \"events.worker\",\n \"events.console\",\n \"events.pageError\",\n \"events.websocket\",\n \"events.eventStream\",\n \"events.executionState\",\n \"surface.rest\",\n \"surface.mcp\",\n] as const;\n\nexport type OpensteerCapability = (typeof opensteerCapabilities)[number];\n\nexport interface OpensteerCapabilityDescriptor {\n readonly key: OpensteerCapability;\n readonly description: string;\n readonly stability: \"stable\" | \"experimental\";\n}\n\nexport const opensteerCapabilityDescriptors: readonly OpensteerCapabilityDescriptor[] = [\n {\n key: \"sessions.manage\",\n description: \"Create and close isolated browser sessions.\",\n stability: \"stable\",\n },\n {\n key: \"pages.manage\",\n description: \"Create, close, and activate top-level browsing contexts.\",\n stability: \"stable\",\n },\n {\n key: \"pages.navigate\",\n description: \"Navigate, reload, and traverse session history.\",\n stability: \"stable\",\n },\n {\n key: \"input.pointer\",\n description: \"Inject pointer movement, click, and wheel input.\",\n stability: \"stable\",\n },\n {\n key: \"input.keyboard\",\n description: \"Inject key presses and raw text input.\",\n stability: \"stable\",\n },\n { key: \"input.touch\", description: \"Inject touch or gesture input.\", stability: \"experimental\" },\n {\n key: \"artifacts.screenshot\",\n description: \"Capture browser-rendered screenshots as evidence artifacts.\",\n stability: \"stable\",\n },\n {\n key: \"execution.pause\",\n description: \"Pause active page execution between protocol steps.\",\n stability: \"stable\",\n },\n {\n key: \"execution.resume\",\n description: \"Resume previously paused page execution.\",\n stability: \"stable\",\n },\n {\n key: \"execution.freeze\",\n description: \"Freeze timers or script execution at the engine boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.pages\",\n description: \"Enumerate pages and read page metadata.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.frames\",\n description: \"Enumerate frames and read frame metadata.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.html\",\n description: \"Read raw HTML snapshots without selector semantics.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.domSnapshot\",\n description: \"Read structured DOM snapshots with node bindings.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.text\",\n description: \"Read raw text from a specific node binding.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.attributes\",\n description: \"Read ordered attributes from a specific node binding.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.hitTest\",\n description: \"Resolve a point into the browser's current DOM target.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.viewportMetrics\",\n description: \"Read viewport and scroll geometry.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.network\",\n description: \"Read normalized network records without mutating traffic.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.networkBodies\",\n description: \"Expose captured request and response bodies in network records.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.cookies\",\n description: \"Read browser cookie state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.localStorage\",\n description: \"Read localStorage state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.sessionStorage\",\n description: \"Read sessionStorage state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.indexedDb\",\n description: \"Read IndexedDB state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"transport.sessionHttp\",\n description: \"Execute HTTP requests inside the live browser session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"instrumentation.initScripts\",\n description: \"Inject scripts before page scripts execute inside a browser session.\",\n stability: \"stable\",\n },\n {\n key: \"instrumentation.routing\",\n description: \"Intercept, continue, replace, or abort browser network requests.\",\n stability: \"stable\",\n },\n {\n key: \"events.pageLifecycle\",\n description: \"Emit normalized page and popup lifecycle events.\",\n stability: \"stable\",\n },\n { key: \"events.dialog\", description: \"Emit dialog lifecycle events.\", stability: \"stable\" },\n { key: \"events.download\", description: \"Emit download lifecycle events.\", stability: \"stable\" },\n {\n key: \"events.chooser\",\n description: \"Emit file chooser and select picker events.\",\n stability: \"stable\",\n },\n { key: \"events.worker\", description: \"Emit worker lifecycle events.\", stability: \"experimental\" },\n {\n key: \"events.console\",\n description: \"Emit normalized console log events.\",\n stability: \"stable\",\n },\n {\n key: \"events.pageError\",\n description: \"Emit page-level uncaught error events.\",\n stability: \"stable\",\n },\n {\n key: \"events.websocket\",\n description: \"Emit websocket open, frame, and close events.\",\n stability: \"experimental\",\n },\n {\n key: \"events.eventStream\",\n description: \"Emit server-sent event stream messages.\",\n stability: \"experimental\",\n },\n {\n key: \"events.executionState\",\n description: \"Emit pause, resume, and frozen execution events.\",\n stability: \"stable\",\n },\n {\n key: \"surface.rest\",\n description: \"Expose the protocol over the canonical REST transport.\",\n stability: \"stable\",\n },\n {\n key: \"surface.mcp\",\n description: \"Expose the protocol over Model Context Protocol tools.\",\n stability: \"stable\",\n },\n] as const;\n\nexport const opensteerCapabilitySchema: JsonSchema = enumSchema(opensteerCapabilities, {\n title: \"OpensteerCapability\",\n});\n\nexport const opensteerCapabilitySetSchema: JsonSchema = arraySchema(opensteerCapabilitySchema, {\n title: \"OpensteerCapabilitySet\",\n uniqueItems: true,\n});\n\nexport const opensteerCapabilityDescriptorSchema: JsonSchema = objectSchema(\n {\n key: opensteerCapabilitySchema,\n description: stringSchema(),\n stability: enumSchema([\"stable\", \"experimental\"] as const),\n },\n {\n title: \"OpensteerCapabilityDescriptor\",\n required: [\"key\", \"description\", \"stability\"],\n },\n);\n\nexport const opensteerCapabilityDescriptorListSchema: JsonSchema = arraySchema(\n opensteerCapabilityDescriptorSchema,\n {\n title: \"OpensteerCapabilityDescriptorList\",\n uniqueItems: true,\n },\n);\n\nexport function hasCapability(\n capabilities: readonly OpensteerCapability[],\n capability: OpensteerCapability,\n): boolean {\n return capabilities.includes(capability);\n}\n","import type { CookieRecord } from \"@opensteer/browser-core\";\n\nexport const cloudActionMethods = [\n \"goto\",\n \"snapshot\",\n \"screenshot\",\n \"state\",\n \"click\",\n \"dblclick\",\n \"rightclick\",\n \"hover\",\n \"input\",\n \"select\",\n \"scroll\",\n \"tabs\",\n \"newTab\",\n \"switchTab\",\n \"closeTab\",\n \"getCookies\",\n \"setCookie\",\n \"clearCookies\",\n \"pressKey\",\n \"type\",\n \"getElementText\",\n \"getElementValue\",\n \"getElementAttributes\",\n \"getElementBoundingBox\",\n \"getHtml\",\n \"getTitle\",\n \"uploadFile\",\n \"exportCookies\",\n \"importCookies\",\n \"waitForText\",\n \"extract\",\n \"extractFromPlan\",\n \"clearCache\",\n] as const;\n\nexport type CloudActionMethod = (typeof cloudActionMethods)[number];\n\nexport const cloudErrorCodes = [\n \"CLOUD_AUTH_FAILED\",\n \"CLOUD_SESSION_NOT_FOUND\",\n \"CLOUD_SESSION_CLOSED\",\n \"CLOUD_UNSUPPORTED_METHOD\",\n \"CLOUD_INVALID_REQUEST\",\n \"CLOUD_MODEL_NOT_ALLOWED\",\n \"CLOUD_ACTION_FAILED\",\n \"CLOUD_CAPACITY_EXHAUSTED\",\n \"CLOUD_RUNTIME_UNAVAILABLE\",\n \"CLOUD_RUNTIME_MISMATCH\",\n \"CLOUD_SESSION_STALE\",\n \"CLOUD_CONTROL_PLANE_ERROR\",\n \"CLOUD_CONTRACT_MISMATCH\",\n \"CLOUD_PROXY_UNAVAILABLE\",\n \"CLOUD_PROXY_REQUIRED\",\n \"CLOUD_BILLING_LIMIT_REACHED\",\n \"CLOUD_PLAN_RESTRICTED\",\n \"CLOUD_RATE_LIMITED\",\n \"CLOUD_BROWSER_PROFILE_NOT_FOUND\",\n \"CLOUD_BROWSER_PROFILE_BUSY\",\n \"CLOUD_BROWSER_PROFILE_DISABLED\",\n \"CLOUD_BROWSER_PROFILE_NOT_READY\",\n \"CLOUD_BROWSER_PROFILE_PROXY_UNAVAILABLE\",\n \"CLOUD_BROWSER_PROFILE_SYNC_FAILED\",\n \"CLOUD_INTERNAL\",\n] as const;\n\nexport type CloudErrorCode = (typeof cloudErrorCodes)[number];\n\nexport const cloudSessionStatuses = [\n \"provisioning\",\n \"active\",\n \"closing\",\n \"closed\",\n \"failed\",\n] as const;\n\nexport type CloudSessionStatus = (typeof cloudSessionStatuses)[number];\n\nexport const cloudSessionSourceTypes = [\n \"agent-thread\",\n \"agent-run\",\n \"project-agent-run\",\n \"local-cloud\",\n \"manual\",\n] as const;\n\nexport type CloudSessionSourceType = (typeof cloudSessionSourceTypes)[number];\nexport type CloudSessionVisibilityScope = \"team\" | \"owner\";\nexport type CloudProxyMode = \"disabled\" | \"optional\" | \"required\";\nexport type CloudProxyProtocol = \"http\" | \"https\" | \"socks5\";\nexport type CloudFingerprintMode = \"off\" | \"auto\";\nexport type BrowserProfileStatus = \"active\" | \"archived\" | \"error\";\nexport type BrowserProfileProxyPolicy = \"strict_sticky\";\nexport type BrowserProfileArchiveFormat = \"tar.gz\";\nexport type PortableBrowserProfileSnapshotFormat = \"portable-cookies-v1+json.gz\";\nexport type PortableBrowserFamily = \"chromium\";\nexport type BrowserProfileImportStatus =\n | \"awaiting_upload\"\n | \"queued\"\n | \"processing\"\n | \"ready\"\n | \"failed\";\n\nexport interface PortableBrowserProfileSnapshotSource {\n readonly browserFamily: PortableBrowserFamily;\n readonly browserName?: string;\n readonly browserMajor?: string;\n readonly browserBrand?: string;\n readonly captureMethod?: string;\n readonly platform?: string;\n readonly capturedAt: number;\n}\n\nexport type PortableBrowserProfileCookieRecord = Omit<CookieRecord, \"sessionRef\">;\n\nexport interface PortableBrowserProfileSnapshot {\n readonly version: \"portable-cookies-v1\";\n readonly source: PortableBrowserProfileSnapshotSource;\n readonly cookies: readonly PortableBrowserProfileCookieRecord[];\n}\n\nexport interface BrowserProfileImportSnapshotSummary {\n readonly source: PortableBrowserProfileSnapshotSource;\n readonly cookieCount: number;\n readonly domainCount: number;\n}\n\nexport interface CloudViewport {\n readonly width: number;\n readonly height: number;\n}\n\nexport interface CloudGeolocation {\n readonly latitude: number;\n readonly longitude: number;\n readonly accuracy?: number;\n}\n\nexport interface CloudBrowserContextConfig {\n readonly viewport?: CloudViewport;\n readonly locale?: string;\n readonly timezoneId?: string;\n readonly geolocation?: CloudGeolocation;\n readonly colorScheme?: \"light\" | \"dark\" | \"no-preference\";\n readonly userAgent?: string;\n readonly javaScriptEnabled?: boolean;\n readonly ignoreHTTPSErrors?: boolean;\n}\n\nexport interface CloudBrowserExtensionConfig {\n readonly includeDefaults?: boolean;\n readonly extensionKeys?: readonly string[];\n}\n\nexport interface CloudBrowserLaunchConfig {\n readonly headless?: boolean;\n readonly context?: CloudBrowserContextConfig;\n readonly chromeArgs?: readonly string[];\n readonly extensions?: CloudBrowserExtensionConfig;\n}\n\nexport interface CloudProxyPreference {\n readonly mode?: CloudProxyMode;\n readonly countryCode?: string;\n readonly region?: string;\n readonly city?: string;\n readonly proxyId?: string;\n}\n\nexport interface CloudFingerprintPreference {\n readonly mode?: CloudFingerprintMode;\n readonly locales?: readonly string[];\n readonly minWidth?: number;\n readonly maxWidth?: number;\n readonly minHeight?: number;\n readonly maxHeight?: number;\n readonly slim?: boolean;\n}\n\nexport interface CloudBrowserProfilePreference {\n readonly profileId: string;\n readonly reuseIfActive?: boolean;\n}\n\nexport type CloudBrowserProfileLaunchPreference = CloudBrowserProfilePreference;\n\nexport interface CloudSessionLaunchConfig {\n readonly browser?: CloudBrowserLaunchConfig;\n readonly proxy?: CloudProxyPreference;\n readonly fingerprint?: CloudFingerprintPreference;\n readonly browserProfile?: CloudBrowserProfilePreference;\n}\n\nexport interface CloudSessionSummary {\n readonly sessionId: string;\n readonly workspaceId: string;\n readonly state: CloudSessionStatus;\n readonly createdAt: number;\n readonly sourceType: CloudSessionSourceType;\n readonly sourceRef?: string;\n readonly label?: string;\n}\n\nexport interface CloudSelectorCacheImportEntry {\n readonly workspace: string;\n readonly method: string;\n readonly descriptionHash: string;\n readonly description?: string;\n readonly path: unknown;\n readonly schemaHash?: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nexport interface CloudSelectorCacheImportRequest {\n readonly entries: readonly CloudSelectorCacheImportEntry[];\n}\n\nexport interface CloudSelectorCacheImportResponse {\n readonly imported: number;\n readonly inserted: number;\n readonly updated: number;\n readonly skipped: number;\n}\n\nexport interface CloudRegistryImportEntry {\n readonly workspace: string;\n readonly recordId: string;\n readonly key: string;\n readonly version: string;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: unknown;\n readonly payload: unknown;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nexport interface CloudRequestPlanImportEntry extends CloudRegistryImportEntry {\n readonly freshness?: unknown;\n}\n\nexport interface CloudRegistryImportRequest {\n readonly entries: readonly CloudRegistryImportEntry[];\n}\n\nexport interface CloudRequestPlanImportRequest {\n readonly entries: readonly CloudRequestPlanImportEntry[];\n}\n\nexport interface CloudRegistryImportResponse {\n readonly imported: number;\n readonly inserted: number;\n readonly updated: number;\n readonly skipped: number;\n}\n\nexport type ActionFailureCode =\n | \"TARGET_NOT_FOUND\"\n | \"TARGET_UNAVAILABLE\"\n | \"TARGET_STALE\"\n | \"TARGET_AMBIGUOUS\"\n | \"BLOCKED_BY_INTERCEPTOR\"\n | \"NOT_VISIBLE\"\n | \"NOT_ENABLED\"\n | \"NOT_EDITABLE\"\n | \"INVALID_TARGET\"\n | \"INVALID_OPTIONS\"\n | \"ACTION_TIMEOUT\"\n | \"UNKNOWN\";\n\nexport type ActionFailureClassificationSource =\n | \"typed_error\"\n | \"playwright_call_log\"\n | \"dom_probe\"\n | \"message_heuristic\"\n | \"unknown\";\n\nexport interface ActionFailureBlocker {\n readonly tag: string;\n readonly id: string | null;\n readonly classes: readonly string[];\n readonly role: string | null;\n readonly text: string | null;\n}\n\nexport interface ActionFailureDetails {\n readonly blocker?: ActionFailureBlocker;\n readonly observation?: string;\n}\n\nexport interface ActionFailure {\n readonly code: ActionFailureCode;\n readonly message: string;\n readonly retryable: boolean;\n readonly classificationSource: ActionFailureClassificationSource;\n readonly details?: ActionFailureDetails;\n}\n\nexport interface CloudActionRequest {\n readonly id: number;\n readonly method: CloudActionMethod;\n readonly args: Readonly<Record<string, unknown>>;\n readonly sessionId: string;\n readonly token: string;\n}\n\nexport interface CloudActionSuccess {\n readonly id: number;\n readonly ok: true;\n readonly result: unknown;\n}\n\nexport interface CloudActionFailureDetails {\n readonly actionFailure?: ActionFailure;\n}\n\nexport interface CloudActionFailure {\n readonly id: number;\n readonly ok: false;\n readonly error: string;\n readonly code: CloudErrorCode;\n readonly details?: CloudActionFailureDetails;\n}\n\nexport type CloudActionResponse = CloudActionSuccess | CloudActionFailure;\n\nexport interface BrowserProfileDescriptor {\n readonly profileId: string;\n readonly teamId: string;\n readonly ownerUserId: string;\n readonly name: string;\n readonly status: BrowserProfileStatus;\n readonly proxyPolicy: BrowserProfileProxyPolicy;\n readonly stickyProxyId?: string;\n readonly proxyCountryCode?: string;\n readonly proxyRegion?: string;\n readonly proxyCity?: string;\n readonly fingerprintMode: CloudFingerprintMode;\n readonly fingerprintHash?: string;\n readonly activeSessionId?: string;\n readonly lastSessionId?: string;\n readonly lastLaunchedAt?: number;\n readonly latestRevision?: number;\n readonly latestStorageId?: string;\n readonly latestSizeBytes?: number;\n readonly latestArchiveSha256?: string;\n readonly latestArchiveFormat?: BrowserProfileArchiveFormat;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly lastError?: string;\n}\n\nexport interface BrowserProfileListResponse {\n readonly profiles: readonly BrowserProfileDescriptor[];\n readonly nextCursor?: string;\n}\n\nexport interface BrowserProfileCreateRequest {\n readonly name: string;\n readonly proxy?: {\n readonly proxyId?: string;\n readonly countryCode?: string;\n readonly region?: string;\n readonly city?: string;\n };\n readonly fingerprint?: {\n readonly mode?: CloudFingerprintMode;\n };\n}\n\nexport interface BrowserProfileImportCreateRequest {\n readonly profileId: string;\n}\n\nexport interface BrowserProfileImportCreateResponse {\n readonly importId: string;\n readonly profileId: string;\n readonly status: BrowserProfileImportStatus;\n readonly uploadUrl: string;\n readonly uploadMethod: \"PUT\";\n readonly uploadFormat: PortableBrowserProfileSnapshotFormat;\n readonly maxUploadBytes: number;\n}\n\nexport interface BrowserProfileImportDescriptor {\n readonly importId: string;\n readonly profileId: string;\n readonly status: BrowserProfileImportStatus;\n readonly uploadFormat: PortableBrowserProfileSnapshotFormat;\n readonly storageId?: string;\n readonly revision?: number;\n readonly error?: string;\n readonly snapshotSummary?: BrowserProfileImportSnapshotSummary;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nconst cloudActionMethodSet = new Set<CloudActionMethod>(cloudActionMethods);\nconst cloudErrorCodeSet = new Set<CloudErrorCode>(cloudErrorCodes);\nconst cloudSessionSourceTypeSet = new Set<CloudSessionSourceType>(cloudSessionSourceTypes);\nconst cloudSessionStatusSet = new Set<CloudSessionStatus>(cloudSessionStatuses);\n\nexport function isCloudActionMethod(value: unknown): value is CloudActionMethod {\n return typeof value === \"string\" && cloudActionMethodSet.has(value as CloudActionMethod);\n}\n\nexport function isCloudErrorCode(value: unknown): value is CloudErrorCode {\n return typeof value === \"string\" && cloudErrorCodeSet.has(value as CloudErrorCode);\n}\n\nexport function isCloudSessionSourceType(value: unknown): value is CloudSessionSourceType {\n return (\n typeof value === \"string\" && cloudSessionSourceTypeSet.has(value as CloudSessionSourceType)\n );\n}\n\nexport function isCloudSessionStatus(value: unknown): value is CloudSessionStatus {\n return typeof value === \"string\" && cloudSessionStatusSet.has(value as CloudSessionStatus);\n}\n","import type { OpensteerCapability } from \"./capabilities.js\";\nimport { opensteerCapabilitySchema } from \"./capabilities.js\";\nimport { objectSchema, recordSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const opensteerErrorCodes = [\n \"invalid-request\",\n \"invalid-argument\",\n \"invalid-ref\",\n \"unsupported-version\",\n \"unsupported-operation\",\n \"unsupported-capability\",\n \"not-found\",\n \"stale-node-ref\",\n \"session-closed\",\n \"page-closed\",\n \"frame-detached\",\n \"timeout\",\n \"navigation-failed\",\n \"permission-denied\",\n \"conflict\",\n \"profile-unavailable\",\n \"auth-failure\",\n \"auth-recovery-failed\",\n \"browser-required\",\n \"rate-limited\",\n \"operation-failed\",\n \"internal\",\n] as const;\n\nexport type OpensteerErrorCode = (typeof opensteerErrorCodes)[number];\n\nexport interface OpensteerError {\n readonly code: OpensteerErrorCode;\n readonly message: string;\n readonly retriable: boolean;\n readonly capability?: OpensteerCapability;\n readonly details?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerErrorOptions {\n readonly cause?: unknown;\n readonly retriable?: boolean;\n readonly capability?: OpensteerCapability;\n readonly details?: Readonly<Record<string, unknown>>;\n}\n\nexport class OpensteerProtocolError extends Error {\n readonly code: OpensteerErrorCode;\n readonly retriable: boolean;\n readonly capability: OpensteerCapability | undefined;\n readonly details: Readonly<Record<string, unknown>> | undefined;\n\n constructor(code: OpensteerErrorCode, message: string, options: OpensteerErrorOptions = {}) {\n super(message, { cause: options.cause });\n this.name = \"OpensteerProtocolError\";\n this.code = code;\n this.retriable = options.retriable ?? false;\n this.capability = options.capability;\n this.details = options.details;\n }\n}\n\nexport function createOpensteerError(\n code: OpensteerErrorCode,\n message: string,\n options: Omit<OpensteerErrorOptions, \"cause\"> = {},\n): OpensteerError {\n return {\n code,\n message,\n retriable: options.retriable ?? false,\n ...(options.capability === undefined ? {} : { capability: options.capability }),\n ...(options.details === undefined ? {} : { details: options.details }),\n };\n}\n\nexport function unsupportedCapabilityError(capability: OpensteerCapability): OpensteerError {\n return createOpensteerError(\n \"unsupported-capability\",\n `capability ${capability} is not supported by this surface`,\n {\n capability,\n details: { capability },\n },\n );\n}\n\nexport function isOpensteerProtocolError(value: unknown): value is OpensteerProtocolError {\n return value instanceof OpensteerProtocolError;\n}\n\nexport function toOpensteerError(\n error: Pick<\n OpensteerProtocolError | OpensteerError,\n \"code\" | \"message\" | \"retriable\" | \"capability\" | \"details\"\n >,\n): OpensteerError {\n return createOpensteerError(error.code, error.message, {\n retriable: error.retriable,\n ...(error.capability === undefined ? {} : { capability: error.capability }),\n ...(error.details === undefined ? {} : { details: error.details }),\n });\n}\n\nexport function unsupportedVersionError(version: string): OpensteerError {\n return createOpensteerError(\n \"unsupported-version\",\n `protocol version ${version} is not supported`,\n {\n details: { version },\n },\n );\n}\n\nexport const opensteerErrorCodeSchema: JsonSchema = {\n title: \"OpensteerErrorCode\",\n enum: opensteerErrorCodes,\n};\n\nexport const opensteerErrorSchema: JsonSchema = objectSchema(\n {\n code: opensteerErrorCodeSchema,\n message: stringSchema(),\n retriable: {\n type: \"boolean\",\n },\n capability: opensteerCapabilitySchema,\n details: recordSchema({}),\n },\n {\n title: \"OpensteerError\",\n required: [\"code\", \"message\", \"retriable\"],\n },\n);\n\nexport function httpStatusForOpensteerError(error: OpensteerError): number {\n switch (error.code) {\n case \"invalid-request\":\n case \"invalid-argument\":\n case \"invalid-ref\":\n case \"unsupported-version\":\n return 400;\n case \"permission-denied\":\n return 403;\n case \"not-found\":\n case \"stale-node-ref\":\n case \"session-closed\":\n case \"page-closed\":\n case \"frame-detached\":\n return 404;\n case \"conflict\":\n case \"profile-unavailable\":\n case \"auth-failure\":\n case \"auth-recovery-failed\":\n return 409;\n case \"browser-required\":\n return 412;\n case \"rate-limited\":\n return 429;\n case \"unsupported-operation\":\n case \"unsupported-capability\":\n return 501;\n case \"timeout\":\n return 504;\n case \"navigation-failed\":\n case \"operation-failed\":\n return 502;\n case \"internal\":\n return 500;\n }\n\n return 500;\n}\n","export type { ConsoleLevel } from \"@opensteer/browser-core\";\n\nexport type { PageCreatedStepEvent as PageCreatedEvent } from \"@opensteer/browser-core\";\nexport type { PopupOpenedStepEvent as PopupOpenedEvent } from \"@opensteer/browser-core\";\nexport type { PageClosedStepEvent as PageClosedEvent } from \"@opensteer/browser-core\";\nexport type { DialogOpenedStepEvent as DialogOpenedEvent } from \"@opensteer/browser-core\";\nexport type { DownloadStartedStepEvent as DownloadStartedEvent } from \"@opensteer/browser-core\";\nexport type { DownloadFinishedStepEvent as DownloadFinishedEvent } from \"@opensteer/browser-core\";\nexport type { ChooserOpenedStepEvent as ChooserOpenedEvent } from \"@opensteer/browser-core\";\nexport type { WorkerCreatedStepEvent as WorkerCreatedEvent } from \"@opensteer/browser-core\";\nexport type { WorkerDestroyedStepEvent as WorkerDestroyedEvent } from \"@opensteer/browser-core\";\nexport type { ConsoleStepEvent as ConsoleEvent } from \"@opensteer/browser-core\";\nexport type { PageErrorStepEvent as PageErrorEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketOpenedStepEvent as WebSocketOpenedEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketFrameStepEvent as WebSocketFrameEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketClosedStepEvent as WebSocketClosedEvent } from \"@opensteer/browser-core\";\nexport type { EventStreamMessageStepEvent as EventStreamMessageEvent } from \"@opensteer/browser-core\";\nexport type { PausedStepEvent as PausedEvent } from \"@opensteer/browser-core\";\nexport type { ResumedStepEvent as ResumedEvent } from \"@opensteer/browser-core\";\nexport type { FrozenStepEvent as FrozenEvent } from \"@opensteer/browser-core\";\nexport type { StepEvent as OpensteerEvent } from \"@opensteer/browser-core\";\n\nimport {\n chooserRefSchema,\n dialogRefSchema,\n documentEpochSchema,\n documentRefSchema,\n downloadRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n workerRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nfunction eventBaseSchema(kind: string): Record<string, JsonSchema> {\n return {\n eventId: stringSchema(),\n kind: enumSchema([kind] as const),\n timestamp: integerSchema({ minimum: 0 }),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n };\n}\n\nconst dialogTypeSchema = enumSchema([\"alert\", \"beforeunload\", \"confirm\", \"prompt\"] as const);\nconst downloadStateSchema = enumSchema([\"completed\", \"canceled\", \"failed\"] as const);\nconst chooserTypeSchema = enumSchema([\"file\", \"select\"] as const);\nconst workerTypeSchema = enumSchema([\"dedicated\", \"shared\", \"service\"] as const);\nconst consoleLevelSchema = enumSchema([\"debug\", \"log\", \"info\", \"warn\", \"error\", \"trace\"] as const);\nconst websocketDirectionSchema = enumSchema([\"sent\", \"received\"] as const);\n\nconst pageCreatedEventSchema = objectSchema(eventBaseSchema(\"page-created\"), {\n title: \"PageCreatedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\"],\n});\n\nconst popupOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"popup-opened\"),\n openerPageRef: pageRefSchema,\n },\n {\n title: \"PopupOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\", \"openerPageRef\"],\n },\n);\n\nconst pageClosedEventSchema = objectSchema(eventBaseSchema(\"page-closed\"), {\n title: \"PageClosedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\"],\n});\n\nconst dialogOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"dialog-opened\"),\n dialogRef: dialogRefSchema,\n dialogType: dialogTypeSchema,\n message: stringSchema(),\n defaultValue: stringSchema(),\n },\n {\n title: \"DialogOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"dialogRef\", \"dialogType\", \"message\"],\n },\n);\n\nconst downloadStartedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"download-started\"),\n downloadRef: downloadRefSchema,\n url: stringSchema(),\n suggestedFilename: stringSchema(),\n },\n {\n title: \"DownloadStartedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"downloadRef\", \"url\"],\n },\n);\n\nconst downloadFinishedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"download-finished\"),\n downloadRef: downloadRefSchema,\n state: downloadStateSchema,\n filePath: stringSchema(),\n },\n {\n title: \"DownloadFinishedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"downloadRef\", \"state\"],\n },\n);\n\nconst chooserOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"chooser-opened\"),\n chooserRef: chooserRefSchema,\n chooserType: chooserTypeSchema,\n multiple: {\n type: \"boolean\",\n },\n options: arraySchema(\n objectSchema(\n {\n index: integerSchema({ minimum: 0 }),\n label: stringSchema(),\n value: stringSchema(),\n selected: {\n type: \"boolean\",\n },\n },\n {\n required: [\"index\", \"label\", \"value\", \"selected\"],\n },\n ),\n ),\n },\n {\n title: \"ChooserOpenedEvent\",\n required: [\n \"eventId\",\n \"kind\",\n \"timestamp\",\n \"sessionRef\",\n \"chooserRef\",\n \"chooserType\",\n \"multiple\",\n ],\n },\n);\n\nconst workerCreatedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"worker-created\"),\n workerRef: workerRefSchema,\n workerType: workerTypeSchema,\n url: stringSchema(),\n },\n {\n title: \"WorkerCreatedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"workerRef\", \"workerType\", \"url\"],\n },\n);\n\nconst workerDestroyedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"worker-destroyed\"),\n workerRef: workerRefSchema,\n workerType: workerTypeSchema,\n url: stringSchema(),\n },\n {\n title: \"WorkerDestroyedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"workerRef\", \"workerType\", \"url\"],\n },\n);\n\nconst consoleEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"console\"),\n level: consoleLevelSchema,\n text: stringSchema(),\n location: objectSchema(\n {\n url: stringSchema(),\n lineNumber: integerSchema({ minimum: 0 }),\n columnNumber: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n },\n {\n title: \"ConsoleEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"level\", \"text\"],\n },\n);\n\nconst pageErrorEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"page-error\"),\n message: stringSchema(),\n stack: stringSchema(),\n },\n {\n title: \"PageErrorEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"message\"],\n },\n);\n\nconst websocketOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-opened\"),\n socketId: stringSchema(),\n url: stringSchema(),\n },\n {\n title: \"WebSocketOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\", \"url\"],\n },\n);\n\nconst websocketFrameEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-frame\"),\n socketId: stringSchema(),\n direction: websocketDirectionSchema,\n opcode: integerSchema({ minimum: 0 }),\n payloadPreview: stringSchema(),\n },\n {\n title: \"WebSocketFrameEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\", \"direction\"],\n },\n);\n\nconst websocketClosedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-closed\"),\n socketId: stringSchema(),\n code: integerSchema({ minimum: 0 }),\n reason: stringSchema(),\n },\n {\n title: \"WebSocketClosedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\"],\n },\n);\n\nconst eventStreamMessageEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"event-stream-message\"),\n streamId: stringSchema(),\n eventName: stringSchema(),\n dataPreview: stringSchema(),\n },\n {\n title: \"EventStreamMessageEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"streamId\"],\n },\n);\n\nconst pausedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"paused\"),\n reason: stringSchema(),\n },\n {\n title: \"PausedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nconst resumedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"resumed\"),\n reason: stringSchema(),\n },\n {\n title: \"ResumedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nconst frozenEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"frozen\"),\n reason: stringSchema(),\n },\n {\n title: \"FrozenEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nexport const opensteerEventSchema: JsonSchema = oneOfSchema(\n [\n pageCreatedEventSchema,\n popupOpenedEventSchema,\n pageClosedEventSchema,\n dialogOpenedEventSchema,\n downloadStartedEventSchema,\n downloadFinishedEventSchema,\n chooserOpenedEventSchema,\n workerCreatedEventSchema,\n workerDestroyedEventSchema,\n consoleEventSchema,\n pageErrorEventSchema,\n websocketOpenedEventSchema,\n websocketFrameEventSchema,\n websocketClosedEventSchema,\n eventStreamMessageEventSchema,\n pausedEventSchema,\n resumedEventSchema,\n frozenEventSchema,\n ],\n {\n title: \"OpensteerEvent\",\n },\n);\n","import type { DocumentEpoch, DocumentRef, FrameRef, PageRef, SessionRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type { ExternalBinaryLocation } from \"./binary-location.js\";\nimport { externalBinaryLocationSchema } from \"./binary-location.js\";\nimport type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n} from \"./json.js\";\nimport type { HtmlSnapshot, DomSnapshot, ScreenshotArtifact } from \"./snapshots.js\";\nimport { domSnapshotSchema, htmlSnapshotSchema, screenshotArtifactSchema } from \"./snapshots.js\";\nimport type { CookieRecord, StorageSnapshot } from \"./storage.js\";\nimport { cookieRecordSchema, storageSnapshotSchema } from \"./storage.js\";\n\nexport type OpensteerArtifactKind =\n | \"screenshot\"\n | \"html-snapshot\"\n | \"dom-snapshot\"\n | \"cookies\"\n | \"storage-snapshot\"\n | \"script-source\";\n\nexport type ArtifactRelation = \"result\" | \"before\" | \"after\" | \"capture\" | \"evidence\" | \"snapshot\";\n\nexport type ArtifactExternalLocation = ExternalBinaryLocation;\n\nexport interface ArtifactProvenance {\n readonly sourceArtifactId?: string;\n readonly transform?: string;\n}\n\nexport interface ScriptSourceArtifactData {\n readonly source: \"inline\" | \"external\" | \"dynamic\" | \"worker\";\n readonly url?: string;\n readonly type?: string;\n readonly hash: string;\n readonly loadOrder: number;\n readonly content: string;\n}\n\nexport interface ArtifactInline<TData> {\n readonly delivery: \"inline\";\n readonly data: TData;\n}\n\ninterface ArtifactContext {\n readonly sessionRef?: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n}\n\ninterface OpensteerArtifactBase extends ArtifactContext {\n readonly artifactId: string;\n readonly kind: OpensteerArtifactKind;\n readonly createdAt: number;\n readonly provenance?: ArtifactProvenance;\n}\n\nexport interface ScreenshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"screenshot\";\n readonly payload: ArtifactInline<ScreenshotArtifact> | ArtifactExternalLocation;\n}\n\nexport interface HtmlSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"html-snapshot\";\n readonly payload: ArtifactInline<HtmlSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface DomSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"dom-snapshot\";\n readonly payload: ArtifactInline<DomSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface CookiesArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"cookies\";\n readonly payload: ArtifactInline<readonly CookieRecord[]> | ArtifactExternalLocation;\n}\n\nexport interface StorageSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"storage-snapshot\";\n readonly payload: ArtifactInline<StorageSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface ScriptSourceArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"script-source\";\n readonly payload: ArtifactInline<ScriptSourceArtifactData> | ArtifactExternalLocation;\n}\n\nexport type OpensteerArtifact =\n | ScreenshotArtifactRecord\n | HtmlSnapshotArtifactRecord\n | DomSnapshotArtifactRecord\n | CookiesArtifactRecord\n | StorageSnapshotArtifactRecord\n | ScriptSourceArtifactRecord;\n\nexport interface ArtifactReference {\n readonly artifactId: string;\n readonly kind: OpensteerArtifactKind;\n readonly relation: ArtifactRelation;\n}\n\nexport interface OpensteerArtifactReadInput {\n readonly artifactId: string;\n}\n\nexport interface OpensteerArtifactReadOutput {\n readonly artifact: OpensteerArtifact;\n}\n\nconst artifactKindSchema: JsonSchema = enumSchema(\n [\n \"screenshot\",\n \"html-snapshot\",\n \"dom-snapshot\",\n \"cookies\",\n \"storage-snapshot\",\n \"script-source\",\n ] as const,\n {\n title: \"OpensteerArtifactKind\",\n },\n);\n\nconst artifactRelationSchema: JsonSchema = enumSchema(\n [\"result\", \"before\", \"after\", \"capture\", \"evidence\", \"snapshot\"] as const,\n {\n title: \"ArtifactRelation\",\n },\n);\n\nfunction inlineArtifactPayloadSchema(dataSchema: JsonSchema, title: string): JsonSchema {\n return objectSchema(\n {\n delivery: enumSchema([\"inline\"] as const),\n data: dataSchema,\n },\n {\n title,\n required: [\"delivery\", \"data\"],\n },\n );\n}\n\nfunction artifactBaseSchema(kind: OpensteerArtifactKind): Record<string, JsonSchema> {\n return {\n artifactId: stringSchema(),\n kind: enumSchema([kind] as const),\n createdAt: integerSchema({ minimum: 0 }),\n provenance: objectSchema(\n {\n sourceArtifactId: stringSchema({ minLength: 1 }),\n transform: stringSchema({ minLength: 1 }),\n },\n {\n title: \"ArtifactProvenance\",\n },\n ),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n };\n}\n\nconst screenshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"screenshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(screenshotArtifactSchema, \"InlineScreenshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"ScreenshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst htmlSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"html-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(htmlSnapshotSchema, \"InlineHtmlSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"HtmlSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst domSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"dom-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(domSnapshotSchema, \"InlineDomSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"DomSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst cookiesArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"cookies\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(arraySchema(cookieRecordSchema), \"InlineCookiesArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"CookiesArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst storageSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"storage-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(storageSnapshotSchema, \"InlineStorageSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"StorageSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nexport const scriptSourceArtifactDataSchema: JsonSchema = objectSchema(\n {\n source: enumSchema([\"inline\", \"external\", \"dynamic\", \"worker\"] as const),\n url: stringSchema({ minLength: 1 }),\n type: stringSchema({ minLength: 1 }),\n hash: stringSchema({ minLength: 1 }),\n loadOrder: integerSchema({ minimum: 0 }),\n content: stringSchema(),\n },\n {\n title: \"ScriptSourceArtifactData\",\n required: [\"source\", \"hash\", \"loadOrder\", \"content\"],\n },\n);\n\nconst scriptSourceArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"script-source\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(scriptSourceArtifactDataSchema, \"InlineScriptSourceArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"ScriptSourceArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nexport const opensteerArtifactSchema: JsonSchema = oneOfSchema(\n [\n screenshotArtifactRecordSchema,\n htmlSnapshotArtifactRecordSchema,\n domSnapshotArtifactRecordSchema,\n cookiesArtifactRecordSchema,\n storageSnapshotArtifactRecordSchema,\n scriptSourceArtifactRecordSchema,\n ],\n {\n title: \"OpensteerArtifact\",\n },\n);\n\nexport const artifactReferenceSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema(),\n kind: artifactKindSchema,\n relation: artifactRelationSchema,\n },\n {\n title: \"ArtifactReference\",\n required: [\"artifactId\", \"kind\", \"relation\"],\n },\n);\n\nexport const opensteerArtifactReadInputSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerArtifactReadInput\",\n required: [\"artifactId\"],\n },\n);\n\nexport const opensteerArtifactReadOutputSchema: JsonSchema = objectSchema(\n {\n artifact: opensteerArtifactSchema,\n },\n {\n title: \"OpensteerArtifactReadOutput\",\n required: [\"artifact\"],\n },\n);\n","import {\n artifactReferenceSchema,\n opensteerArtifactSchema,\n type ArtifactReference,\n type OpensteerArtifact,\n} from \"./artifacts.js\";\nimport { opensteerEventSchema, type OpensteerEvent } from \"./events.js\";\nimport type { DocumentEpoch, DocumentRef, FrameRef, PageRef, SessionRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport { opensteerErrorSchema, type OpensteerError } from \"./errors.js\";\n\nexport type TraceOutcome = \"ok\" | \"error\";\n\nexport interface TraceContext {\n readonly sessionRef?: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n}\n\nexport interface TraceRecord<TData = unknown> {\n readonly traceId: string;\n readonly stepId: string;\n readonly operation: string;\n readonly outcome: TraceOutcome;\n readonly startedAt: number;\n readonly completedAt: number;\n readonly durationMs: number;\n readonly context: TraceContext;\n readonly events: readonly OpensteerEvent[];\n readonly artifacts?: readonly ArtifactReference[];\n readonly data?: TData;\n readonly error?: OpensteerError;\n}\n\nexport interface TraceBundle<TData = unknown> {\n readonly trace: TraceRecord<TData>;\n readonly artifacts?: readonly OpensteerArtifact[];\n}\n\nexport const traceContextSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n },\n {\n title: \"TraceContext\",\n },\n);\n\nexport function traceRecordSchema(dataSchema: JsonSchema = {}): JsonSchema {\n return objectSchema(\n {\n traceId: stringSchema(),\n stepId: stringSchema(),\n operation: stringSchema(),\n outcome: enumSchema([\"ok\", \"error\"] as const),\n startedAt: integerSchema({ minimum: 0 }),\n completedAt: integerSchema({ minimum: 0 }),\n durationMs: integerSchema({ minimum: 0 }),\n context: traceContextSchema,\n events: arraySchema(opensteerEventSchema),\n artifacts: arraySchema(artifactReferenceSchema),\n data: dataSchema,\n error: opensteerErrorSchema,\n },\n {\n title: \"TraceRecord\",\n required: [\n \"traceId\",\n \"stepId\",\n \"operation\",\n \"outcome\",\n \"startedAt\",\n \"completedAt\",\n \"durationMs\",\n \"context\",\n \"events\",\n ],\n },\n );\n}\n\nexport function traceBundleSchema(dataSchema: JsonSchema = {}): JsonSchema {\n return objectSchema(\n {\n trace: traceRecordSchema(dataSchema),\n artifacts: arraySchema(opensteerArtifactSchema),\n },\n {\n title: \"TraceBundle\",\n required: [\"trace\"],\n },\n );\n}\n","import type { OpensteerArtifact } from \"./artifacts.js\";\nimport { opensteerArtifactSchema } from \"./artifacts.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport { opensteerCapabilitySetSchema } from \"./capabilities.js\";\nimport type { OpensteerError } from \"./errors.js\";\nimport { opensteerErrorSchema } from \"./errors.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport type { TraceRecord } from \"./traces.js\";\nimport { traceRecordSchema } from \"./traces.js\";\nimport {\n OPENSTEER_PROTOCOL_NAME,\n OPENSTEER_PROTOCOL_VERSION,\n type OpensteerProtocolVersion,\n} from \"./version.js\";\n\nexport interface OpensteerRequestEnvelope<TInput> {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly sentAt: number;\n readonly input: TInput;\n}\n\nexport interface OpensteerSuccessEnvelope<TOutput> {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly status: \"ok\";\n readonly receivedAt: number;\n readonly data: TOutput;\n readonly trace?: TraceRecord<TOutput>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n}\n\nexport interface OpensteerErrorEnvelope {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly status: \"error\";\n readonly receivedAt: number;\n readonly error: OpensteerError;\n readonly trace?: TraceRecord<unknown>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n}\n\nexport type OpensteerResponseEnvelope<TOutput> =\n | OpensteerSuccessEnvelope<TOutput>\n | OpensteerErrorEnvelope;\n\nexport function createRequestEnvelope<TInput>(\n operation: string,\n input: TInput,\n options: {\n readonly requestId: string;\n readonly sentAt?: number;\n readonly version?: OpensteerProtocolVersion;\n },\n): OpensteerRequestEnvelope<TInput> {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: options.version ?? OPENSTEER_PROTOCOL_VERSION,\n requestId: options.requestId,\n operation,\n sentAt: options.sentAt ?? Date.now(),\n input,\n };\n}\n\nexport function createSuccessEnvelope<TOutput>(\n request: Pick<OpensteerRequestEnvelope<unknown>, \"requestId\" | \"operation\" | \"version\">,\n data: TOutput,\n options: {\n readonly receivedAt?: number;\n readonly trace?: TraceRecord<TOutput>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n } = {},\n): OpensteerSuccessEnvelope<TOutput> {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: request.version,\n requestId: request.requestId,\n operation: request.operation,\n status: \"ok\",\n receivedAt: options.receivedAt ?? Date.now(),\n data,\n ...(options.trace === undefined ? {} : { trace: options.trace }),\n ...(options.artifacts === undefined ? {} : { artifacts: options.artifacts }),\n ...(options.capabilities === undefined ? {} : { capabilities: options.capabilities }),\n };\n}\n\nexport function createErrorEnvelope(\n request: Pick<OpensteerRequestEnvelope<unknown>, \"requestId\" | \"operation\" | \"version\">,\n error: OpensteerError,\n options: {\n readonly receivedAt?: number;\n readonly trace?: TraceRecord<unknown>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n } = {},\n): OpensteerErrorEnvelope {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: request.version,\n requestId: request.requestId,\n operation: request.operation,\n status: \"error\",\n receivedAt: options.receivedAt ?? Date.now(),\n error,\n ...(options.trace === undefined ? {} : { trace: options.trace }),\n ...(options.artifacts === undefined ? {} : { artifacts: options.artifacts }),\n ...(options.capabilities === undefined ? {} : { capabilities: options.capabilities }),\n };\n}\n\nexport function isErrorEnvelope<TOutput>(\n envelope: OpensteerResponseEnvelope<TOutput>,\n): envelope is OpensteerErrorEnvelope {\n return envelope.status === \"error\";\n}\n\nfunction operationFieldSchema(operation: string | undefined): JsonSchema {\n return operation === undefined ? stringSchema() : literalSchema(operation);\n}\n\nexport function requestEnvelopeSchema(inputSchema: JsonSchema, operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n sentAt: integerSchema({ minimum: 0 }),\n input: inputSchema,\n },\n {\n title: \"OpensteerRequestEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"sentAt\", \"input\"],\n },\n );\n}\n\nexport function successEnvelopeSchema(dataSchema: JsonSchema, operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n status: enumSchema([\"ok\"] as const),\n receivedAt: integerSchema({ minimum: 0 }),\n data: dataSchema,\n trace: traceRecordSchema(dataSchema),\n artifacts: arraySchema(opensteerArtifactSchema),\n capabilities: opensteerCapabilitySetSchema,\n },\n {\n title: \"OpensteerSuccessEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"status\", \"receivedAt\", \"data\"],\n },\n );\n}\n\nfunction errorEnvelopeSchema(operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n status: enumSchema([\"error\"] as const),\n receivedAt: integerSchema({ minimum: 0 }),\n error: opensteerErrorSchema,\n trace: traceRecordSchema(),\n artifacts: arraySchema(opensteerArtifactSchema),\n capabilities: opensteerCapabilitySetSchema,\n },\n {\n title: \"OpensteerErrorEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"status\", \"receivedAt\", \"error\"],\n },\n );\n}\n\nexport const opensteerErrorEnvelopeSchema: JsonSchema = errorEnvelopeSchema();\n\nexport function responseEnvelopeSchema(dataSchema: JsonSchema, operation?: string): JsonSchema {\n return oneOfSchema(\n [successEnvelopeSchema(dataSchema, operation), errorEnvelopeSchema(operation)],\n {\n title: \"OpensteerResponseEnvelope\",\n },\n );\n}\n","import type { PageRef } from \"./identity.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport type { OpensteerProtocolVersion } from \"./version.js\";\n\nexport const opensteerSessionGrantKinds = [\"automation\", \"view\", \"cdp\"] as const;\n\nexport type OpensteerSessionGrantKind = (typeof opensteerSessionGrantKinds)[number];\nexport type OpensteerProviderMode = \"local\" | \"cloud\";\nexport type OpensteerSessionOwnership = \"owned\" | \"attached\" | \"managed\";\n\nexport interface OpensteerProviderDescriptor {\n readonly mode: OpensteerProviderMode;\n readonly ownership: OpensteerSessionOwnership;\n readonly engine?: string;\n readonly baseUrl?: string;\n readonly region?: string;\n}\n\nexport interface OpensteerSessionCapabilities {\n readonly semanticOperations: readonly OpensteerSemanticOperationName[];\n readonly protocolCapabilities?: readonly OpensteerCapability[];\n readonly sessionGrants?: readonly OpensteerSessionGrantKind[];\n readonly instrumentation: {\n readonly route: boolean;\n readonly interceptScript: boolean;\n readonly networkStream: boolean;\n };\n}\n\nexport interface OpensteerSessionGrant {\n readonly kind: OpensteerSessionGrantKind;\n readonly wsUrl: string;\n readonly token: string;\n readonly expiresAt: number;\n}\n\nexport interface OpensteerSessionAccessGrantResponse {\n readonly sessionId: string;\n readonly expiresAt: number;\n readonly grants: Partial<Record<OpensteerSessionGrantKind, OpensteerSessionGrant>>;\n}\n\nexport interface OpensteerRuntimeVersionInfo {\n readonly protocolVersion: OpensteerProtocolVersion;\n readonly runtimeCoreVersion?: string;\n readonly packages?: Readonly<Record<string, string>>;\n}\n\nexport interface OpensteerSessionInfo {\n readonly provider: OpensteerProviderDescriptor;\n readonly workspace?: string;\n readonly sessionId?: string;\n readonly activePageRef?: PageRef;\n readonly reconnectable: boolean;\n readonly capabilities: OpensteerSessionCapabilities;\n readonly grants?: readonly OpensteerSessionGrant[];\n readonly runtime?: OpensteerRuntimeVersionInfo;\n}\n","import type { OpensteerError } from \"./errors.js\";\nimport type { OpensteerSessionGrantKind, OpensteerSessionInfo } from \"./session-info.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\nimport type { OpensteerProtocolVersion } from \"./version.js\";\nimport { OPENSTEER_PROTOCOL_NAME } from \"./version.js\";\n\nexport const opensteerAutomationOperationNames = [\n \"route.register\",\n \"route.unregister\",\n \"route.resolve\",\n \"session.info\",\n \"network.stream.subscribe\",\n \"network.stream.unsubscribe\",\n] as const;\n\nexport type OpensteerAutomationOperationName =\n | OpensteerSemanticOperationName\n | (typeof opensteerAutomationOperationNames)[number];\n\nexport interface OpensteerAutomationHelloMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"hello\";\n readonly sessionId: string;\n readonly grantKind: OpensteerSessionGrantKind;\n}\n\nexport interface OpensteerAutomationResumeMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"resume\";\n readonly sessionId: string;\n}\n\nexport interface OpensteerAutomationInvokeMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"invoke\";\n readonly requestId: string;\n readonly operation: OpensteerAutomationOperationName;\n readonly sentAt: number;\n readonly input?: unknown;\n}\n\nexport interface OpensteerAutomationCancelMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"cancel\";\n readonly requestId: string;\n readonly sentAt: number;\n}\n\nexport interface OpensteerAutomationResultMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"result\";\n readonly requestId: string;\n readonly operation: OpensteerAutomationOperationName;\n readonly receivedAt: number;\n readonly data: unknown;\n}\n\nexport interface OpensteerAutomationErrorMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"error\";\n readonly requestId?: string;\n readonly operation?: OpensteerAutomationOperationName;\n readonly receivedAt: number;\n readonly error: OpensteerError;\n}\n\nexport interface OpensteerAutomationEventMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"event\";\n readonly event: string;\n readonly emittedAt: number;\n readonly data: unknown;\n}\n\nexport interface OpensteerAutomationPingMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"ping\";\n readonly sentAt: number;\n}\n\nexport interface OpensteerAutomationPongMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"pong\";\n readonly sentAt: number;\n}\n\nexport type OpensteerAutomationClientMessage =\n | OpensteerAutomationHelloMessage\n | OpensteerAutomationResumeMessage\n | OpensteerAutomationInvokeMessage\n | OpensteerAutomationCancelMessage\n | OpensteerAutomationPingMessage;\n\nexport type OpensteerAutomationServerMessage =\n | OpensteerAutomationResultMessage\n | OpensteerAutomationErrorMessage\n | OpensteerAutomationEventMessage\n | OpensteerAutomationPongMessage;\n\nexport interface OpensteerSessionInfoResult {\n readonly session: OpensteerSessionInfo;\n}\n","import type { OpensteerCapability } from \"./capabilities.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport type { CoordinateSpace, Point, Rect, ViewportMetrics } from \"./geometry.js\";\nimport {\n coordinateSpaceSchema,\n pointSchema,\n rectSchema,\n viewportMetricsSchema,\n} from \"./geometry.js\";\nimport type { DocumentRef, FrameRef, NodeLocator, PageRef, SessionRef } from \"./identity.js\";\nimport {\n frameRefSchema,\n nodeLocatorSchema,\n documentRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type { FrameInfo, PageInfo } from \"./metadata.js\";\nimport { frameInfoSchema, pageInfoSchema } from \"./metadata.js\";\nimport type { BodyPayload, HeaderEntry, NetworkRecord, NetworkResourceType } from \"./network.js\";\nimport {\n bodyPayloadSchema,\n headerEntrySchema,\n networkRecordSchema,\n networkResourceTypeSchema,\n} from \"./network.js\";\nimport type { CookieRecord, StorageSnapshot } from \"./storage.js\";\nimport { cookieRecordSchema, storageSnapshotSchema } from \"./storage.js\";\nimport type {\n DomSnapshot,\n HitTestResult,\n HtmlSnapshot,\n ScreenshotArtifact,\n ScreenshotFormat,\n} from \"./snapshots.js\";\nimport {\n domSnapshotSchema,\n hitTestResultSchema,\n htmlSnapshotSchema,\n screenshotArtifactSchema,\n screenshotFormatSchema,\n} from \"./snapshots.js\";\n\nexport type MouseButton = \"left\" | \"middle\" | \"right\";\nexport type KeyModifier = \"Shift\" | \"Control\" | \"Alt\" | \"Meta\";\n\nexport interface SessionTransportRequest {\n readonly method: string;\n readonly url: string;\n readonly headers?: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly timeoutMs?: number;\n readonly followRedirects?: boolean;\n}\n\nexport interface SessionTransportResponse {\n readonly url: string;\n readonly status: number;\n readonly statusText: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly redirected: boolean;\n}\n\nexport interface CreateSessionInput {}\nexport interface CreateSessionOutput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface CloseSessionInput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface CloseSessionOutput {\n readonly closed: true;\n readonly sessionRef: SessionRef;\n}\n\nexport interface CreatePageInput {\n readonly sessionRef: SessionRef;\n readonly openerPageRef?: PageRef;\n readonly url?: string;\n}\n\nexport interface CreatePageOutput {\n readonly pageInfo: PageInfo;\n readonly mainFrame: FrameInfo;\n}\n\nexport interface ClosePageInput {\n readonly pageRef: PageRef;\n}\n\nexport interface ClosePageOutput {\n readonly closed: true;\n readonly pageRef: PageRef;\n}\n\nexport interface ActivatePageInput {\n readonly pageRef: PageRef;\n}\n\nexport interface NavigatePageInput {\n readonly pageRef: PageRef;\n readonly url: string;\n readonly referrer?: string;\n readonly timeoutMs?: number;\n}\n\nexport interface NavigatePageOutput {\n readonly pageInfo: PageInfo;\n readonly mainFrame: FrameInfo;\n}\n\nexport interface ReloadPageInput {\n readonly pageRef: PageRef;\n readonly timeoutMs?: number;\n}\n\nexport interface HistoryNavigationInput {\n readonly pageRef: PageRef;\n}\n\nexport interface HistoryNavigationOutput {\n readonly navigated: boolean;\n}\n\nexport interface StopLoadingInput {\n readonly pageRef: PageRef;\n}\n\nexport interface StopLoadingOutput {\n readonly stopped: true;\n}\n\nexport interface MouseMoveInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n}\n\nexport interface MouseMoveOutput {\n readonly moved: true;\n}\n\nexport interface MouseClickInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly button?: MouseButton;\n readonly clickCount?: number;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface MouseClickOutput {\n readonly hitTest?: HitTestResult;\n}\n\nexport interface MouseScrollInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly delta: Point;\n}\n\nexport interface MouseScrollOutput {\n readonly scrolled: true;\n}\n\nexport interface KeyPressInput {\n readonly pageRef: PageRef;\n readonly key: string;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface KeyPressOutput {\n readonly pressed: true;\n}\n\nexport interface TextInputInput {\n readonly pageRef: PageRef;\n readonly text: string;\n}\n\nexport interface TextInputOutput {\n readonly typed: true;\n}\n\nexport interface CaptureScreenshotInput {\n readonly pageRef: PageRef;\n readonly format?: ScreenshotFormat;\n readonly clip?: Rect;\n readonly clipSpace?: CoordinateSpace;\n readonly fullPage?: boolean;\n readonly includeCursor?: boolean;\n}\n\nexport interface SetExecutionStateInput {\n readonly pageRef: PageRef;\n readonly paused?: boolean;\n readonly frozen?: boolean;\n}\n\nexport interface SetExecutionStateOutput {\n readonly paused: boolean;\n readonly frozen: boolean;\n}\n\nexport interface ListPagesInput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface ListPagesOutput {\n readonly pages: readonly PageInfo[];\n}\n\nexport interface ListFramesInput {\n readonly pageRef: PageRef;\n}\n\nexport interface ListFramesOutput {\n readonly frames: readonly FrameInfo[];\n}\n\nexport interface GetPageInfoInput {\n readonly pageRef: PageRef;\n}\n\nexport interface GetFrameInfoInput {\n readonly frameRef: FrameRef;\n}\n\nexport type DocumentTargetInput =\n | {\n readonly frameRef: FrameRef;\n readonly documentRef?: never;\n }\n | {\n readonly documentRef: DocumentRef;\n readonly frameRef?: never;\n };\n\nexport type GetHtmlSnapshotInput = DocumentTargetInput;\n\nexport type GetDomSnapshotInput = DocumentTargetInput;\n\nexport interface ReadTextInput extends NodeLocator {}\n\nexport interface ReadTextOutput {\n readonly text: string | null;\n}\n\nexport interface ReadAttributesInput extends NodeLocator {}\n\nexport interface AttributeEntry {\n readonly name: string;\n readonly value: string;\n}\n\nexport interface ReadAttributesOutput {\n readonly attributes: readonly AttributeEntry[];\n}\n\nexport interface HitTestInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly ignorePointerEventsNone?: boolean;\n readonly includeUserAgentShadowDom?: boolean;\n}\n\nexport interface GetViewportMetricsInput {\n readonly pageRef: PageRef;\n}\n\nexport interface GetNetworkRecordsInput {\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n readonly requestIds?: readonly string[];\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n readonly includeBodies?: boolean;\n}\n\nexport interface GetNetworkRecordsOutput {\n readonly records: readonly NetworkRecord[];\n}\n\nexport interface GetCookiesInput {\n readonly sessionRef: SessionRef;\n readonly urls?: readonly string[];\n}\n\nexport interface GetCookiesOutput {\n readonly cookies: readonly CookieRecord[];\n}\n\nexport interface GetStorageSnapshotInput {\n readonly sessionRef: SessionRef;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n}\n\nexport interface ExecuteSessionRequestInput {\n readonly sessionRef: SessionRef;\n readonly request: SessionTransportRequest;\n}\n\nexport const opensteerOperationNames = [\n \"session.create\",\n \"session.close\",\n \"page.create\",\n \"page.close\",\n \"page.activate\",\n \"page.navigate\",\n \"page.reload\",\n \"page.go-back\",\n \"page.go-forward\",\n \"page.stop-loading\",\n \"input.mouse-move\",\n \"input.mouse-click\",\n \"input.mouse-scroll\",\n \"input.key-press\",\n \"input.text-input\",\n \"artifact.capture-screenshot\",\n \"execution.set-state\",\n \"inspect.list-pages\",\n \"inspect.list-frames\",\n \"inspect.get-page-info\",\n \"inspect.get-frame-info\",\n \"inspect.get-html-snapshot\",\n \"inspect.get-dom-snapshot\",\n \"inspect.read-text\",\n \"inspect.read-attributes\",\n \"inspect.hit-test\",\n \"inspect.get-viewport-metrics\",\n \"inspect.get-network-records\",\n \"inspect.get-cookies\",\n \"inspect.get-storage-snapshot\",\n \"transport.execute-session-request\",\n] as const;\n\nexport type OpensteerOperationName = (typeof opensteerOperationNames)[number];\n\nexport interface OpensteerOperationSpec<TInput = unknown, TOutput = unknown> {\n readonly name: OpensteerOperationName;\n readonly description: string;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly requiredCapabilities: readonly OpensteerCapability[];\n resolveRequiredCapabilities?(input: TInput): readonly OpensteerCapability[];\n}\n\nfunction defineOperationSpec<TInput, TOutput>(\n spec: OpensteerOperationSpec<TInput, TOutput>,\n): OpensteerOperationSpec<TInput, TOutput> {\n return spec;\n}\n\nconst mouseButtonSchema: JsonSchema = enumSchema([\"left\", \"middle\", \"right\"] as const, {\n title: \"MouseButton\",\n});\n\nconst keyModifierSchema: JsonSchema = enumSchema([\"Shift\", \"Control\", \"Alt\", \"Meta\"] as const, {\n title: \"KeyModifier\",\n});\n\nconst emptyObjectSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"EmptyObject\",\n required: [],\n },\n);\n\nconst sessionTransportRequestSchema: JsonSchema = objectSchema(\n {\n method: stringSchema(),\n url: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n timeoutMs: integerSchema({ minimum: 0 }),\n followRedirects: {\n type: \"boolean\",\n },\n },\n {\n title: \"SessionTransportRequest\",\n required: [\"method\", \"url\"],\n },\n);\n\nconst sessionTransportResponseSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n status: integerSchema({ minimum: 0 }),\n statusText: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n redirected: {\n type: \"boolean\",\n },\n },\n {\n title: \"SessionTransportResponse\",\n required: [\"url\", \"status\", \"statusText\", \"headers\", \"redirected\"],\n },\n);\n\nconst pageOperationResultSchema: JsonSchema = objectSchema(\n {\n pageInfo: pageInfoSchema,\n mainFrame: frameInfoSchema,\n },\n {\n title: \"PageOperationResult\",\n required: [\"pageInfo\", \"mainFrame\"],\n },\n);\n\nconst attributeEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"AttributeEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nconst createSessionInputSchema: JsonSchema = emptyObjectSchema;\nconst createSessionOutputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CreateSessionOutput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closeSessionInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CloseSessionInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closeSessionOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CloseSessionOutput\",\n required: [\"closed\", \"sessionRef\"],\n },\n);\n\nconst createPageInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n openerPageRef: pageRefSchema,\n url: stringSchema(),\n },\n {\n title: \"CreatePageInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closePageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"ClosePageInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst closePageOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n pageRef: pageRefSchema,\n },\n {\n title: \"ClosePageOutput\",\n required: [\"closed\", \"pageRef\"],\n },\n);\n\nconst pageRefInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"PageRefInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst navigatePageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n url: stringSchema(),\n referrer: stringSchema(),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"NavigatePageInput\",\n required: [\"pageRef\", \"url\"],\n },\n);\n\nconst reloadPageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"ReloadPageInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst historyNavigationOutputSchema: JsonSchema = objectSchema(\n {\n navigated: {\n type: \"boolean\",\n },\n },\n {\n title: \"HistoryNavigationOutput\",\n required: [\"navigated\"],\n },\n);\n\nconst stopLoadingOutputSchema: JsonSchema = objectSchema(\n {\n stopped: literalSchema(true),\n },\n {\n title: \"StopLoadingOutput\",\n required: [\"stopped\"],\n },\n);\n\nconst mouseMoveInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n },\n {\n title: \"MouseMoveInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst mouseMoveOutputSchema: JsonSchema = objectSchema(\n {\n moved: literalSchema(true),\n },\n {\n title: \"MouseMoveOutput\",\n required: [\"moved\"],\n },\n);\n\nconst mouseClickInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n button: mouseButtonSchema,\n clickCount: integerSchema({ minimum: 1 }),\n modifiers: arraySchema(keyModifierSchema, { uniqueItems: true }),\n },\n {\n title: \"MouseClickInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst mouseClickOutputSchema: JsonSchema = objectSchema(\n {\n hitTest: hitTestResultSchema,\n },\n {\n title: \"MouseClickOutput\",\n },\n);\n\nconst mouseScrollInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n delta: pointSchema,\n },\n {\n title: \"MouseScrollInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\", \"delta\"],\n },\n);\n\nconst mouseScrollOutputSchema: JsonSchema = objectSchema(\n {\n scrolled: literalSchema(true),\n },\n {\n title: \"MouseScrollOutput\",\n required: [\"scrolled\"],\n },\n);\n\nconst keyPressInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n key: stringSchema(),\n modifiers: arraySchema(keyModifierSchema, { uniqueItems: true }),\n },\n {\n title: \"KeyPressInput\",\n required: [\"pageRef\", \"key\"],\n },\n);\n\nconst keyPressOutputSchema: JsonSchema = objectSchema(\n {\n pressed: literalSchema(true),\n },\n {\n title: \"KeyPressOutput\",\n required: [\"pressed\"],\n },\n);\n\nconst textInputInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n text: stringSchema(),\n },\n {\n title: \"TextInputInput\",\n required: [\"pageRef\", \"text\"],\n },\n);\n\nconst textInputOutputSchema: JsonSchema = objectSchema(\n {\n typed: literalSchema(true),\n },\n {\n title: \"TextInputOutput\",\n required: [\"typed\"],\n },\n);\n\nconst captureScreenshotInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n format: screenshotFormatSchema,\n clip: rectSchema,\n clipSpace: coordinateSpaceSchema,\n fullPage: {\n type: \"boolean\",\n },\n includeCursor: {\n type: \"boolean\",\n },\n },\n {\n title: \"CaptureScreenshotInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst setExecutionStateInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n paused: {\n type: \"boolean\",\n },\n frozen: {\n type: \"boolean\",\n },\n },\n {\n title: \"SetExecutionStateInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst setExecutionStateOutputSchema: JsonSchema = objectSchema(\n {\n paused: {\n type: \"boolean\",\n },\n frozen: {\n type: \"boolean\",\n },\n },\n {\n title: \"SetExecutionStateOutput\",\n required: [\"paused\", \"frozen\"],\n },\n);\n\nconst listPagesInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"ListPagesInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst listPagesOutputSchema: JsonSchema = objectSchema(\n {\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"ListPagesOutput\",\n required: [\"pages\"],\n },\n);\n\nconst listFramesOutputSchema: JsonSchema = objectSchema(\n {\n frames: arraySchema(frameInfoSchema),\n },\n {\n title: \"ListFramesOutput\",\n required: [\"frames\"],\n },\n);\n\nconst frameRefInputSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n },\n {\n title: \"FrameRefInput\",\n required: [\"frameRef\"],\n },\n);\n\nconst frameDocumentTargetSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n },\n {\n title: \"FrameDocumentTarget\",\n required: [\"frameRef\"],\n },\n);\n\nconst concreteDocumentTargetSchema: JsonSchema = objectSchema(\n {\n documentRef: documentRefSchema,\n },\n {\n title: \"ConcreteDocumentTarget\",\n required: [\"documentRef\"],\n },\n);\n\nconst documentTargetSchema: JsonSchema = oneOfSchema(\n [frameDocumentTargetSchema, concreteDocumentTargetSchema],\n {\n title: \"DocumentTarget\",\n },\n);\n\nconst readTextOutputSchema: JsonSchema = objectSchema(\n {\n text: {\n type: [\"string\", \"null\"],\n },\n },\n {\n title: \"ReadTextOutput\",\n required: [\"text\"],\n },\n);\n\nconst readAttributesOutputSchema: JsonSchema = objectSchema(\n {\n attributes: arraySchema(attributeEntrySchema),\n },\n {\n title: \"ReadAttributesOutput\",\n required: [\"attributes\"],\n },\n);\n\nconst hitTestInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n ignorePointerEventsNone: {\n type: \"boolean\",\n },\n includeUserAgentShadowDom: {\n type: \"boolean\",\n },\n },\n {\n title: \"HitTestInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst getNetworkRecordsInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n requestIds: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n includeBodies: {\n type: \"boolean\",\n },\n },\n {\n title: \"GetNetworkRecordsInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst getNetworkRecordsOutputSchema: JsonSchema = objectSchema(\n {\n records: arraySchema(networkRecordSchema),\n },\n {\n title: \"GetNetworkRecordsOutput\",\n required: [\"records\"],\n },\n);\n\nconst getCookiesInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n urls: arraySchema(stringSchema()),\n },\n {\n title: \"GetCookiesInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst getCookiesOutputSchema: JsonSchema = objectSchema(\n {\n cookies: arraySchema(cookieRecordSchema),\n },\n {\n title: \"GetCookiesOutput\",\n required: [\"cookies\"],\n },\n);\n\nconst getStorageSnapshotInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n includeSessionStorage: {\n type: \"boolean\",\n },\n includeIndexedDb: {\n type: \"boolean\",\n },\n },\n {\n title: \"GetStorageSnapshotInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst executeSessionRequestInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n request: sessionTransportRequestSchema,\n },\n {\n title: \"ExecuteSessionRequestInput\",\n required: [\"sessionRef\", \"request\"],\n },\n);\n\nexport function resolveRequiredCapabilities<TInput>(\n spec: Pick<\n OpensteerOperationSpec<TInput, unknown>,\n \"requiredCapabilities\" | \"resolveRequiredCapabilities\"\n >,\n input: TInput,\n): readonly OpensteerCapability[] {\n return spec.resolveRequiredCapabilities?.(input) ?? spec.requiredCapabilities;\n}\n\nexport const opensteerOperationSpecifications = [\n defineOperationSpec<CreateSessionInput, CreateSessionOutput>({\n name: \"session.create\",\n description: \"Create a new isolated session boundary.\",\n inputSchema: createSessionInputSchema,\n outputSchema: createSessionOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n defineOperationSpec<CloseSessionInput, CloseSessionOutput>({\n name: \"session.close\",\n description: \"Close a session and release all associated pages.\",\n inputSchema: closeSessionInputSchema,\n outputSchema: closeSessionOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n defineOperationSpec<CreatePageInput, CreatePageOutput>({\n name: \"page.create\",\n description: \"Create a top-level browsing context within a session.\",\n inputSchema: createPageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<ClosePageInput, ClosePageOutput>({\n name: \"page.close\",\n description: \"Close an existing top-level browsing context.\",\n inputSchema: closePageInputSchema,\n outputSchema: closePageOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<ActivatePageInput, PageInfo>({\n name: \"page.activate\",\n description: \"Make a page the active top-level browsing context.\",\n inputSchema: pageRefInputSchema,\n outputSchema: pageInfoSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<NavigatePageInput, NavigatePageOutput>({\n name: \"page.navigate\",\n description: \"Navigate a page to a new URL.\",\n inputSchema: navigatePageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<ReloadPageInput, NavigatePageOutput>({\n name: \"page.reload\",\n description: \"Reload the current main frame document.\",\n inputSchema: reloadPageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<HistoryNavigationInput, HistoryNavigationOutput>({\n name: \"page.go-back\",\n description: \"Navigate backwards in page history.\",\n inputSchema: pageRefInputSchema,\n outputSchema: historyNavigationOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<HistoryNavigationInput, HistoryNavigationOutput>({\n name: \"page.go-forward\",\n description: \"Navigate forwards in page history.\",\n inputSchema: pageRefInputSchema,\n outputSchema: historyNavigationOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<StopLoadingInput, StopLoadingOutput>({\n name: \"page.stop-loading\",\n description: \"Stop the current navigation or resource load.\",\n inputSchema: pageRefInputSchema,\n outputSchema: stopLoadingOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<MouseMoveInput, MouseMoveOutput>({\n name: \"input.mouse-move\",\n description: \"Move the mouse pointer in the requested coordinate space.\",\n inputSchema: mouseMoveInputSchema,\n outputSchema: mouseMoveOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n }),\n defineOperationSpec<MouseClickInput, MouseClickOutput>({\n name: \"input.mouse-click\",\n description: \"Dispatch a pointer click and optionally return the resolved target.\",\n inputSchema: mouseClickInputSchema,\n outputSchema: mouseClickOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n resolveRequiredCapabilities: (input) =>\n (input.modifiers?.length ?? 0) > 0 ? [\"input.pointer\", \"input.keyboard\"] : [\"input.pointer\"],\n }),\n defineOperationSpec<MouseScrollInput, MouseScrollOutput>({\n name: \"input.mouse-scroll\",\n description: \"Dispatch a wheel scroll at the given coordinate.\",\n inputSchema: mouseScrollInputSchema,\n outputSchema: mouseScrollOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n }),\n defineOperationSpec<KeyPressInput, KeyPressOutput>({\n name: \"input.key-press\",\n description: \"Dispatch a key press with optional modifier keys.\",\n inputSchema: keyPressInputSchema,\n outputSchema: keyPressOutputSchema,\n requiredCapabilities: [\"input.keyboard\"],\n }),\n defineOperationSpec<TextInputInput, TextInputOutput>({\n name: \"input.text-input\",\n description: \"Insert raw text into the focused page target.\",\n inputSchema: textInputInputSchema,\n outputSchema: textInputOutputSchema,\n requiredCapabilities: [\"input.keyboard\"],\n }),\n defineOperationSpec<CaptureScreenshotInput, ScreenshotArtifact>({\n name: \"artifact.capture-screenshot\",\n description: \"Capture a screenshot artifact from the current page view.\",\n inputSchema: captureScreenshotInputSchema,\n outputSchema: screenshotArtifactSchema,\n requiredCapabilities: [\"artifacts.screenshot\"],\n }),\n defineOperationSpec<SetExecutionStateInput, SetExecutionStateOutput>({\n name: \"execution.set-state\",\n description: \"Pause, resume, or freeze page execution state.\",\n inputSchema: setExecutionStateInputSchema,\n outputSchema: setExecutionStateOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) => {\n const required: OpensteerCapability[] = [];\n\n if (input.paused === true) {\n required.push(\"execution.pause\");\n } else if (input.paused === false) {\n required.push(\"execution.resume\");\n }\n\n if (input.frozen !== undefined) {\n required.push(\"execution.freeze\");\n }\n\n return required;\n },\n }),\n defineOperationSpec<ListPagesInput, ListPagesOutput>({\n name: \"inspect.list-pages\",\n description: \"List all pages in the current session.\",\n inputSchema: listPagesInputSchema,\n outputSchema: listPagesOutputSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineOperationSpec<ListFramesInput, ListFramesOutput>({\n name: \"inspect.list-frames\",\n description: \"List all frames within a page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: listFramesOutputSchema,\n requiredCapabilities: [\"inspect.frames\"],\n }),\n defineOperationSpec<GetPageInfoInput, PageInfo>({\n name: \"inspect.get-page-info\",\n description: \"Read metadata for a specific page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: pageInfoSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineOperationSpec<GetFrameInfoInput, FrameInfo>({\n name: \"inspect.get-frame-info\",\n description: \"Read metadata for a specific frame.\",\n inputSchema: frameRefInputSchema,\n outputSchema: frameInfoSchema,\n requiredCapabilities: [\"inspect.frames\"],\n }),\n defineOperationSpec<GetHtmlSnapshotInput, HtmlSnapshot>({\n name: \"inspect.get-html-snapshot\",\n description: \"Read raw HTML for a frame or concrete document.\",\n inputSchema: documentTargetSchema,\n outputSchema: htmlSnapshotSchema,\n requiredCapabilities: [\"inspect.html\"],\n }),\n defineOperationSpec<GetDomSnapshotInput, DomSnapshot>({\n name: \"inspect.get-dom-snapshot\",\n description: \"Read a structured DOM snapshot for a frame or concrete document.\",\n inputSchema: documentTargetSchema,\n outputSchema: domSnapshotSchema,\n requiredCapabilities: [\"inspect.domSnapshot\"],\n }),\n defineOperationSpec<ReadTextInput, ReadTextOutput>({\n name: \"inspect.read-text\",\n description: \"Read text content for a node locator.\",\n inputSchema: nodeLocatorSchema,\n outputSchema: readTextOutputSchema,\n requiredCapabilities: [\"inspect.text\"],\n }),\n defineOperationSpec<ReadAttributesInput, ReadAttributesOutput>({\n name: \"inspect.read-attributes\",\n description: \"Read ordered attributes for a node locator.\",\n inputSchema: nodeLocatorSchema,\n outputSchema: readAttributesOutputSchema,\n requiredCapabilities: [\"inspect.attributes\"],\n }),\n defineOperationSpec<HitTestInput, HitTestResult>({\n name: \"inspect.hit-test\",\n description: \"Resolve a point into the current DOM target at that coordinate.\",\n inputSchema: hitTestInputSchema,\n outputSchema: hitTestResultSchema,\n requiredCapabilities: [\"inspect.hitTest\"],\n }),\n defineOperationSpec<GetViewportMetricsInput, ViewportMetrics>({\n name: \"inspect.get-viewport-metrics\",\n description: \"Read layout, visual viewport, and scroll metrics for a page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: viewportMetricsSchema,\n requiredCapabilities: [\"inspect.viewportMetrics\"],\n }),\n defineOperationSpec<GetNetworkRecordsInput, GetNetworkRecordsOutput>({\n name: \"inspect.get-network-records\",\n description: \"Read normalized network records for a session or page.\",\n inputSchema: getNetworkRecordsInputSchema,\n outputSchema: getNetworkRecordsOutputSchema,\n requiredCapabilities: [\"inspect.network\"],\n resolveRequiredCapabilities: (input) =>\n input.includeBodies === true\n ? [\"inspect.network\", \"inspect.networkBodies\"]\n : [\"inspect.network\"],\n }),\n defineOperationSpec<GetCookiesInput, GetCookiesOutput>({\n name: \"inspect.get-cookies\",\n description: \"Read cookie state filtered by URL semantics when requested.\",\n inputSchema: getCookiesInputSchema,\n outputSchema: getCookiesOutputSchema,\n requiredCapabilities: [\"inspect.cookies\"],\n }),\n defineOperationSpec<GetStorageSnapshotInput, StorageSnapshot>({\n name: \"inspect.get-storage-snapshot\",\n description: \"Read storage state for origins reachable in the session boundary.\",\n inputSchema: getStorageSnapshotInputSchema,\n outputSchema: storageSnapshotSchema,\n requiredCapabilities: [\"inspect.localStorage\"],\n resolveRequiredCapabilities: (input) => {\n const required: OpensteerCapability[] = [\"inspect.localStorage\"];\n\n if (input.includeSessionStorage ?? true) {\n required.push(\"inspect.sessionStorage\");\n }\n if (input.includeIndexedDb ?? true) {\n required.push(\"inspect.indexedDb\");\n }\n\n return required;\n },\n }),\n defineOperationSpec<ExecuteSessionRequestInput, SessionTransportResponse>({\n name: \"transport.execute-session-request\",\n description: \"Execute an HTTP request within the active browser session boundary.\",\n inputSchema: executeSessionRequestInputSchema,\n outputSchema: sessionTransportResponseSchema,\n requiredCapabilities: [\"transport.sessionHttp\"],\n }),\n] as const satisfies readonly OpensteerOperationSpec[];\n\nexport const opensteerOperationSpecificationMap = Object.fromEntries(\n opensteerOperationSpecifications.map((spec) => [spec.name, spec]),\n) as Record<OpensteerOperationName, OpensteerOperationSpec>;\n","import type { JsonSchema } from \"./json.js\";\nimport { OPENSTEER_PROTOCOL_MEDIA_TYPE, OPENSTEER_PROTOCOL_REST_BASE_PATH } from \"./version.js\";\nimport { requestEnvelopeSchema, responseEnvelopeSchema } from \"./envelopes.js\";\nimport { opensteerOperationSpecifications, type OpensteerOperationName } from \"./operations.js\";\n\nexport type OpensteerHttpMethod = \"POST\";\n\nexport interface OpensteerRestEndpointDescriptor {\n readonly name: OpensteerOperationName;\n readonly method: OpensteerHttpMethod;\n readonly path: string;\n readonly description: string;\n readonly mediaType: string;\n readonly requestSchema: JsonSchema;\n readonly responseSchema: JsonSchema;\n}\n\nexport const opensteerRestEndpoints: readonly OpensteerRestEndpointDescriptor[] =\n opensteerOperationSpecifications.map((spec) => ({\n name: spec.name,\n method: \"POST\",\n path: `${OPENSTEER_PROTOCOL_REST_BASE_PATH}/operations/${spec.name.replaceAll(\".\", \"/\")}`,\n description: spec.description,\n mediaType: OPENSTEER_PROTOCOL_MEDIA_TYPE,\n requestSchema: requestEnvelopeSchema(spec.inputSchema, spec.name),\n responseSchema: responseEnvelopeSchema(spec.outputSchema, spec.name),\n }));\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, numberSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport type NetworkDiffFieldKind = \"added\" | \"removed\" | \"changed\" | \"unchanged\";\n\nexport interface NetworkDiffEntropy {\n readonly left?: number;\n readonly right?: number;\n readonly likelyEncrypted: boolean;\n}\n\nexport interface NetworkDiffField {\n readonly path: string;\n readonly kind: NetworkDiffFieldKind;\n readonly leftValue?: string;\n readonly rightValue?: string;\n readonly entropy?: NetworkDiffEntropy;\n}\n\nexport interface OpensteerNetworkDiffInput {\n readonly leftRecordId: string;\n readonly rightRecordId: string;\n readonly includeUnchanged?: boolean;\n readonly scope?: \"headers\" | \"body\" | \"all\";\n}\n\nexport interface OpensteerNetworkDiffOutput {\n readonly summary: {\n readonly added: number;\n readonly removed: number;\n readonly changed: number;\n readonly unchanged: number;\n readonly likelyEncryptedFields: number;\n };\n readonly requestDiffs: readonly NetworkDiffField[];\n readonly responseDiffs: readonly NetworkDiffField[];\n}\n\nexport const networkDiffFieldKindSchema: JsonSchema = enumSchema(\n [\"added\", \"removed\", \"changed\", \"unchanged\"] as const,\n {\n title: \"NetworkDiffFieldKind\",\n },\n);\n\nexport const networkDiffEntropySchema: JsonSchema = objectSchema(\n {\n left: numberSchema({ minimum: 0 }),\n right: numberSchema({ minimum: 0 }),\n likelyEncrypted: { type: \"boolean\" },\n },\n {\n title: \"NetworkDiffEntropy\",\n required: [\"likelyEncrypted\"],\n },\n);\n\nexport const networkDiffFieldSchema: JsonSchema = objectSchema(\n {\n path: stringSchema({ minLength: 1 }),\n kind: networkDiffFieldKindSchema,\n leftValue: stringSchema(),\n rightValue: stringSchema(),\n entropy: networkDiffEntropySchema,\n },\n {\n title: \"NetworkDiffField\",\n required: [\"path\", \"kind\"],\n },\n);\n\nexport const opensteerNetworkDiffInputSchema: JsonSchema = objectSchema(\n {\n leftRecordId: stringSchema({ minLength: 1 }),\n rightRecordId: stringSchema({ minLength: 1 }),\n includeUnchanged: { type: \"boolean\" },\n scope: enumSchema([\"headers\", \"body\", \"all\"] as const),\n },\n {\n title: \"OpensteerNetworkDiffInput\",\n required: [\"leftRecordId\", \"rightRecordId\"],\n },\n);\n\nexport const opensteerNetworkDiffOutputSchema: JsonSchema = objectSchema(\n {\n summary: objectSchema(\n {\n added: numberSchema({ minimum: 0 }),\n removed: numberSchema({ minimum: 0 }),\n changed: numberSchema({ minimum: 0 }),\n unchanged: numberSchema({ minimum: 0 }),\n likelyEncryptedFields: numberSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkDiffSummary\",\n required: [\"added\", \"removed\", \"changed\", \"unchanged\", \"likelyEncryptedFields\"],\n },\n ),\n requestDiffs: arraySchema(networkDiffFieldSchema),\n responseDiffs: arraySchema(networkDiffFieldSchema),\n },\n {\n title: \"OpensteerNetworkDiffOutput\",\n required: [\"summary\", \"requestDiffs\", \"responseDiffs\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\nimport type { TransportKind, OpensteerWriteRequestPlanInput } from \"./requests.js\";\nimport { transportKindSchema, opensteerWriteRequestPlanInputSchema } from \"./requests.js\";\n\nexport type MinimizationFieldClassification = \"required\" | \"optional\" | \"untested\";\n\nexport interface MinimizationFieldResult {\n readonly name: string;\n readonly location: \"header\" | \"cookie\" | \"query\" | \"body-field\";\n readonly classification: MinimizationFieldClassification;\n readonly originalValue?: string;\n}\n\nexport interface OpensteerNetworkMinimizeSuccessPolicy {\n readonly statusCodes?: readonly number[];\n readonly responseBodyIncludes?: readonly string[];\n readonly responseStructureMatch?: boolean;\n}\n\nexport interface OpensteerNetworkMinimizeInput {\n readonly recordId: string;\n readonly transport?: TransportKind;\n readonly successPolicy?: OpensteerNetworkMinimizeSuccessPolicy;\n readonly maxTrials?: number;\n readonly preserve?: readonly string[];\n}\n\nexport interface OpensteerNetworkMinimizeOutput {\n readonly recordId: string;\n readonly totalTrials: number;\n readonly fields: readonly MinimizationFieldResult[];\n readonly minimizedPlan?: OpensteerWriteRequestPlanInput;\n}\n\nexport const minimizationFieldClassificationSchema: JsonSchema = enumSchema(\n [\"required\", \"optional\", \"untested\"] as const,\n {\n title: \"MinimizationFieldClassification\",\n },\n);\n\nexport const minimizationFieldResultSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n location: enumSchema([\"header\", \"cookie\", \"query\", \"body-field\"] as const),\n classification: minimizationFieldClassificationSchema,\n originalValue: stringSchema(),\n },\n {\n title: \"MinimizationFieldResult\",\n required: [\"name\", \"location\", \"classification\"],\n },\n);\n\nexport const opensteerNetworkMinimizeSuccessPolicySchema: JsonSchema = objectSchema(\n {\n statusCodes: arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseBodyIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseStructureMatch: { type: \"boolean\" },\n },\n {\n title: \"OpensteerNetworkMinimizeSuccessPolicy\",\n },\n);\n\nexport const opensteerNetworkMinimizeInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n successPolicy: opensteerNetworkMinimizeSuccessPolicySchema,\n maxTrials: integerSchema({ minimum: 1 }),\n preserve: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerNetworkMinimizeInput\",\n required: [\"recordId\"],\n },\n);\n\nexport const opensteerNetworkMinimizeOutputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n totalTrials: integerSchema({ minimum: 0 }),\n fields: arraySchema(minimizationFieldResultSchema),\n minimizedPlan: opensteerWriteRequestPlanInputSchema,\n },\n {\n title: \"OpensteerNetworkMinimizeOutput\",\n required: [\"recordId\", \"totalTrials\", \"fields\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport type TransportProbeLevel =\n | \"direct-http\"\n | \"matched-tls\"\n | \"context-http\"\n | \"page-http\"\n | \"session-http\";\n\nexport interface OpensteerTransportProbeInput {\n readonly recordId: string;\n}\n\nexport interface TransportProbeResult {\n readonly transport: TransportProbeLevel;\n readonly status: number | null;\n readonly success: boolean;\n readonly durationMs: number;\n readonly error?: string;\n}\n\nexport interface OpensteerTransportProbeOutput {\n readonly results: readonly TransportProbeResult[];\n readonly recommendation: TransportProbeLevel;\n}\n\nexport const transportProbeLevelSchema: JsonSchema = enumSchema(\n [\"direct-http\", \"matched-tls\", \"context-http\", \"page-http\", \"session-http\"] as const,\n {\n title: \"TransportProbeLevel\",\n },\n);\n\nexport const opensteerTransportProbeInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerTransportProbeInput\",\n required: [\"recordId\"],\n },\n);\n\nexport const transportProbeResultSchema: JsonSchema = objectSchema(\n {\n transport: transportProbeLevelSchema,\n status: {\n type: [\"integer\", \"null\"],\n minimum: 100,\n maximum: 599,\n },\n success: { type: \"boolean\" },\n durationMs: integerSchema({ minimum: 0 }),\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"TransportProbeResult\",\n required: [\"transport\", \"status\", \"success\", \"durationMs\"],\n },\n);\n\nexport const opensteerTransportProbeOutputSchema: JsonSchema = objectSchema(\n {\n results: arraySchema(transportProbeResultSchema),\n recommendation: transportProbeLevelSchema,\n },\n {\n title: \"OpensteerTransportProbeOutput\",\n required: [\"results\", \"recommendation\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n} from \"./json.js\";\n\nexport interface OpensteerScriptBeautifyInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerScriptBeautifyOutput {\n readonly content: string;\n readonly artifactId?: string;\n readonly bytesBefore: number;\n readonly bytesAfter: number;\n}\n\nexport interface OpensteerScriptDeobfuscateInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerScriptDeobfuscateOutput {\n readonly content: string;\n readonly artifactId?: string;\n readonly transforms: readonly string[];\n readonly bytesBefore: number;\n readonly bytesAfter: number;\n}\n\nexport type SandboxFidelity = \"minimal\" | \"standard\" | \"full\";\nexport type SandboxAjaxMode = \"passthrough\" | \"capture\" | \"mock\";\n\nexport interface SandboxAjaxRoute {\n readonly urlPattern: string;\n readonly mode: SandboxAjaxMode;\n readonly mockResponse?: {\n readonly status: number;\n readonly headers?: Readonly<Record<string, string>>;\n readonly body?: string;\n };\n}\n\nexport interface OpensteerScriptSandboxInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly fidelity?: SandboxFidelity;\n readonly ajaxRoutes?: readonly SandboxAjaxRoute[];\n readonly cookies?: Readonly<Record<string, string>>;\n readonly globals?: Readonly<Record<string, unknown>>;\n readonly timeoutMs?: number;\n readonly clockMode?: \"real\" | \"manual\";\n}\n\nexport interface SandboxCapturedAjaxCall {\n readonly method: string;\n readonly url: string;\n readonly headers: Readonly<Record<string, string>>;\n readonly body?: string;\n readonly timestamp: number;\n}\n\nexport interface OpensteerScriptSandboxOutput {\n readonly result?: unknown;\n readonly capturedAjax: readonly SandboxCapturedAjaxCall[];\n readonly errors: readonly string[];\n readonly durationMs: number;\n}\n\nconst scriptTransformInputSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n content: stringSchema(),\n persist: { type: \"boolean\" },\n },\n {\n title: \"OpensteerScriptTransformInput\",\n },\n);\n\nconst scriptTransformOutputSchema = objectSchema(\n {\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n bytesBefore: integerSchema({ minimum: 0 }),\n bytesAfter: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptTransformOutput\",\n required: [\"content\", \"bytesBefore\", \"bytesAfter\"],\n },\n);\n\nexport const opensteerScriptBeautifyInputSchema: JsonSchema = scriptTransformInputSchema;\n\nexport const opensteerScriptBeautifyOutputSchema: JsonSchema = scriptTransformOutputSchema;\n\nexport const opensteerScriptDeobfuscateInputSchema: JsonSchema = scriptTransformInputSchema;\n\nexport const opensteerScriptDeobfuscateOutputSchema: JsonSchema = objectSchema(\n {\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n transforms: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n bytesBefore: integerSchema({ minimum: 0 }),\n bytesAfter: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptDeobfuscateOutput\",\n required: [\"content\", \"transforms\", \"bytesBefore\", \"bytesAfter\"],\n },\n);\n\nexport const sandboxFidelitySchema: JsonSchema = enumSchema(\n [\"minimal\", \"standard\", \"full\"] as const,\n {\n title: \"SandboxFidelity\",\n },\n);\n\nexport const sandboxAjaxModeSchema: JsonSchema = enumSchema(\n [\"passthrough\", \"capture\", \"mock\"] as const,\n {\n title: \"SandboxAjaxMode\",\n },\n);\n\nexport const sandboxAjaxRouteSchema: JsonSchema = objectSchema(\n {\n urlPattern: stringSchema({ minLength: 1 }),\n mode: sandboxAjaxModeSchema,\n mockResponse: objectSchema(\n {\n status: integerSchema({ minimum: 100, maximum: 599 }),\n headers: recordSchema(stringSchema(), {\n title: \"SandboxAjaxMockHeaders\",\n }),\n body: stringSchema(),\n },\n {\n title: \"SandboxAjaxMockResponse\",\n required: [\"status\"],\n },\n ),\n },\n {\n title: \"SandboxAjaxRoute\",\n required: [\"urlPattern\", \"mode\"],\n },\n);\n\nexport const opensteerScriptSandboxInputSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n content: stringSchema(),\n fidelity: sandboxFidelitySchema,\n ajaxRoutes: arraySchema(sandboxAjaxRouteSchema),\n cookies: recordSchema(stringSchema(), {\n title: \"SandboxCookies\",\n }),\n globals: objectSchema(\n {},\n {\n title: \"SandboxGlobals\",\n additionalProperties: true,\n },\n ),\n timeoutMs: integerSchema({ minimum: 1 }),\n clockMode: enumSchema([\"real\", \"manual\"] as const),\n },\n {\n title: \"OpensteerScriptSandboxInput\",\n },\n);\n\nexport const sandboxCapturedAjaxCallSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n headers: recordSchema(stringSchema(), {\n title: \"SandboxCapturedAjaxHeaders\",\n }),\n body: stringSchema(),\n timestamp: integerSchema({ minimum: 0 }),\n },\n {\n title: \"SandboxCapturedAjaxCall\",\n required: [\"method\", \"url\", \"headers\", \"timestamp\"],\n },\n);\n\nexport const opensteerScriptSandboxOutputSchema: JsonSchema = objectSchema(\n {\n result: oneOfSchema(\n [\n objectSchema({}, { additionalProperties: true }),\n arraySchema({}),\n stringSchema(),\n { type: \"number\" },\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"SandboxResult\",\n },\n ),\n capturedAjax: arraySchema(sandboxCapturedAjaxCallSchema),\n errors: arraySchema(stringSchema({ minLength: 1 })),\n durationMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptSandboxOutput\",\n required: [\"capturedAjax\", \"errors\", \"durationMs\"],\n },\n);\n","import type { JsonSchema, JsonValue } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n recordSchema,\n stringSchema,\n oneOfSchema,\n} from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport { networkRecordKindSchema } from \"./network.js\";\nimport {\n opensteerRegistryProvenanceSchema,\n opensteerRequestPlanRecordSchema,\n transportKindSchema,\n type OpensteerRegistryProvenance,\n type OpensteerRequestPlanRecord,\n type TransportKind,\n} from \"./requests.js\";\nimport { storageSnapshotSchema, type StorageSnapshot } from \"./storage.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\n\nexport type OpensteerStateSourceKind = \"temporary\" | \"persistent\" | \"attach\";\n\nexport type OpensteerReverseCaseStatus = \"capturing\" | \"analyzing\" | \"ready\" | \"attention\";\n\nexport type OpensteerReverseChannelKind = \"http\" | \"event-stream\" | \"websocket\";\n\nexport type OpensteerReverseManualCalibrationMode = \"allow\" | \"avoid\" | \"require\";\n\nexport type OpensteerReverseCandidateBoundary = \"first-party\" | \"same-site\" | \"third-party\";\n\nexport type OpensteerReverseAdvisoryTag =\n | \"data\"\n | \"facet\"\n | \"telemetry\"\n | \"subscription\"\n | \"navigation\"\n | \"document\"\n | \"route-data\"\n | \"search\"\n | \"tracking\"\n | \"unknown\";\n\nexport type OpensteerReverseConstraintKind =\n | \"requires-browser\"\n | \"requires-cookie\"\n | \"requires-storage\"\n | \"requires-script\"\n | \"requires-guard\"\n | \"requires-live-state\"\n | \"opaque-body\"\n | \"unsupported\";\n\nexport type OpensteerRequestInputLocation = \"path\" | \"query\" | \"header\" | \"cookie\" | \"body-field\";\n\nexport type OpensteerRequestInputRequiredness = \"required\" | \"optional\" | \"unknown\";\n\nexport type OpensteerRequestInputClassification = \"managed\" | \"static\" | \"contextual\" | \"volatile\";\n\nexport type OpensteerRequestInputSource =\n | \"literal\"\n | \"cookie\"\n | \"storage\"\n | \"prior-response\"\n | \"page\"\n | \"script\"\n | \"guard-output\"\n | \"runtime-managed\"\n | \"unknown\";\n\nexport type OpensteerRequestInputMaterializationPolicy = \"copy\" | \"omit\" | \"recompute\" | \"resolve\";\n\nexport type OpensteerRequestInputExportPolicy = \"portable\" | \"browser-bound\" | \"blocked\";\n\nexport type OpensteerReverseQueryView = \"records\" | \"clusters\" | \"candidates\";\n\nexport type OpensteerReverseSortKey =\n | \"observed-at\"\n | \"advisory-rank\"\n | \"target-hint-matches\"\n | \"response-richness\"\n | \"portability\"\n | \"boundary\"\n | \"success\";\n\nexport type OpensteerReverseSortPreset =\n | \"advisory-rank\"\n | \"observed-at\"\n | \"portability\"\n | \"first-party\"\n | \"hint-match\"\n | \"response-richness\";\n\nexport type OpensteerReverseSortDirection = \"asc\" | \"desc\";\n\nexport type OpensteerObservationClusterRelationshipKind =\n | \"seed\"\n | \"preflight\"\n | \"redirect\"\n | \"retry\"\n | \"duplicate\"\n | \"follow-on\";\n\nexport type OpensteerReversePackageKind = \"portable-http\" | \"browser-workflow\";\n\nexport type OpensteerReversePackageReadiness = \"runnable\" | \"draft\" | \"unsupported\";\n\nexport type OpensteerReverseReportKind = \"discovery\" | \"package\";\n\nexport type OpensteerBodyCodecKind =\n | \"json\"\n | \"form-urlencoded\"\n | \"multipart\"\n | \"graphql\"\n | \"persisted-graphql\"\n | \"text\"\n | \"opaque-binary\"\n | \"sse\"\n | \"websocket-json\"\n | \"websocket-text\"\n | \"unknown\";\n\nexport type OpensteerExecutableResolverKind =\n | \"literal\"\n | \"cookie\"\n | \"storage\"\n | \"prior-record\"\n | \"binding\"\n | \"candidate\"\n | \"case\"\n | \"state-snapshot\"\n | \"artifact\"\n | \"manual\"\n | \"runtime-managed\";\n\nexport type OpensteerValueReferenceKind =\n | \"literal\"\n | \"resolver\"\n | \"binding\"\n | \"candidate\"\n | \"case\"\n | \"record\"\n | \"artifact\"\n | \"state-snapshot\"\n | \"runtime\"\n | \"manual\";\n\nexport type OpensteerRuntimeValueKey =\n | \"pageRef\"\n | \"packageId\"\n | \"caseId\"\n | \"candidateId\"\n | \"objective\";\n\nexport type OpensteerValidationRuleKind =\n | \"status\"\n | \"json-structure\"\n | \"text-includes\"\n | \"stream-first-chunk\"\n | \"websocket-open\"\n | \"message-count-at-least\";\n\nexport type OpensteerReverseWorkflowStepKind = \"operation\" | \"await-record\" | \"assert\";\n\nexport type OpensteerReverseRequirementKind =\n | \"resolver\"\n | \"guard\"\n | \"workflow-step\"\n | \"state\"\n | \"channel\"\n | \"unsupported\";\n\nexport type OpensteerReverseRequirementStatus = \"required\" | \"recommended\";\n\nexport type OpensteerReverseSuggestedEditKind =\n | \"set-resolver\"\n | \"attach-trace\"\n | \"replace-workflow\"\n | \"patch-step-input\"\n | \"switch-state-source\"\n | \"inspect-evidence\"\n | \"mark-unsupported\";\n\nexport interface OpensteerValueReference {\n readonly kind: OpensteerValueReferenceKind;\n readonly pointer?: string;\n readonly resolverId?: string;\n readonly binding?: string;\n readonly recordId?: string;\n readonly artifactId?: string;\n readonly stateSnapshotId?: string;\n readonly runtimeKey?: OpensteerRuntimeValueKey;\n readonly value?: JsonValue;\n readonly placeholder?: string;\n}\n\nexport interface OpensteerValueReferenceEnvelope {\n readonly $ref: OpensteerValueReference;\n}\n\nexport interface OpensteerValueTemplateObject {\n readonly [key: string]: OpensteerValueTemplate;\n}\n\nexport type OpensteerValueTemplate =\n | JsonValue\n | OpensteerValueReferenceEnvelope\n | OpensteerValueTemplateObject\n | readonly OpensteerValueTemplate[];\n\nexport interface OpensteerReverseTargetHints {\n readonly hosts?: readonly string[];\n readonly paths?: readonly string[];\n readonly operationNames?: readonly string[];\n readonly channels?: readonly OpensteerReverseChannelKind[];\n}\n\nexport interface OpensteerBodyCodecDescriptor {\n readonly kind: OpensteerBodyCodecKind;\n readonly contentType?: string;\n readonly operationName?: string;\n readonly fieldPaths: readonly string[];\n}\n\nexport interface OpensteerObservationCluster {\n readonly id: string;\n readonly observationId: string;\n readonly label: string;\n readonly channel: OpensteerReverseChannelKind;\n readonly method?: string;\n readonly url: string;\n readonly matchedTargetHints: readonly string[];\n readonly members: readonly OpensteerObservationClusterMember[];\n}\n\nexport interface OpensteerObservationClusterMember {\n readonly recordId: string;\n readonly observedAt?: number;\n readonly resourceType?: string;\n readonly status?: number;\n readonly relation: OpensteerObservationClusterRelationshipKind;\n readonly relatedRecordId?: string;\n readonly matchedTargetHints: readonly string[];\n}\n\nexport interface OpensteerStateSnapshot {\n readonly id: string;\n readonly capturedAt: number;\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly cookies?: readonly {\n readonly name: string;\n readonly value: string;\n readonly domain: string;\n readonly path: string;\n readonly secure: boolean;\n readonly httpOnly: boolean;\n readonly sameSite?: \"strict\" | \"lax\" | \"none\";\n readonly priority?: \"low\" | \"medium\" | \"high\";\n readonly partitionKey?: string;\n readonly session: boolean;\n readonly expiresAt?: number | null;\n }[];\n readonly storage?: StorageSnapshot;\n readonly hiddenFields?: readonly {\n readonly path: string;\n readonly name: string;\n readonly value: string;\n }[];\n readonly globals?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerStateDelta {\n readonly beforeStateId?: string;\n readonly afterStateId?: string;\n readonly cookiesChanged: readonly string[];\n readonly storageChanged: readonly string[];\n readonly hiddenFieldsChanged: readonly string[];\n readonly globalsChanged: readonly string[];\n}\n\nexport interface OpensteerRequestInputDescriptor {\n readonly name: string;\n readonly location: OpensteerRequestInputLocation;\n readonly path?: string;\n readonly wireName?: string;\n readonly requiredness: OpensteerRequestInputRequiredness;\n readonly classification: OpensteerRequestInputClassification;\n readonly source: OpensteerRequestInputSource;\n readonly materializationPolicy: OpensteerRequestInputMaterializationPolicy;\n readonly exportPolicy: OpensteerRequestInputExportPolicy;\n readonly originalValue?: string;\n readonly provenance?: {\n readonly recordId?: string;\n readonly observationId?: string;\n readonly sourcePointer?: string;\n readonly notes?: string;\n };\n readonly unlockedByGuardIds?: readonly string[];\n}\n\nexport interface OpensteerExecutableResolver {\n readonly id: string;\n readonly kind: OpensteerExecutableResolverKind;\n readonly label: string;\n readonly status: \"ready\" | \"missing\";\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly description?: string;\n readonly inputNames?: readonly string[];\n readonly guardId?: string;\n readonly traceId?: string;\n readonly valueRef?: OpensteerValueReference;\n}\n\nexport interface OpensteerReverseAdvisorySignals {\n readonly advisoryRank: number;\n readonly observedAt?: number;\n readonly targetHintMatches: number;\n readonly responseRichness: number;\n readonly portabilityWeight: number;\n readonly boundaryWeight: number;\n readonly successfulStatus: boolean;\n readonly fetchLike: boolean;\n readonly hasResponseBody: boolean;\n readonly dataPathMatch: boolean;\n readonly cookieInputCount: number;\n readonly storageInputCount: number;\n readonly volatileInputCount: number;\n readonly guardCount: number;\n}\n\nexport interface OpensteerValidationRule {\n readonly id: string;\n readonly kind: OpensteerValidationRuleKind;\n readonly label: string;\n readonly required: boolean;\n readonly expectedStatus?: number;\n readonly structureHash?: string;\n readonly textIncludes?: string;\n readonly minimumCount?: number;\n}\n\nexport interface OpensteerReverseOperationWorkflowStep {\n readonly id: string;\n readonly kind: \"operation\";\n readonly label: string;\n readonly operation: OpensteerSemanticOperationName | string;\n readonly input: OpensteerValueTemplate;\n readonly bindAs?: string;\n}\n\nexport interface OpensteerReverseAwaitRecordMatch {\n readonly recordId?: string;\n readonly host?: string;\n readonly path?: string;\n readonly method?: string;\n readonly channel?: OpensteerReverseChannelKind;\n readonly status?: number;\n readonly text?: string;\n}\n\nexport interface OpensteerReverseAwaitRecordWorkflowStep {\n readonly id: string;\n readonly kind: \"await-record\";\n readonly label: string;\n readonly channel: OpensteerChannelDescriptor;\n readonly recordId?: string;\n readonly match?: OpensteerReverseAwaitRecordMatch;\n readonly validationRuleIds?: readonly string[];\n readonly timeoutMs?: number;\n readonly bindAs?: string;\n}\n\nexport interface OpensteerReverseAssertWorkflowStep {\n readonly id: string;\n readonly kind: \"assert\";\n readonly label: string;\n readonly validationRuleIds: readonly string[];\n readonly binding?: string;\n}\n\nexport type OpensteerReverseWorkflowStep =\n | OpensteerReverseOperationWorkflowStep\n | OpensteerReverseAwaitRecordWorkflowStep\n | OpensteerReverseAssertWorkflowStep;\n\nexport interface OpensteerReversePackageRequirements {\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly manualCalibration: \"not-needed\" | \"recommended\" | \"required\";\n readonly stateSources: readonly OpensteerStateSourceKind[];\n}\n\nexport interface OpensteerChannelDescriptor {\n readonly kind: OpensteerReverseChannelKind;\n readonly recordKind: \"http\" | \"event-stream\" | \"websocket\";\n readonly method?: string;\n readonly url: string;\n readonly subprotocol?: string;\n}\n\nexport interface OpensteerReverseAdvisoryTemplate {\n readonly id: string;\n readonly label: string;\n readonly channel: OpensteerReverseChannelKind;\n readonly execution: \"transport\" | \"page-observation\";\n readonly stateSource: OpensteerStateSourceKind;\n readonly observationId?: string;\n readonly transport?: TransportKind;\n readonly guardIds: readonly string[];\n readonly resolverIds: readonly string[];\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly viability: \"ready\" | \"draft\" | \"unsupported\";\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseGuardRecord {\n readonly id: string;\n readonly kind: \"interaction\" | \"state\" | \"script\" | \"manual\";\n readonly label: string;\n readonly status: \"required\" | \"satisfied\" | \"unresolved\";\n readonly interactionTraceId?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseObservationRecord {\n readonly id: string;\n readonly capturedAt: number;\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly stateSource: OpensteerStateSourceKind;\n readonly networkRecordIds: readonly string[];\n readonly scriptArtifactIds: readonly string[];\n readonly interactionTraceIds: readonly string[];\n readonly stateSnapshotIds: readonly string[];\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseCandidateRecord {\n readonly id: string;\n readonly observationId: string;\n readonly clusterId: string;\n readonly recordId: string;\n readonly channel: OpensteerChannelDescriptor;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly boundary: OpensteerReverseCandidateBoundary;\n readonly summary: string;\n readonly matchedTargetHints: readonly string[];\n readonly advisoryTags: readonly OpensteerReverseAdvisoryTag[];\n readonly constraints: readonly OpensteerReverseConstraintKind[];\n readonly signals: OpensteerReverseAdvisorySignals;\n readonly inputs: readonly OpensteerRequestInputDescriptor[];\n readonly resolvers: readonly OpensteerExecutableResolver[];\n readonly guardIds: readonly string[];\n readonly scriptArtifactIds: readonly string[];\n readonly advisoryTemplates: readonly OpensteerReverseAdvisoryTemplate[];\n}\n\nexport interface OpensteerReverseReplayValidation {\n readonly statusMatches?: boolean;\n readonly structureMatches?: boolean;\n readonly opened?: boolean;\n readonly firstChunkObserved?: boolean;\n readonly firstChunkMatches?: boolean;\n readonly messageObserved?: boolean;\n readonly messageCount?: number;\n}\n\nexport interface OpensteerReverseReplayRunRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly packageId: string;\n readonly success: boolean;\n readonly channel?: OpensteerReverseChannelKind;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly transport?: TransportKind;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly executedStepIds: readonly string[];\n readonly failedStepId?: string;\n readonly bindings?: Readonly<Record<string, JsonValue>>;\n readonly recordId?: string;\n readonly status?: number;\n readonly validation: OpensteerReverseReplayValidation;\n readonly error?: string;\n}\n\nexport interface OpensteerReverseExperimentRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly kind: \"replay-attempt\" | \"field-variation\";\n readonly hypothesis: string;\n readonly success: boolean;\n readonly status?: number;\n readonly notes?: string;\n readonly validation?: OpensteerReverseReplayValidation;\n}\n\nexport interface OpensteerReverseRequirement {\n readonly id: string;\n readonly kind: OpensteerReverseRequirementKind;\n readonly status: OpensteerReverseRequirementStatus;\n readonly label: string;\n readonly description?: string;\n readonly blocking: boolean;\n readonly resolverId?: string;\n readonly guardId?: string;\n readonly stepId?: string;\n readonly inputNames?: readonly string[];\n readonly traceId?: string;\n readonly artifactId?: string;\n readonly recordId?: string;\n}\n\nexport interface OpensteerReverseSuggestedEdit {\n readonly id: string;\n readonly kind: OpensteerReverseSuggestedEditKind;\n readonly label: string;\n readonly description?: string;\n readonly resolverId?: string;\n readonly guardId?: string;\n readonly stepId?: string;\n readonly traceId?: string;\n readonly artifactId?: string;\n readonly recordId?: string;\n readonly payload?: JsonValue;\n}\n\nexport interface OpensteerReverseExportRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly packageId: string;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly requestPlanId?: string;\n}\n\nexport interface OpensteerReverseCasePayload {\n readonly objective: string;\n readonly notes?: string;\n readonly status: OpensteerReverseCaseStatus;\n readonly stateSource: OpensteerStateSourceKind;\n readonly observations: readonly OpensteerReverseObservationRecord[];\n readonly observationClusters: readonly OpensteerObservationCluster[];\n readonly observedRecords: readonly OpensteerReverseObservedRecord[];\n readonly candidates: readonly OpensteerReverseCandidateRecord[];\n readonly guards: readonly OpensteerReverseGuardRecord[];\n readonly stateSnapshots: readonly OpensteerStateSnapshot[];\n readonly stateDeltas: readonly OpensteerStateDelta[];\n readonly experiments: readonly OpensteerReverseExperimentRecord[];\n readonly replayRuns: readonly OpensteerReverseReplayRunRecord[];\n readonly exports: readonly OpensteerReverseExportRecord[];\n}\n\nexport interface OpensteerReverseCaseRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReverseCasePayload;\n}\n\nexport interface OpensteerReversePackagePayload {\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly caseId: string;\n readonly objective: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly sourceRecordId: string;\n readonly candidateId?: string;\n readonly candidate?: OpensteerReverseCandidateRecord;\n readonly templateId?: string;\n readonly template?: OpensteerReverseAdvisoryTemplate;\n readonly channel?: OpensteerChannelDescriptor;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly observationId?: string;\n readonly transport?: TransportKind;\n readonly guardIds: readonly string[];\n readonly workflow: readonly OpensteerReverseWorkflowStep[];\n readonly resolvers: readonly OpensteerExecutableResolver[];\n readonly validators: readonly OpensteerValidationRule[];\n readonly stateSnapshots: readonly OpensteerStateSnapshot[];\n readonly requirements: OpensteerReversePackageRequirements;\n readonly requestPlanId?: string;\n readonly unresolvedRequirements: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits: readonly OpensteerReverseSuggestedEdit[];\n readonly attachedTraceIds: readonly string[];\n readonly attachedArtifactIds: readonly string[];\n readonly attachedRecordIds: readonly string[];\n readonly notes?: string;\n readonly parentPackageId?: string;\n}\n\nexport interface OpensteerReversePackageRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReversePackagePayload;\n}\n\nexport interface OpensteerReverseCandidateAdvisoryItem {\n readonly candidateId: string;\n readonly clusterId: string;\n readonly advisoryRank: number;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly summary: string;\n readonly advisoryTags: readonly OpensteerReverseAdvisoryTag[];\n readonly constraints: readonly OpensteerReverseConstraintKind[];\n readonly signals: OpensteerReverseAdvisorySignals;\n readonly reasons: readonly string[];\n}\n\nexport interface OpensteerReverseDiscoverySummaryCounts {\n readonly hosts: Readonly<Record<string, number>>;\n readonly channels: Readonly<Record<string, number>>;\n readonly resourceTypes: Readonly<Record<string, number>>;\n readonly advisoryTags: Readonly<Record<string, number>>;\n readonly constraints: Readonly<Record<string, number>>;\n readonly relationKinds: Readonly<Record<string, number>>;\n}\n\nexport interface OpensteerReverseReportPayload {\n readonly kind: OpensteerReverseReportKind;\n readonly caseId: string;\n readonly objective: string;\n readonly observations: readonly OpensteerReverseObservationRecord[];\n readonly observationClusters: readonly OpensteerObservationCluster[];\n readonly observedRecords: readonly OpensteerReverseObservedRecord[];\n readonly guards: readonly OpensteerReverseGuardRecord[];\n readonly stateDeltas: readonly OpensteerStateDelta[];\n readonly summaryCounts: OpensteerReverseDiscoverySummaryCounts;\n readonly candidateAdvisories: readonly OpensteerReverseCandidateAdvisoryItem[];\n readonly query?: OpensteerReverseQuerySnapshot;\n readonly experiments: readonly OpensteerReverseExperimentRecord[];\n readonly replayRuns: readonly OpensteerReverseReplayRunRecord[];\n readonly linkedNetworkRecordIds: readonly string[];\n readonly linkedInteractionTraceIds: readonly string[];\n readonly linkedArtifactIds: readonly string[];\n readonly linkedStateSnapshotIds: readonly string[];\n readonly packageId?: string;\n readonly packageKind?: OpensteerReversePackageKind;\n readonly packageReadiness?: OpensteerReversePackageReadiness;\n readonly unresolvedRequirements?: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits?: readonly OpensteerReverseSuggestedEdit[];\n readonly package?: OpensteerReversePackageRecord;\n}\n\nexport interface OpensteerReverseReportRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReverseReportPayload;\n}\n\nexport interface OpensteerReverseObservedRecord {\n readonly recordId: string;\n readonly observationId: string;\n readonly clusterId: string;\n readonly observedAt?: number;\n readonly channel: OpensteerChannelDescriptor;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly resourceType?: string;\n readonly status?: number;\n readonly matchedTargetHints: readonly string[];\n readonly relationKinds: readonly OpensteerObservationClusterRelationshipKind[];\n}\n\nexport interface OpensteerReverseQueryFilters {\n readonly recordId?: string;\n readonly clusterId?: string;\n readonly candidateId?: string;\n readonly host?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: string;\n readonly channel?: OpensteerReverseChannelKind;\n readonly boundary?: OpensteerReverseCandidateBoundary;\n readonly advisoryTag?: OpensteerReverseAdvisoryTag;\n readonly constraint?: OpensteerReverseConstraintKind;\n readonly bodyCodec?: OpensteerBodyCodecKind;\n readonly relationKind?: OpensteerObservationClusterRelationshipKind;\n readonly hasGuards?: boolean;\n readonly hasResolvers?: boolean;\n readonly artifactId?: string;\n readonly stateSnapshotId?: string;\n readonly traceId?: string;\n readonly evidenceRef?: string;\n readonly text?: string;\n}\n\nexport interface OpensteerReverseSortTerm {\n readonly key: OpensteerReverseSortKey;\n readonly direction?: OpensteerReverseSortDirection;\n}\n\nexport interface OpensteerReverseQuerySort {\n readonly preset?: OpensteerReverseSortPreset;\n readonly keys?: readonly OpensteerReverseSortTerm[];\n}\n\nexport interface OpensteerReverseQuerySnapshot {\n readonly view: OpensteerReverseQueryView;\n readonly filters?: OpensteerReverseQueryFilters;\n readonly sort: OpensteerReverseQuerySort;\n readonly limit: number;\n readonly totalCount: number;\n readonly nextCursor?: string;\n readonly resultIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryRecordItem {\n readonly record: OpensteerReverseObservedRecord;\n readonly candidateIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryClusterItem {\n readonly cluster: OpensteerObservationCluster;\n readonly candidateIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryCandidateItem {\n readonly candidate: OpensteerReverseCandidateRecord;\n readonly reasons: readonly string[];\n}\n\nexport interface OpensteerReverseDiscoverInput {\n readonly caseId?: string;\n readonly key?: string;\n readonly objective?: string;\n readonly notes?: string;\n readonly tags?: readonly string[];\n readonly pageRef?: PageRef;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly network?: {\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly resourceType?: string;\n readonly includeBodies?: boolean;\n };\n readonly includeScripts?: boolean;\n readonly includeStorage?: boolean;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n readonly interactionTraceIds?: readonly string[];\n readonly targetHints?: OpensteerReverseTargetHints;\n readonly captureWindowMs?: number;\n readonly manualCalibration?: OpensteerReverseManualCalibrationMode;\n}\n\nexport interface OpensteerReverseDiscoverOutput {\n readonly caseId: string;\n readonly reportId: string;\n readonly summary: {\n readonly observationIds: readonly string[];\n readonly recordCount: number;\n readonly clusterCount: number;\n readonly candidateCount: number;\n };\n readonly index: {\n readonly views: readonly OpensteerReverseQueryView[];\n readonly sortableKeys: readonly OpensteerReverseSortKey[];\n readonly channels: readonly OpensteerReverseChannelKind[];\n readonly hosts: readonly string[];\n readonly relationKinds: readonly OpensteerObservationClusterRelationshipKind[];\n };\n}\n\nexport interface OpensteerReverseQueryInput {\n readonly caseId: string;\n readonly view?: OpensteerReverseQueryView;\n readonly filters?: OpensteerReverseQueryFilters;\n readonly sort?: OpensteerReverseQuerySort;\n readonly limit?: number;\n readonly cursor?: string;\n}\n\nexport interface OpensteerReverseQueryOutput {\n readonly caseId: string;\n readonly view: OpensteerReverseQueryView;\n readonly query: OpensteerReverseQuerySnapshot;\n readonly totalCount: number;\n readonly nextCursor?: string;\n readonly records?: readonly OpensteerReverseQueryRecordItem[];\n readonly clusters?: readonly OpensteerReverseQueryClusterItem[];\n readonly candidates?: readonly OpensteerReverseQueryCandidateItem[];\n}\n\nexport interface OpensteerReversePackageCreateInput {\n readonly caseId: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly templateId?: string;\n readonly key?: string;\n readonly version?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerReversePackageCreateOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport interface OpensteerReversePackageRunInput {\n readonly packageId: string;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerReversePackageRunOutput {\n readonly packageId: string;\n readonly caseId?: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly success: boolean;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly channel?: OpensteerReverseChannelKind;\n readonly transport?: TransportKind;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly recordId?: string;\n readonly status?: number;\n readonly validation: OpensteerReverseReplayValidation;\n readonly executedStepIds: readonly string[];\n readonly failedStepId?: string;\n readonly bindings: Readonly<Record<string, JsonValue>>;\n readonly replayRunId?: string;\n readonly unresolvedRequirements: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits: readonly OpensteerReverseSuggestedEdit[];\n readonly error?: string;\n}\n\nexport interface OpensteerReverseExportInput {\n readonly packageId: string;\n readonly key?: string;\n readonly version?: string;\n}\n\nexport interface OpensteerReverseExportOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly requestPlan?: OpensteerRequestPlanRecord;\n}\n\nexport interface OpensteerReverseReportInput {\n readonly caseId?: string;\n readonly packageId?: string;\n readonly reportId?: string;\n readonly kind?: OpensteerReverseReportKind;\n}\n\nexport interface OpensteerReverseReportOutput {\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport interface OpensteerReversePackageGetInput {\n readonly packageId: string;\n}\n\nexport interface OpensteerReversePackageGetOutput {\n readonly package: OpensteerReversePackageRecord;\n}\n\nexport interface OpensteerReversePackageListInput {\n readonly caseId?: string;\n readonly key?: string;\n readonly kind?: OpensteerReversePackageKind;\n readonly readiness?: OpensteerReversePackageReadiness;\n}\n\nexport interface OpensteerReversePackageListOutput {\n readonly packages: readonly OpensteerReversePackageRecord[];\n}\n\nexport interface OpensteerReversePackagePatchInput {\n readonly packageId: string;\n readonly key?: string;\n readonly version?: string;\n readonly notes?: string;\n readonly workflow?: readonly OpensteerReverseWorkflowStep[];\n readonly resolvers?: readonly OpensteerExecutableResolver[];\n readonly validators?: readonly OpensteerValidationRule[];\n readonly attachedTraceIds?: readonly string[];\n readonly attachedArtifactIds?: readonly string[];\n readonly attachedRecordIds?: readonly string[];\n readonly stateSnapshotIds?: readonly string[];\n}\n\nexport interface OpensteerReversePackagePatchOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport const opensteerStateSourceKindSchema: JsonSchema = enumSchema(\n [\"temporary\", \"persistent\", \"attach\"] as const,\n { title: \"OpensteerStateSourceKind\" },\n);\n\nexport const opensteerReverseCaseStatusSchema: JsonSchema = enumSchema(\n [\"capturing\", \"analyzing\", \"ready\", \"attention\"] as const,\n { title: \"OpensteerReverseCaseStatus\" },\n);\n\nexport const opensteerReverseChannelKindSchema: JsonSchema = enumSchema(\n [\"http\", \"event-stream\", \"websocket\"] as const,\n { title: \"OpensteerReverseChannelKind\" },\n);\n\nexport const opensteerReverseManualCalibrationModeSchema: JsonSchema = enumSchema(\n [\"allow\", \"avoid\", \"require\"] as const,\n { title: \"OpensteerReverseManualCalibrationMode\" },\n);\n\nexport const opensteerReverseCandidateBoundarySchema: JsonSchema = enumSchema(\n [\"first-party\", \"same-site\", \"third-party\"] as const,\n { title: \"OpensteerReverseCandidateBoundary\" },\n);\n\nexport const opensteerReverseAdvisoryTagSchema: JsonSchema = enumSchema(\n [\n \"data\",\n \"facet\",\n \"telemetry\",\n \"subscription\",\n \"navigation\",\n \"document\",\n \"route-data\",\n \"search\",\n \"tracking\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerReverseAdvisoryTag\" },\n);\n\nexport const opensteerReverseConstraintKindSchema: JsonSchema = enumSchema(\n [\n \"requires-browser\",\n \"requires-cookie\",\n \"requires-storage\",\n \"requires-script\",\n \"requires-guard\",\n \"requires-live-state\",\n \"opaque-body\",\n \"unsupported\",\n ] as const,\n { title: \"OpensteerReverseConstraintKind\" },\n);\n\nexport const opensteerRequestInputLocationSchema: JsonSchema = enumSchema(\n [\"path\", \"query\", \"header\", \"cookie\", \"body-field\"] as const,\n { title: \"OpensteerRequestInputLocation\" },\n);\n\nexport const opensteerRequestInputRequirednessSchema: JsonSchema = enumSchema(\n [\"required\", \"optional\", \"unknown\"] as const,\n { title: \"OpensteerRequestInputRequiredness\" },\n);\n\nexport const opensteerRequestInputClassificationSchema: JsonSchema = enumSchema(\n [\"managed\", \"static\", \"contextual\", \"volatile\"] as const,\n { title: \"OpensteerRequestInputClassification\" },\n);\n\nexport const opensteerRequestInputSourceSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"cookie\",\n \"storage\",\n \"prior-response\",\n \"page\",\n \"script\",\n \"guard-output\",\n \"runtime-managed\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerRequestInputSource\" },\n);\n\nexport const opensteerRequestInputMaterializationPolicySchema: JsonSchema = enumSchema(\n [\"copy\", \"omit\", \"recompute\", \"resolve\"] as const,\n { title: \"OpensteerRequestInputMaterializationPolicy\" },\n);\n\nexport const opensteerRequestInputExportPolicySchema: JsonSchema = enumSchema(\n [\"portable\", \"browser-bound\", \"blocked\"] as const,\n { title: \"OpensteerRequestInputExportPolicy\" },\n);\n\nexport const opensteerReverseQueryViewSchema: JsonSchema = enumSchema(\n [\"records\", \"clusters\", \"candidates\"] as const,\n { title: \"OpensteerReverseQueryView\" },\n);\n\nexport const opensteerReverseSortKeySchema: JsonSchema = enumSchema(\n [\n \"observed-at\",\n \"advisory-rank\",\n \"target-hint-matches\",\n \"response-richness\",\n \"portability\",\n \"boundary\",\n \"success\",\n ] as const,\n { title: \"OpensteerReverseSortKey\" },\n);\n\nexport const opensteerReverseSortPresetSchema: JsonSchema = enumSchema(\n [\n \"advisory-rank\",\n \"observed-at\",\n \"portability\",\n \"first-party\",\n \"hint-match\",\n \"response-richness\",\n ] as const,\n { title: \"OpensteerReverseSortPreset\" },\n);\n\nexport const opensteerReverseSortDirectionSchema: JsonSchema = enumSchema(\n [\"asc\", \"desc\"] as const,\n {\n title: \"OpensteerReverseSortDirection\",\n },\n);\n\nexport const opensteerObservationClusterRelationshipKindSchema: JsonSchema = enumSchema(\n [\"seed\", \"preflight\", \"redirect\", \"retry\", \"duplicate\", \"follow-on\"] as const,\n { title: \"OpensteerObservationClusterRelationshipKind\" },\n);\n\nexport const opensteerReverseReportKindSchema: JsonSchema = enumSchema(\n [\"discovery\", \"package\"] as const,\n { title: \"OpensteerReverseReportKind\" },\n);\n\nexport const opensteerReversePackageKindSchema: JsonSchema = enumSchema(\n [\"portable-http\", \"browser-workflow\"] as const,\n { title: \"OpensteerReversePackageKind\" },\n);\n\nexport const opensteerReversePackageReadinessSchema: JsonSchema = enumSchema(\n [\"runnable\", \"draft\", \"unsupported\"] as const,\n { title: \"OpensteerReversePackageReadiness\" },\n);\n\nexport const opensteerBodyCodecKindSchema: JsonSchema = enumSchema(\n [\n \"json\",\n \"form-urlencoded\",\n \"multipart\",\n \"graphql\",\n \"persisted-graphql\",\n \"text\",\n \"opaque-binary\",\n \"sse\",\n \"websocket-json\",\n \"websocket-text\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerBodyCodecKind\" },\n);\n\nexport const opensteerExecutableResolverKindSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"cookie\",\n \"storage\",\n \"prior-record\",\n \"binding\",\n \"candidate\",\n \"case\",\n \"state-snapshot\",\n \"artifact\",\n \"manual\",\n \"runtime-managed\",\n ] as const,\n { title: \"OpensteerExecutableResolverKind\" },\n);\n\nexport const opensteerValueReferenceKindSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"resolver\",\n \"binding\",\n \"candidate\",\n \"case\",\n \"record\",\n \"artifact\",\n \"state-snapshot\",\n \"runtime\",\n \"manual\",\n ] as const,\n { title: \"OpensteerValueReferenceKind\" },\n);\n\nexport const opensteerRuntimeValueKeySchema: JsonSchema = enumSchema(\n [\"pageRef\", \"packageId\", \"caseId\", \"candidateId\", \"objective\"] as const,\n { title: \"OpensteerRuntimeValueKey\" },\n);\n\nexport const opensteerValidationRuleKindSchema: JsonSchema = enumSchema(\n [\n \"status\",\n \"json-structure\",\n \"text-includes\",\n \"stream-first-chunk\",\n \"websocket-open\",\n \"message-count-at-least\",\n ] as const,\n { title: \"OpensteerValidationRuleKind\" },\n);\n\nexport const opensteerReverseWorkflowStepKindSchema: JsonSchema = enumSchema(\n [\"operation\", \"await-record\", \"assert\"] as const,\n { title: \"OpensteerReverseWorkflowStepKind\" },\n);\n\nexport const opensteerReverseRequirementKindSchema: JsonSchema = enumSchema(\n [\"resolver\", \"guard\", \"workflow-step\", \"state\", \"channel\", \"unsupported\"] as const,\n { title: \"OpensteerReverseRequirementKind\" },\n);\n\nexport const opensteerReverseRequirementStatusSchema: JsonSchema = enumSchema(\n [\"required\", \"recommended\"] as const,\n { title: \"OpensteerReverseRequirementStatus\" },\n);\n\nexport const opensteerReverseSuggestedEditKindSchema: JsonSchema = enumSchema(\n [\n \"set-resolver\",\n \"attach-trace\",\n \"replace-workflow\",\n \"patch-step-input\",\n \"switch-state-source\",\n \"inspect-evidence\",\n \"mark-unsupported\",\n ] as const,\n { title: \"OpensteerReverseSuggestedEditKind\" },\n);\n\nconst jsonValueSchema: JsonSchema = defineSchema({\n title: \"JsonValue\",\n});\n\nexport const opensteerValueReferenceSchema: JsonSchema = objectSchema(\n {\n kind: opensteerValueReferenceKindSchema,\n pointer: stringSchema({ minLength: 1 }),\n resolverId: stringSchema({ minLength: 1 }),\n binding: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n runtimeKey: opensteerRuntimeValueKeySchema,\n value: jsonValueSchema,\n placeholder: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerValueReference\",\n required: [\"kind\"],\n },\n);\n\nexport const opensteerValueTemplateSchema: JsonSchema = defineSchema({\n title: \"OpensteerValueTemplate\",\n});\n\nexport const opensteerReverseTargetHintsSchema: JsonSchema = objectSchema(\n {\n hosts: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n paths: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n operationNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n channels: arraySchema(opensteerReverseChannelKindSchema, { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseTargetHints\",\n },\n);\n\nexport const opensteerBodyCodecDescriptorSchema: JsonSchema = objectSchema(\n {\n kind: opensteerBodyCodecKindSchema,\n contentType: stringSchema({ minLength: 1 }),\n operationName: stringSchema({ minLength: 1 }),\n fieldPaths: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerBodyCodecDescriptor\",\n required: [\"kind\", \"fieldPaths\"],\n },\n);\n\nexport const opensteerObservationClusterSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n members: arraySchema(\n objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observedAt: integerSchema({ minimum: 0 }),\n resourceType: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n relation: opensteerObservationClusterRelationshipKindSchema,\n relatedRecordId: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerObservationClusterMember\",\n required: [\"recordId\", \"relation\", \"matchedTargetHints\"],\n },\n ),\n ),\n },\n {\n title: \"OpensteerObservationCluster\",\n required: [\"id\", \"observationId\", \"label\", \"channel\", \"url\", \"matchedTargetHints\", \"members\"],\n },\n);\n\nconst opensteerStateSnapshotCookieSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n domain: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n secure: { type: \"boolean\" },\n httpOnly: { type: \"boolean\" },\n sameSite: enumSchema([\"strict\", \"lax\", \"none\"] as const),\n priority: enumSchema([\"low\", \"medium\", \"high\"] as const),\n partitionKey: stringSchema({ minLength: 1 }),\n session: { type: \"boolean\" },\n expiresAt: oneOfSchema([integerSchema({ minimum: 0 }), { type: \"null\" }]),\n },\n {\n title: \"OpensteerStateSnapshotCookie\",\n required: [\"name\", \"value\", \"domain\", \"path\", \"secure\", \"httpOnly\", \"session\"],\n },\n);\n\nexport const opensteerStateSnapshotSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n cookies: arraySchema(opensteerStateSnapshotCookieSchema),\n storage: storageSnapshotSchema,\n hiddenFields: arraySchema(\n objectSchema(\n {\n path: stringSchema({ minLength: 1 }),\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n },\n {\n title: \"OpensteerStateSnapshotHiddenField\",\n required: [\"path\", \"name\", \"value\"],\n },\n ),\n ),\n globals: recordSchema({}, { title: \"OpensteerStateSnapshotGlobals\" }),\n },\n {\n title: \"OpensteerStateSnapshot\",\n required: [\"id\", \"capturedAt\"],\n },\n);\n\nexport const opensteerStateDeltaSchema: JsonSchema = objectSchema(\n {\n beforeStateId: stringSchema({ minLength: 1 }),\n afterStateId: stringSchema({ minLength: 1 }),\n cookiesChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n storageChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n hiddenFieldsChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n globalsChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerStateDelta\",\n required: [\"cookiesChanged\", \"storageChanged\", \"hiddenFieldsChanged\", \"globalsChanged\"],\n },\n);\n\nexport const opensteerRequestInputDescriptorSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n location: opensteerRequestInputLocationSchema,\n path: stringSchema({ minLength: 1 }),\n wireName: stringSchema({ minLength: 1 }),\n requiredness: opensteerRequestInputRequirednessSchema,\n classification: opensteerRequestInputClassificationSchema,\n source: opensteerRequestInputSourceSchema,\n materializationPolicy: opensteerRequestInputMaterializationPolicySchema,\n exportPolicy: opensteerRequestInputExportPolicySchema,\n originalValue: stringSchema(),\n provenance: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n sourcePointer: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestInputDescriptorProvenance\",\n },\n ),\n unlockedByGuardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerRequestInputDescriptor\",\n required: [\n \"name\",\n \"location\",\n \"requiredness\",\n \"classification\",\n \"source\",\n \"materializationPolicy\",\n \"exportPolicy\",\n ],\n },\n);\n\nexport const opensteerExecutableResolverSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerExecutableResolverKindSchema,\n label: stringSchema({ minLength: 1 }),\n status: enumSchema([\"ready\", \"missing\"] as const),\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n inputNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n guardId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n valueRef: opensteerValueReferenceSchema,\n },\n {\n title: \"OpensteerExecutableResolver\",\n required: [\"id\", \"kind\", \"label\", \"status\", \"requiresBrowser\", \"requiresLiveState\"],\n },\n);\n\nexport const opensteerReverseAdvisorySignalsSchema: JsonSchema = objectSchema(\n {\n advisoryRank: numberSchema(),\n observedAt: integerSchema({ minimum: 0 }),\n targetHintMatches: integerSchema({ minimum: 0 }),\n responseRichness: integerSchema({ minimum: 0 }),\n portabilityWeight: integerSchema({ minimum: 0 }),\n boundaryWeight: integerSchema({ minimum: 0 }),\n successfulStatus: { type: \"boolean\" },\n fetchLike: { type: \"boolean\" },\n hasResponseBody: { type: \"boolean\" },\n dataPathMatch: { type: \"boolean\" },\n cookieInputCount: integerSchema({ minimum: 0 }),\n storageInputCount: integerSchema({ minimum: 0 }),\n volatileInputCount: integerSchema({ minimum: 0 }),\n guardCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseAdvisorySignals\",\n required: [\n \"advisoryRank\",\n \"targetHintMatches\",\n \"responseRichness\",\n \"portabilityWeight\",\n \"boundaryWeight\",\n \"successfulStatus\",\n \"fetchLike\",\n \"hasResponseBody\",\n \"dataPathMatch\",\n \"cookieInputCount\",\n \"storageInputCount\",\n \"volatileInputCount\",\n \"guardCount\",\n ],\n },\n);\n\nexport const opensteerValidationRuleSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerValidationRuleKindSchema,\n label: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n expectedStatus: integerSchema({ minimum: 0 }),\n structureHash: stringSchema({ minLength: 1 }),\n textIncludes: stringSchema({ minLength: 1 }),\n minimumCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerValidationRule\",\n required: [\"id\", \"kind\", \"label\", \"required\"],\n },\n);\n\nconst opensteerChannelDescriptorSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReverseChannelKindSchema,\n recordKind: networkRecordKindSchema,\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n subprotocol: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerChannelDescriptor\",\n required: [\"kind\", \"recordKind\", \"url\"],\n },\n);\n\nconst opensteerReverseOperationWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"operation\"] as const),\n label: stringSchema({ minLength: 1 }),\n operation: stringSchema({ minLength: 1 }),\n input: opensteerValueTemplateSchema,\n bindAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseOperationWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"operation\", \"input\"],\n },\n);\n\nconst opensteerReverseAwaitRecordWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"await-record\"] as const),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerChannelDescriptorSchema,\n recordId: stringSchema({ minLength: 1 }),\n match: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n status: integerSchema({ minimum: 0 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAwaitRecordMatch\",\n },\n ),\n validationRuleIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n timeoutMs: integerSchema({ minimum: 0 }),\n bindAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAwaitRecordWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"channel\"],\n },\n);\n\nconst opensteerReverseAssertWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"assert\"] as const),\n label: stringSchema({ minLength: 1 }),\n validationRuleIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n binding: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAssertWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"validationRuleIds\"],\n },\n);\n\nexport const opensteerReverseWorkflowStepSchema: JsonSchema = oneOfSchema(\n [\n opensteerReverseOperationWorkflowStepSchema,\n opensteerReverseAwaitRecordWorkflowStepSchema,\n opensteerReverseAssertWorkflowStepSchema,\n ],\n {\n title: \"OpensteerReverseWorkflowStep\",\n },\n);\n\nexport const opensteerReversePackageRequirementsSchema: JsonSchema = objectSchema(\n {\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n manualCalibration: enumSchema([\"not-needed\", \"recommended\", \"required\"] as const),\n stateSources: arraySchema(opensteerStateSourceKindSchema, { uniqueItems: true }),\n },\n {\n title: \"OpensteerReversePackageRequirements\",\n required: [\"requiresBrowser\", \"requiresLiveState\", \"manualCalibration\", \"stateSources\"],\n },\n);\n\nexport const opensteerReverseAdvisoryTemplateSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n execution: enumSchema([\"transport\", \"page-observation\"] as const),\n stateSource: opensteerStateSourceKindSchema,\n observationId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n resolverIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n viability: enumSchema([\"ready\", \"draft\", \"unsupported\"] as const),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAdvisoryTemplate\",\n required: [\n \"id\",\n \"label\",\n \"channel\",\n \"execution\",\n \"stateSource\",\n \"guardIds\",\n \"resolverIds\",\n \"requiresBrowser\",\n \"requiresLiveState\",\n \"viability\",\n ],\n },\n);\n\nexport const opensteerReverseGuardRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"interaction\", \"state\", \"script\", \"manual\"] as const),\n label: stringSchema({ minLength: 1 }),\n status: enumSchema([\"required\", \"satisfied\", \"unresolved\"] as const),\n interactionTraceId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseGuardRecord\",\n required: [\"id\", \"kind\", \"label\", \"status\"],\n },\n);\n\nexport const opensteerReverseObservationRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n stateSource: opensteerStateSourceKindSchema,\n networkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n scriptArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n interactionTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n stateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseObservationRecord\",\n required: [\n \"id\",\n \"capturedAt\",\n \"stateSource\",\n \"networkRecordIds\",\n \"scriptArtifactIds\",\n \"interactionTraceIds\",\n \"stateSnapshotIds\",\n ],\n },\n);\n\nexport const opensteerReverseObservedRecordSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n observedAt: integerSchema({ minimum: 0 }),\n channel: opensteerChannelDescriptorSchema,\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n resourceType: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n relationKinds: arraySchema(opensteerObservationClusterRelationshipKindSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerReverseObservedRecord\",\n required: [\n \"recordId\",\n \"observationId\",\n \"clusterId\",\n \"channel\",\n \"bodyCodec\",\n \"matchedTargetHints\",\n \"relationKinds\",\n ],\n },\n);\n\nexport const opensteerReverseCandidateRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n channel: opensteerChannelDescriptorSchema,\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n summary: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n advisoryTags: arraySchema(opensteerReverseAdvisoryTagSchema, { uniqueItems: true }),\n constraints: arraySchema(opensteerReverseConstraintKindSchema, { uniqueItems: true }),\n signals: opensteerReverseAdvisorySignalsSchema,\n inputs: arraySchema(opensteerRequestInputDescriptorSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n scriptArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n advisoryTemplates: arraySchema(opensteerReverseAdvisoryTemplateSchema),\n },\n {\n title: \"OpensteerReverseCandidateRecord\",\n required: [\n \"id\",\n \"observationId\",\n \"clusterId\",\n \"recordId\",\n \"channel\",\n \"bodyCodec\",\n \"boundary\",\n \"summary\",\n \"matchedTargetHints\",\n \"advisoryTags\",\n \"constraints\",\n \"signals\",\n \"inputs\",\n \"resolvers\",\n \"guardIds\",\n \"scriptArtifactIds\",\n \"advisoryTemplates\",\n ],\n },\n);\n\nexport const opensteerReverseReplayValidationSchema: JsonSchema = objectSchema(\n {\n statusMatches: { type: \"boolean\" },\n structureMatches: { type: \"boolean\" },\n opened: { type: \"boolean\" },\n firstChunkObserved: { type: \"boolean\" },\n firstChunkMatches: { type: \"boolean\" },\n messageObserved: { type: \"boolean\" },\n messageCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseReplayValidation\",\n },\n);\n\nexport const opensteerReverseReplayRunRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n channel: opensteerReverseChannelKindSchema,\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n transport: transportKindSchema,\n stateSource: opensteerStateSourceKindSchema,\n executedStepIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n failedStepId: stringSchema({ minLength: 1 }),\n bindings: recordSchema({}, { title: \"OpensteerReverseReplayRunBindings\" }),\n recordId: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n validation: opensteerReverseReplayValidationSchema,\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseReplayRunRecord\",\n required: [\n \"id\",\n \"createdAt\",\n \"packageId\",\n \"success\",\n \"kind\",\n \"readiness\",\n \"executedStepIds\",\n \"validation\",\n ],\n },\n);\n\nexport const opensteerReverseExperimentRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"replay-attempt\", \"field-variation\"] as const),\n hypothesis: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n status: integerSchema({ minimum: 0 }),\n notes: stringSchema({ minLength: 1 }),\n validation: opensteerReverseReplayValidationSchema,\n },\n {\n title: \"OpensteerReverseExperimentRecord\",\n required: [\"id\", \"createdAt\", \"kind\", \"hypothesis\", \"success\"],\n },\n);\n\nexport const opensteerReverseRequirementSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerReverseRequirementKindSchema,\n status: opensteerReverseRequirementStatusSchema,\n label: stringSchema({ minLength: 1 }),\n description: stringSchema({ minLength: 1 }),\n blocking: { type: \"boolean\" },\n resolverId: stringSchema({ minLength: 1 }),\n guardId: stringSchema({ minLength: 1 }),\n stepId: stringSchema({ minLength: 1 }),\n inputNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n traceId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseRequirement\",\n required: [\"id\", \"kind\", \"status\", \"label\", \"blocking\"],\n },\n);\n\nexport const opensteerReverseSuggestedEditSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerReverseSuggestedEditKindSchema,\n label: stringSchema({ minLength: 1 }),\n description: stringSchema({ minLength: 1 }),\n resolverId: stringSchema({ minLength: 1 }),\n guardId: stringSchema({ minLength: 1 }),\n stepId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n payload: jsonValueSchema,\n },\n {\n title: \"OpensteerReverseSuggestedEdit\",\n required: [\"id\", \"kind\", \"label\"],\n },\n);\n\nexport const opensteerReverseExportRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n requestPlanId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseExportRecord\",\n required: [\"id\", \"createdAt\", \"packageId\", \"kind\", \"readiness\"],\n },\n);\n\nexport const opensteerReverseCasePayloadSchema: JsonSchema = objectSchema(\n {\n objective: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n status: opensteerReverseCaseStatusSchema,\n stateSource: opensteerStateSourceKindSchema,\n observations: arraySchema(opensteerReverseObservationRecordSchema),\n observationClusters: arraySchema(opensteerObservationClusterSchema),\n observedRecords: arraySchema(opensteerReverseObservedRecordSchema),\n candidates: arraySchema(opensteerReverseCandidateRecordSchema),\n guards: arraySchema(opensteerReverseGuardRecordSchema),\n stateSnapshots: arraySchema(opensteerStateSnapshotSchema),\n stateDeltas: arraySchema(opensteerStateDeltaSchema),\n experiments: arraySchema(opensteerReverseExperimentRecordSchema),\n replayRuns: arraySchema(opensteerReverseReplayRunRecordSchema),\n exports: arraySchema(opensteerReverseExportRecordSchema),\n },\n {\n title: \"OpensteerReverseCasePayload\",\n required: [\n \"objective\",\n \"status\",\n \"stateSource\",\n \"observations\",\n \"observationClusters\",\n \"observedRecords\",\n \"candidates\",\n \"guards\",\n \"stateSnapshots\",\n \"stateDeltas\",\n \"experiments\",\n \"replayRuns\",\n \"exports\",\n ],\n },\n);\n\nexport const opensteerReverseCaseRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReverseCasePayloadSchema,\n },\n {\n title: \"OpensteerReverseCaseRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerReversePackagePayloadSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n caseId: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n sourceRecordId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n candidate: opensteerReverseCandidateRecordSchema,\n templateId: stringSchema({ minLength: 1 }),\n template: opensteerReverseAdvisoryTemplateSchema,\n channel: opensteerChannelDescriptorSchema,\n stateSource: opensteerStateSourceKindSchema,\n observationId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n workflow: arraySchema(opensteerReverseWorkflowStepSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n validators: arraySchema(opensteerValidationRuleSchema),\n stateSnapshots: arraySchema(opensteerStateSnapshotSchema),\n requirements: opensteerReversePackageRequirementsSchema,\n requestPlanId: stringSchema({ minLength: 1 }),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n attachedTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n notes: stringSchema({ minLength: 1 }),\n parentPackageId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackagePayload\",\n required: [\n \"kind\",\n \"readiness\",\n \"caseId\",\n \"objective\",\n \"source\",\n \"sourceRecordId\",\n \"guardIds\",\n \"workflow\",\n \"resolvers\",\n \"validators\",\n \"stateSnapshots\",\n \"requirements\",\n \"unresolvedRequirements\",\n \"suggestedEdits\",\n \"attachedTraceIds\",\n \"attachedArtifactIds\",\n \"attachedRecordIds\",\n ],\n },\n);\n\nexport const opensteerReversePackageRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReversePackagePayloadSchema,\n },\n {\n title: \"OpensteerReversePackageRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerReverseCandidateReportItemSchema: JsonSchema = objectSchema(\n {\n candidateId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n advisoryRank: numberSchema(),\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n summary: stringSchema({ minLength: 1 }),\n advisoryTags: arraySchema(opensteerReverseAdvisoryTagSchema, { uniqueItems: true }),\n constraints: arraySchema(opensteerReverseConstraintKindSchema, { uniqueItems: true }),\n signals: opensteerReverseAdvisorySignalsSchema,\n reasons: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerReverseCandidateAdvisoryItem\",\n required: [\n \"candidateId\",\n \"clusterId\",\n \"advisoryRank\",\n \"bodyCodec\",\n \"summary\",\n \"advisoryTags\",\n \"constraints\",\n \"signals\",\n \"reasons\",\n ],\n },\n);\n\nconst opensteerReverseDiscoverySummaryCountsSchema: JsonSchema = objectSchema(\n {\n hosts: recordSchema(integerSchema({ minimum: 0 }), { title: \"OpensteerReverseSummaryHosts\" }),\n channels: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryChannels\",\n }),\n resourceTypes: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryResourceTypes\",\n }),\n advisoryTags: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryAdvisoryTags\",\n }),\n constraints: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryConstraints\",\n }),\n relationKinds: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryRelationKinds\",\n }),\n },\n {\n title: \"OpensteerReverseDiscoverySummaryCounts\",\n required: [\n \"hosts\",\n \"channels\",\n \"resourceTypes\",\n \"advisoryTags\",\n \"constraints\",\n \"relationKinds\",\n ],\n },\n);\n\nexport const opensteerReverseReportPayloadSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReverseReportKindSchema,\n caseId: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n packageKind: opensteerReversePackageKindSchema,\n packageReadiness: opensteerReversePackageReadinessSchema,\n observations: arraySchema(opensteerReverseObservationRecordSchema),\n observationClusters: arraySchema(opensteerObservationClusterSchema),\n observedRecords: arraySchema(opensteerReverseObservedRecordSchema),\n guards: arraySchema(opensteerReverseGuardRecordSchema),\n stateDeltas: arraySchema(opensteerStateDeltaSchema),\n summaryCounts: opensteerReverseDiscoverySummaryCountsSchema,\n candidateAdvisories: arraySchema(opensteerReverseCandidateReportItemSchema),\n query: objectSchema(\n {\n view: opensteerReverseQueryViewSchema,\n filters: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n advisoryTag: opensteerReverseAdvisoryTagSchema,\n constraint: opensteerReverseConstraintKindSchema,\n bodyCodec: opensteerBodyCodecKindSchema,\n relationKind: opensteerObservationClusterRelationshipKindSchema,\n hasGuards: { type: \"boolean\" },\n hasResolvers: { type: \"boolean\" },\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n evidenceRef: stringSchema({ minLength: 1 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseReportQueryFilters\",\n },\n ),\n sort: objectSchema(\n {\n preset: opensteerReverseSortPresetSchema,\n keys: arraySchema(\n objectSchema(\n {\n key: opensteerReverseSortKeySchema,\n direction: opensteerReverseSortDirectionSchema,\n },\n {\n title: \"OpensteerReverseReportQuerySortTerm\",\n required: [\"key\"],\n },\n ),\n { minItems: 1 },\n ),\n },\n {\n title: \"OpensteerReverseReportQuerySort\",\n },\n ),\n limit: integerSchema({ minimum: 1 }),\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n resultIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQuerySnapshot\",\n required: [\"view\", \"sort\", \"limit\", \"totalCount\", \"resultIds\"],\n },\n ),\n experiments: arraySchema(opensteerReverseExperimentRecordSchema),\n replayRuns: arraySchema(opensteerReverseReplayRunRecordSchema),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n linkedNetworkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n linkedInteractionTraceIds: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n linkedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n linkedStateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n package: opensteerReversePackageRecordSchema,\n },\n {\n title: \"OpensteerReverseReportPayload\",\n required: [\n \"kind\",\n \"caseId\",\n \"objective\",\n \"observations\",\n \"observationClusters\",\n \"observedRecords\",\n \"guards\",\n \"stateDeltas\",\n \"summaryCounts\",\n \"candidateAdvisories\",\n \"experiments\",\n \"replayRuns\",\n \"linkedNetworkRecordIds\",\n \"linkedInteractionTraceIds\",\n \"linkedArtifactIds\",\n \"linkedStateSnapshotIds\",\n ],\n },\n);\n\nexport const opensteerReverseReportRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReverseReportPayloadSchema,\n },\n {\n title: \"OpensteerReverseReportRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst opensteerReverseNetworkFilterSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n includeBodies: { type: \"boolean\" },\n },\n {\n title: \"OpensteerReverseCaptureNetworkFilter\",\n },\n);\n\nconst opensteerReverseQueryFiltersSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n advisoryTag: opensteerReverseAdvisoryTagSchema,\n constraint: opensteerReverseConstraintKindSchema,\n bodyCodec: opensteerBodyCodecKindSchema,\n relationKind: opensteerObservationClusterRelationshipKindSchema,\n hasGuards: { type: \"boolean\" },\n hasResolvers: { type: \"boolean\" },\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n evidenceRef: stringSchema({ minLength: 1 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseQueryFilters\",\n },\n);\n\nconst opensteerReverseQuerySortSchema: JsonSchema = objectSchema(\n {\n preset: opensteerReverseSortPresetSchema,\n keys: arraySchema(\n objectSchema(\n {\n key: opensteerReverseSortKeySchema,\n direction: opensteerReverseSortDirectionSchema,\n },\n {\n title: \"OpensteerReverseSortTerm\",\n required: [\"key\"],\n },\n ),\n { minItems: 1 },\n ),\n },\n {\n title: \"OpensteerReverseQuerySort\",\n },\n);\n\nconst opensteerReverseQuerySnapshotSchema: JsonSchema = objectSchema(\n {\n view: opensteerReverseQueryViewSchema,\n filters: opensteerReverseQueryFiltersSchema,\n sort: opensteerReverseQuerySortSchema,\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n resultIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQuerySnapshot\",\n required: [\"view\", \"sort\", \"limit\", \"totalCount\", \"resultIds\"],\n },\n);\n\nconst opensteerReverseQueryRecordItemSchema: JsonSchema = objectSchema(\n {\n record: opensteerReverseObservedRecordSchema,\n candidateIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQueryRecordItem\",\n required: [\"record\", \"candidateIds\"],\n },\n);\n\nconst opensteerReverseQueryClusterItemSchema: JsonSchema = objectSchema(\n {\n cluster: opensteerObservationClusterSchema,\n candidateIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQueryClusterItem\",\n required: [\"cluster\", \"candidateIds\"],\n },\n);\n\nconst opensteerReverseQueryCandidateItemSchema: JsonSchema = objectSchema(\n {\n candidate: opensteerReverseCandidateRecordSchema,\n reasons: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerReverseQueryCandidateItem\",\n required: [\"candidate\", \"reasons\"],\n },\n);\n\nexport const opensteerReverseDiscoverInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n pageRef: pageRefSchema,\n stateSource: opensteerStateSourceKindSchema,\n network: opensteerReverseNetworkFilterSchema,\n includeScripts: { type: \"boolean\" },\n includeStorage: { type: \"boolean\" },\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n interactionTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n targetHints: opensteerReverseTargetHintsSchema,\n captureWindowMs: integerSchema({ minimum: 0 }),\n manualCalibration: opensteerReverseManualCalibrationModeSchema,\n },\n {\n title: \"OpensteerReverseDiscoverInput\",\n },\n);\n\nexport const opensteerReverseDiscoverOutputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n reportId: stringSchema({ minLength: 1 }),\n summary: objectSchema(\n {\n observationIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n recordCount: integerSchema({ minimum: 0 }),\n clusterCount: integerSchema({ minimum: 0 }),\n candidateCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseDiscoverSummary\",\n required: [\"observationIds\", \"recordCount\", \"clusterCount\", \"candidateCount\"],\n },\n ),\n index: objectSchema(\n {\n views: arraySchema(opensteerReverseQueryViewSchema, { uniqueItems: true }),\n sortableKeys: arraySchema(opensteerReverseSortKeySchema, { uniqueItems: true }),\n channels: arraySchema(opensteerReverseChannelKindSchema, { uniqueItems: true }),\n hosts: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n relationKinds: arraySchema(opensteerObservationClusterRelationshipKindSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerReverseDiscoverIndex\",\n required: [\"views\", \"sortableKeys\", \"channels\", \"hosts\", \"relationKinds\"],\n },\n ),\n },\n {\n title: \"OpensteerReverseDiscoverOutput\",\n required: [\"caseId\", \"reportId\", \"summary\", \"index\"],\n },\n);\n\nexport const opensteerReverseQueryInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n view: opensteerReverseQueryViewSchema,\n filters: opensteerReverseQueryFiltersSchema,\n sort: opensteerReverseQuerySortSchema,\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n cursor: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseQueryInput\",\n required: [\"caseId\"],\n },\n);\n\nexport const opensteerReverseQueryOutputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n view: opensteerReverseQueryViewSchema,\n query: opensteerReverseQuerySnapshotSchema,\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n records: arraySchema(opensteerReverseQueryRecordItemSchema),\n clusters: arraySchema(opensteerReverseQueryClusterItemSchema),\n candidates: arraySchema(opensteerReverseQueryCandidateItemSchema),\n },\n {\n title: \"OpensteerReverseQueryOutput\",\n required: [\"caseId\", \"view\", \"query\", \"totalCount\"],\n },\n);\n\nexport const opensteerReversePackageCreateInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageCreateSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n templateId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageCreateInput\",\n required: [\"caseId\", \"source\"],\n },\n);\n\nexport const opensteerReversePackageCreateOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReversePackageCreateOutput\",\n required: [\"package\", \"report\"],\n },\n);\n\nexport const opensteerReversePackageRunInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerReversePackageRunInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackageRunOutputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n caseId: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageRunSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n channel: opensteerReverseChannelKindSchema,\n transport: transportKindSchema,\n stateSource: opensteerStateSourceKindSchema,\n recordId: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n validation: opensteerReverseReplayValidationSchema,\n executedStepIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n failedStepId: stringSchema({ minLength: 1 }),\n bindings: recordSchema({}, { title: \"OpensteerReversePackageRunBindings\" }),\n replayRunId: stringSchema({ minLength: 1 }),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageRunOutput\",\n required: [\n \"packageId\",\n \"source\",\n \"success\",\n \"kind\",\n \"readiness\",\n \"validation\",\n \"executedStepIds\",\n \"bindings\",\n \"unresolvedRequirements\",\n \"suggestedEdits\",\n ],\n },\n);\n\nexport const opensteerReverseExportInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseExportInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReverseExportOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n requestPlan: opensteerRequestPlanRecordSchema,\n },\n {\n title: \"OpensteerReverseExportOutput\",\n required: [\"package\"],\n },\n);\n\nexport const opensteerReverseReportInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n reportId: stringSchema({ minLength: 1 }),\n kind: opensteerReverseReportKindSchema,\n },\n {\n title: \"OpensteerReverseReportInput\",\n },\n);\n\nexport const opensteerReverseReportOutputSchema: JsonSchema = objectSchema(\n {\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReverseReportOutput\",\n required: [\"report\"],\n },\n);\n\nexport const opensteerReversePackageGetInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageGetInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackageGetOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n },\n {\n title: \"OpensteerReversePackageGetOutput\",\n required: [\"package\"],\n },\n);\n\nexport const opensteerReversePackageListInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n },\n {\n title: \"OpensteerReversePackageListInput\",\n },\n);\n\nexport const opensteerReversePackageListOutputSchema: JsonSchema = objectSchema(\n {\n packages: arraySchema(opensteerReversePackageRecordSchema),\n },\n {\n title: \"OpensteerReversePackageListOutput\",\n required: [\"packages\"],\n },\n);\n\nexport const opensteerReversePackagePatchInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n workflow: arraySchema(opensteerReverseWorkflowStepSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n validators: arraySchema(opensteerValidationRuleSchema),\n attachedTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n stateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReversePackagePatchInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackagePatchOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReversePackagePatchOutput\",\n required: [\"package\", \"report\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n integerSchema,\n objectSchema,\n recordSchema,\n stringSchema,\n enumSchema,\n oneOfSchema,\n} from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport { opensteerRegistryProvenanceSchema, type OpensteerRegistryProvenance } from \"./requests.js\";\nimport {\n opensteerStateDeltaSchema,\n opensteerStateSnapshotSchema,\n type OpensteerStateDelta,\n type OpensteerStateSnapshot,\n} from \"./reverse.js\";\nimport type { JsonValue } from \"./json.js\";\nimport type { OpensteerTargetInput } from \"./semantic.js\";\n\nexport type OpensteerInteractionCaptureStep =\n | {\n readonly kind: \"goto\";\n readonly url: string;\n }\n | {\n readonly kind: \"click\";\n readonly target: OpensteerTargetInput;\n }\n | {\n readonly kind: \"hover\";\n readonly target: OpensteerTargetInput;\n }\n | {\n readonly kind: \"input\";\n readonly target: OpensteerTargetInput;\n readonly text: string;\n readonly pressEnter?: boolean;\n }\n | {\n readonly kind: \"scroll\";\n readonly target: OpensteerTargetInput;\n readonly direction: \"up\" | \"down\" | \"left\" | \"right\";\n readonly amount: number;\n }\n | {\n readonly kind: \"wait\";\n readonly durationMs: number;\n };\n\nexport interface OpensteerInteractionEventRecord {\n readonly type: string;\n readonly timestamp: number;\n readonly targetPath?: string;\n readonly properties: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerInteractionTracePayload {\n readonly mode: \"manual\" | \"automated\";\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly startedAt: number;\n readonly completedAt: number;\n readonly beforeState?: OpensteerStateSnapshot;\n readonly afterState?: OpensteerStateSnapshot;\n readonly stateDelta?: OpensteerStateDelta;\n readonly events: readonly OpensteerInteractionEventRecord[];\n readonly networkRecordIds: readonly string[];\n readonly caseId?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerInteractionTraceRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerInteractionTracePayload;\n}\n\nexport interface OpensteerInteractionCaptureInput {\n readonly key?: string;\n readonly pageRef?: PageRef;\n readonly durationMs?: number;\n readonly script?: string;\n readonly args?: readonly JsonValue[];\n readonly steps?: readonly OpensteerInteractionCaptureStep[];\n readonly includeStorage?: boolean;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n readonly globalNames?: readonly string[];\n readonly caseId?: string;\n readonly notes?: string;\n readonly tags?: readonly string[];\n}\n\nexport interface OpensteerInteractionCaptureOutput {\n readonly trace: OpensteerInteractionTraceRecord;\n}\n\nexport interface OpensteerInteractionGetInput {\n readonly traceId: string;\n}\n\nexport interface OpensteerInteractionGetOutput {\n readonly trace: OpensteerInteractionTraceRecord;\n}\n\nexport interface OpensteerInteractionDiffInput {\n readonly leftTraceId: string;\n readonly rightTraceId: string;\n}\n\nexport interface OpensteerInteractionDiffOutput {\n readonly summary: {\n readonly eventCountDelta: number;\n readonly propertyMismatchCount: number;\n readonly stateMismatchCount: number;\n readonly downstreamRequestMismatchCount: number;\n };\n readonly eventSequenceMismatches: readonly string[];\n readonly eventPropertyMismatches: readonly string[];\n readonly stateMismatches: readonly string[];\n readonly downstreamRequestMismatches: readonly string[];\n}\n\nexport interface OpensteerInteractionReplayInput {\n readonly traceId: string;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerInteractionReplayOutput {\n readonly traceId: string;\n readonly replayedEventCount: number;\n readonly success: boolean;\n readonly error?: string;\n}\n\nexport const opensteerInteractionEventRecordSchema: JsonSchema = objectSchema(\n {\n type: stringSchema({ minLength: 1 }),\n timestamp: integerSchema({ minimum: 0 }),\n targetPath: stringSchema({ minLength: 1 }),\n properties: objectSchema(\n {},\n {\n title: \"OpensteerInteractionEventProperties\",\n additionalProperties: true,\n },\n ),\n },\n {\n title: \"OpensteerInteractionEventRecord\",\n required: [\"type\", \"timestamp\", \"properties\"],\n },\n);\n\nexport const opensteerInteractionTracePayloadSchema: JsonSchema = objectSchema(\n {\n mode: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n startedAt: integerSchema({ minimum: 0 }),\n completedAt: integerSchema({ minimum: 0 }),\n beforeState: opensteerStateSnapshotSchema,\n afterState: opensteerStateSnapshotSchema,\n stateDelta: opensteerStateDeltaSchema,\n events: arraySchema(opensteerInteractionEventRecordSchema),\n networkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n caseId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionTracePayload\",\n required: [\"mode\", \"startedAt\", \"completedAt\", \"events\", \"networkRecordIds\"],\n },\n);\n\nexport const opensteerInteractionTraceRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerInteractionTracePayloadSchema,\n },\n {\n title: \"OpensteerInteractionTraceRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst targetByElementSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"element\"] as const),\n element: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionTargetByElement\",\n required: [\"kind\", \"element\"],\n },\n);\n\nconst targetByDescriptionSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"description\"] as const),\n description: stringSchema(),\n },\n {\n title: \"OpensteerInteractionTargetByDescription\",\n required: [\"kind\", \"description\"],\n },\n);\n\nconst targetBySelectorSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"selector\"] as const),\n selector: stringSchema(),\n },\n {\n title: \"OpensteerInteractionTargetBySelector\",\n required: [\"kind\", \"selector\"],\n },\n);\n\nconst opensteerInteractionTargetInputSchema: JsonSchema = oneOfSchema(\n [targetByElementSchema, targetByDescriptionSchema, targetBySelectorSchema],\n {\n title: \"OpensteerInteractionTargetInput\",\n },\n);\n\nconst opensteerInteractionCaptureStepSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n kind: enumSchema([\"goto\"] as const),\n url: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureGotoStep\",\n required: [\"kind\", \"url\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"click\"] as const),\n target: opensteerInteractionTargetInputSchema,\n },\n {\n title: \"OpensteerInteractionCaptureClickStep\",\n required: [\"kind\", \"target\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"hover\"] as const),\n target: opensteerInteractionTargetInputSchema,\n },\n {\n title: \"OpensteerInteractionCaptureHoverStep\",\n required: [\"kind\", \"target\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"input\"] as const),\n target: opensteerInteractionTargetInputSchema,\n text: stringSchema(),\n pressEnter: { type: \"boolean\" },\n },\n {\n title: \"OpensteerInteractionCaptureInputStep\",\n required: [\"kind\", \"target\", \"text\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"scroll\"] as const),\n target: opensteerInteractionTargetInputSchema,\n direction: enumSchema([\"up\", \"down\", \"left\", \"right\"] as const),\n amount: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureScrollStep\",\n required: [\"kind\", \"target\", \"direction\", \"amount\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"wait\"] as const),\n durationMs: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureWaitStep\",\n required: [\"kind\", \"durationMs\"],\n },\n ),\n ],\n {\n title: \"OpensteerInteractionCaptureStep\",\n },\n);\n\nexport const opensteerInteractionCaptureInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n durationMs: integerSchema({ minimum: 1 }),\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(defineSchema({ title: \"OpensteerInteractionCaptureArg\" })),\n steps: arraySchema(opensteerInteractionCaptureStepSchema, { minItems: 1 }),\n includeStorage: { type: \"boolean\" },\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n globalNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n caseId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerInteractionCaptureInput\",\n },\n);\n\nexport const opensteerInteractionCaptureOutputSchema: JsonSchema = objectSchema(\n {\n trace: opensteerInteractionTraceRecordSchema,\n },\n {\n title: \"OpensteerInteractionCaptureOutput\",\n required: [\"trace\"],\n },\n);\n\nexport const opensteerInteractionGetInputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionGetInput\",\n required: [\"traceId\"],\n },\n);\n\nexport const opensteerInteractionGetOutputSchema: JsonSchema = objectSchema(\n {\n trace: opensteerInteractionTraceRecordSchema,\n },\n {\n title: \"OpensteerInteractionGetOutput\",\n required: [\"trace\"],\n },\n);\n\nexport const opensteerInteractionDiffInputSchema: JsonSchema = objectSchema(\n {\n leftTraceId: stringSchema({ minLength: 1 }),\n rightTraceId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionDiffInput\",\n required: [\"leftTraceId\", \"rightTraceId\"],\n },\n);\n\nexport const opensteerInteractionDiffOutputSchema: JsonSchema = objectSchema(\n {\n summary: objectSchema(\n {\n eventCountDelta: integerSchema({ minimum: 0 }),\n propertyMismatchCount: integerSchema({ minimum: 0 }),\n stateMismatchCount: integerSchema({ minimum: 0 }),\n downstreamRequestMismatchCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerInteractionDiffSummary\",\n required: [\n \"eventCountDelta\",\n \"propertyMismatchCount\",\n \"stateMismatchCount\",\n \"downstreamRequestMismatchCount\",\n ],\n },\n ),\n eventSequenceMismatches: arraySchema(stringSchema({ minLength: 1 })),\n eventPropertyMismatches: arraySchema(stringSchema({ minLength: 1 })),\n stateMismatches: arraySchema(stringSchema({ minLength: 1 })),\n downstreamRequestMismatches: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerInteractionDiffOutput\",\n required: [\n \"summary\",\n \"eventSequenceMismatches\",\n \"eventPropertyMismatches\",\n \"stateMismatches\",\n \"downstreamRequestMismatches\",\n ],\n },\n);\n\nexport const opensteerInteractionReplayInputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerInteractionReplayInput\",\n required: [\"traceId\"],\n },\n);\n\nexport const opensteerInteractionReplayOutputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n replayedEventCount: integerSchema({ minimum: 0 }),\n success: { type: \"boolean\" },\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionReplayOutput\",\n required: [\"traceId\", \"replayedEventCount\", \"success\"],\n },\n);\n","import type { JsonSchema, JsonValue } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n numberSchema,\n} from \"./json.js\";\nimport { OpensteerProtocolError } from \"./errors.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n nodeRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type {\n DocumentEpoch,\n DocumentRef,\n FrameRef,\n NodeRef,\n PageRef,\n SessionRef,\n} from \"./identity.js\";\nimport { pointSchema, viewportMetricsSchema } from \"./geometry.js\";\nimport type { Point, ViewportMetrics } from \"./geometry.js\";\nimport { pageInfoSchema } from \"./metadata.js\";\nimport { opensteerEventSchema, type OpensteerEvent } from \"./events.js\";\nimport { requestEnvelopeSchema, responseEnvelopeSchema } from \"./envelopes.js\";\nimport {\n hitTestResultSchema,\n screenshotArtifactSchema,\n type HitTestResult,\n type ScreenshotArtifact,\n type ScreenshotFormat,\n} from \"./snapshots.js\";\nimport {\n cookieRecordSchema,\n storageSnapshotSchema,\n type CookieRecord,\n type StorageSnapshot,\n} from \"./storage.js\";\nimport type {\n OpensteerArtifactReadInput,\n OpensteerArtifactReadOutput,\n ScriptSourceArtifactData,\n} from \"./artifacts.js\";\nimport {\n opensteerArtifactReadInputSchema,\n opensteerArtifactReadOutputSchema,\n} from \"./artifacts.js\";\nimport {\n opensteerGetAuthRecipeInputSchema,\n opensteerListAuthRecipesInputSchema,\n opensteerListAuthRecipesOutputSchema,\n opensteerGetRequestPlanInputSchema,\n opensteerRunAuthRecipeInputSchema,\n opensteerRunAuthRecipeOutputSchema,\n opensteerListRequestPlansInputSchema,\n opensteerListRequestPlansOutputSchema,\n opensteerNetworkClearInputSchema,\n opensteerNetworkClearOutputSchema,\n opensteerNetworkQueryInputSchema,\n opensteerNetworkQueryOutputSchema,\n opensteerNetworkSaveInputSchema,\n opensteerNetworkSaveOutputSchema,\n opensteerInferRequestPlanInputSchema,\n opensteerRawRequestInputSchema,\n opensteerRawRequestOutputSchema,\n opensteerRequestExecuteInputSchema,\n opensteerRequestExecuteOutputSchema,\n opensteerAuthRecipeRecordSchema,\n opensteerRequestPlanRecordSchema,\n opensteerWriteAuthRecipeInputSchema,\n opensteerWriteRequestPlanInputSchema,\n type OpensteerGetAuthRecipeInput,\n type OpensteerGetRequestPlanInput,\n type OpensteerListAuthRecipesInput,\n type OpensteerListAuthRecipesOutput,\n type OpensteerListRequestPlansInput,\n type OpensteerListRequestPlansOutput,\n type OpensteerInferRequestPlanInput,\n type OpensteerNetworkClearInput,\n type OpensteerNetworkClearOutput,\n type OpensteerNetworkQueryInput,\n type OpensteerNetworkQueryOutput,\n type OpensteerNetworkSaveInput,\n type OpensteerNetworkSaveOutput,\n type OpensteerRawRequestInput,\n type OpensteerRawRequestOutput,\n type OpensteerRequestExecuteInput,\n type OpensteerRequestExecuteOutput,\n type OpensteerAuthRecipeRecord,\n type OpensteerRunAuthRecipeInput,\n type OpensteerRunAuthRecipeOutput,\n type OpensteerRequestPlanRecord,\n type TransportKind,\n type OpensteerWriteAuthRecipeInput,\n type OpensteerWriteRequestPlanInput,\n} from \"./requests.js\";\nimport {\n opensteerNetworkDiffInputSchema,\n opensteerNetworkDiffOutputSchema,\n type OpensteerNetworkDiffInput,\n type OpensteerNetworkDiffOutput,\n} from \"./diff.js\";\nimport {\n opensteerNetworkMinimizeInputSchema,\n opensteerNetworkMinimizeOutputSchema,\n type OpensteerNetworkMinimizeInput,\n type OpensteerNetworkMinimizeOutput,\n} from \"./minimize.js\";\nimport {\n opensteerTransportProbeInputSchema,\n opensteerTransportProbeOutputSchema,\n type OpensteerTransportProbeInput,\n type OpensteerTransportProbeOutput,\n} from \"./probe.js\";\nimport {\n opensteerScriptBeautifyInputSchema,\n opensteerScriptBeautifyOutputSchema,\n opensteerScriptDeobfuscateInputSchema,\n opensteerScriptDeobfuscateOutputSchema,\n opensteerScriptSandboxInputSchema,\n opensteerScriptSandboxOutputSchema,\n type OpensteerScriptBeautifyInput,\n type OpensteerScriptBeautifyOutput,\n type OpensteerScriptDeobfuscateInput,\n type OpensteerScriptDeobfuscateOutput,\n type OpensteerScriptSandboxInput,\n type OpensteerScriptSandboxOutput,\n} from \"./scripts.js\";\nimport {\n opensteerCaptchaSolveInputSchema,\n opensteerCaptchaSolveOutputSchema,\n type OpensteerCaptchaSolveInput,\n type OpensteerCaptchaSolveOutput,\n} from \"./captcha.js\";\nimport {\n opensteerReverseExportInputSchema,\n opensteerReverseExportOutputSchema,\n opensteerReverseDiscoverInputSchema,\n opensteerReverseDiscoverOutputSchema,\n opensteerReverseQueryInputSchema,\n opensteerReverseQueryOutputSchema,\n opensteerReversePackageCreateInputSchema,\n opensteerReversePackageCreateOutputSchema,\n opensteerReversePackageGetInputSchema,\n opensteerReversePackageGetOutputSchema,\n opensteerReversePackageListInputSchema,\n opensteerReversePackageListOutputSchema,\n opensteerReversePackagePatchInputSchema,\n opensteerReversePackagePatchOutputSchema,\n opensteerReversePackageRunInputSchema,\n opensteerReversePackageRunOutputSchema,\n opensteerReverseReportInputSchema,\n opensteerReverseReportOutputSchema,\n type OpensteerReverseDiscoverInput,\n type OpensteerReverseDiscoverOutput,\n type OpensteerReverseQueryInput,\n type OpensteerReverseQueryOutput,\n type OpensteerReversePackageCreateInput,\n type OpensteerReversePackageCreateOutput,\n type OpensteerReverseExportInput,\n type OpensteerReverseExportOutput,\n type OpensteerReversePackageGetInput,\n type OpensteerReversePackageGetOutput,\n type OpensteerReversePackageListInput,\n type OpensteerReversePackageListOutput,\n type OpensteerReversePackagePatchInput,\n type OpensteerReversePackagePatchOutput,\n type OpensteerReversePackageRunInput,\n type OpensteerReversePackageRunOutput,\n type OpensteerReverseReportInput,\n type OpensteerReverseReportOutput,\n} from \"./reverse.js\";\nimport {\n opensteerInteractionCaptureInputSchema,\n opensteerInteractionCaptureOutputSchema,\n opensteerInteractionDiffInputSchema,\n opensteerInteractionDiffOutputSchema,\n opensteerInteractionGetInputSchema,\n opensteerInteractionGetOutputSchema,\n opensteerInteractionReplayInputSchema,\n opensteerInteractionReplayOutputSchema,\n type OpensteerInteractionCaptureInput,\n type OpensteerInteractionCaptureOutput,\n type OpensteerInteractionDiffInput,\n type OpensteerInteractionDiffOutput,\n type OpensteerInteractionGetInput,\n type OpensteerInteractionGetOutput,\n type OpensteerInteractionReplayInput,\n type OpensteerInteractionReplayOutput,\n} from \"./interaction.js\";\nimport { validateJsonSchema } from \"./validation.js\";\nimport { OPENSTEER_PROTOCOL_REST_BASE_PATH } from \"./version.js\";\n\nexport type OpensteerSnapshotMode = \"action\" | \"extraction\";\n\nexport interface OpensteerBrowserLaunchOptions {\n readonly headless?: boolean;\n readonly executablePath?: string;\n readonly args?: readonly string[];\n readonly timeoutMs?: number;\n}\n\nexport interface OpensteerAttachBrowserOptions {\n readonly mode: \"attach\";\n readonly endpoint?: string;\n readonly headers?: Readonly<Record<string, string>>;\n readonly freshTab?: boolean;\n}\n\nexport type OpensteerBrowserMode = \"temporary\" | \"persistent\";\n\nexport type OpensteerBrowserOptions = OpensteerBrowserMode | OpensteerAttachBrowserOptions;\n\nexport interface OpensteerBrowserContextOptions {\n readonly ignoreHTTPSErrors?: boolean;\n readonly locale?: string;\n readonly timezoneId?: string;\n readonly userAgent?: string;\n readonly viewport?: {\n readonly width: number;\n readonly height: number;\n } | null;\n readonly javaScriptEnabled?: boolean;\n readonly bypassCSP?: boolean;\n readonly reducedMotion?: \"reduce\" | \"no-preference\";\n readonly colorScheme?: \"light\" | \"dark\" | \"no-preference\";\n readonly stealthProfile?: OpensteerStealthProfileInput;\n}\n\nexport interface OpensteerStealthProfileInput {\n readonly id?: string;\n readonly platform?: \"macos\" | \"windows\" | \"linux\";\n readonly browserBrand?: \"chrome\" | \"edge\";\n readonly browserVersion?: string;\n readonly userAgent?: string;\n readonly viewport?: {\n readonly width: number;\n readonly height: number;\n };\n readonly screenResolution?: {\n readonly width: number;\n readonly height: number;\n };\n readonly devicePixelRatio?: number;\n readonly maxTouchPoints?: number;\n readonly webglVendor?: string;\n readonly webglRenderer?: string;\n readonly fonts?: readonly string[];\n readonly canvasNoiseSeed?: number;\n readonly audioNoiseSeed?: number;\n readonly locale?: string;\n readonly timezoneId?: string;\n}\n\nexport interface OpensteerTargetByElement {\n readonly kind: \"element\";\n readonly element: number;\n}\n\nexport interface OpensteerTargetByDescription {\n readonly kind: \"description\";\n readonly description: string;\n}\n\nexport interface OpensteerTargetBySelector {\n readonly kind: \"selector\";\n readonly selector: string;\n}\n\nexport type OpensteerTargetInput =\n | OpensteerTargetByElement\n | OpensteerTargetByDescription\n | OpensteerTargetBySelector;\n\nexport interface OpensteerResolvedTarget {\n readonly pageRef: PageRef;\n readonly frameRef: FrameRef;\n readonly documentRef: DocumentRef;\n readonly documentEpoch: DocumentEpoch;\n readonly nodeRef: NodeRef;\n readonly tagName: string;\n readonly pathHint: string;\n readonly description?: string;\n readonly selectorUsed?: string;\n}\n\nexport interface OpensteerActionResult {\n readonly target: OpensteerResolvedTarget;\n readonly point?: {\n readonly x: number;\n readonly y: number;\n };\n readonly persistedDescription?: string;\n}\n\nexport interface OpensteerSnapshotCounter {\n readonly element: number;\n readonly pageRef: PageRef;\n readonly frameRef: FrameRef;\n readonly documentRef: DocumentRef;\n readonly documentEpoch: DocumentEpoch;\n readonly nodeRef?: NodeRef;\n readonly tagName: string;\n readonly pathHint: string;\n readonly text?: string;\n readonly attributes?: readonly {\n readonly name: string;\n readonly value: string;\n }[];\n readonly iframeDepth: number;\n readonly shadowDepth: number;\n readonly interactive: boolean;\n}\n\nexport interface OpensteerSessionState {\n readonly sessionRef: SessionRef;\n readonly pageRef: PageRef;\n readonly url: string;\n readonly title: string;\n}\n\nexport interface OpensteerOpenInput {\n readonly url?: string;\n readonly workspace?: string;\n readonly browser?: OpensteerBrowserOptions;\n readonly launch?: OpensteerBrowserLaunchOptions;\n readonly context?: OpensteerBrowserContextOptions;\n}\n\nexport interface OpensteerOpenOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageListInput {}\n\nexport interface OpensteerPageListOutput {\n readonly activePageRef?: PageRef;\n readonly pages: readonly import(\"./metadata.js\").PageInfo[];\n}\n\nexport interface OpensteerPageNewInput {\n readonly url?: string;\n readonly openerPageRef?: PageRef;\n}\n\nexport interface OpensteerPageNewOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageActivateInput {\n readonly pageRef: PageRef;\n}\n\nexport interface OpensteerPageActivateOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageCloseInput {\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerPageCloseOutput {\n readonly closedPageRef: PageRef;\n readonly activePageRef?: PageRef;\n readonly pages: readonly import(\"./metadata.js\").PageInfo[];\n}\n\nexport interface OpensteerPageGotoInput {\n readonly url: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerPageGotoOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageEvaluateInput {\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerPageEvaluateOutput {\n readonly pageRef: PageRef;\n readonly value: JsonValue;\n}\n\nexport interface OpensteerAddInitScriptInput {\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerAddInitScriptOutput {\n readonly registrationId: string;\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerCaptureScriptsInput {\n readonly pageRef?: PageRef;\n readonly includeInline?: boolean;\n readonly includeExternal?: boolean;\n readonly includeDynamic?: boolean;\n readonly includeWorkers?: boolean;\n readonly urlFilter?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerCapturedScript extends ScriptSourceArtifactData {\n readonly artifactId?: string;\n}\n\nexport interface OpensteerCaptureScriptsOutput {\n readonly pageRef: PageRef;\n readonly scripts: readonly OpensteerCapturedScript[];\n}\n\nexport interface OpensteerPageSnapshotInput {\n readonly mode?: OpensteerSnapshotMode;\n}\n\nexport interface OpensteerPageSnapshotOutput {\n readonly url: string;\n readonly title: string;\n readonly mode: OpensteerSnapshotMode;\n readonly html: string;\n readonly counters: readonly OpensteerSnapshotCounter[];\n}\n\nexport interface OpensteerInspectCookiesInput {\n readonly urls?: readonly string[];\n}\n\nexport interface OpensteerInspectStorageInput {\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n}\n\nexport interface OpensteerDomClickInput {\n readonly target: OpensteerTargetInput;\n readonly persistAsDescription?: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerDomHoverInput {\n readonly target: OpensteerTargetInput;\n readonly persistAsDescription?: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerDomInputInput {\n readonly target: OpensteerTargetInput;\n readonly text: string;\n readonly pressEnter?: boolean;\n readonly persistAsDescription?: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerDomScrollInput {\n readonly target: OpensteerTargetInput;\n readonly direction: \"up\" | \"down\" | \"left\" | \"right\";\n readonly amount: number;\n readonly persistAsDescription?: string;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerDomExtractInput {\n readonly description: string;\n readonly schema?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerDomExtractOutput {\n readonly data: JsonValue;\n}\n\nexport interface OpensteerSessionCloseInput {}\n\nexport interface OpensteerSessionCloseOutput {\n readonly closed: true;\n}\n\nexport const opensteerComputerAnnotationNames = [\n \"clickable\",\n \"typeable\",\n \"scrollable\",\n \"grid\",\n \"selected\",\n] as const;\n\nexport type OpensteerComputerAnnotation = (typeof opensteerComputerAnnotationNames)[number];\n\nexport type OpensteerComputerMouseButton = \"left\" | \"middle\" | \"right\";\nexport type OpensteerComputerKeyModifier = \"Shift\" | \"Control\" | \"Alt\" | \"Meta\";\n\nexport interface OpensteerComputerClickAction {\n readonly type: \"click\";\n readonly x: number;\n readonly y: number;\n readonly button?: OpensteerComputerMouseButton;\n readonly clickCount?: number;\n readonly modifiers?: readonly OpensteerComputerKeyModifier[];\n}\n\nexport interface OpensteerComputerMoveAction {\n readonly type: \"move\";\n readonly x: number;\n readonly y: number;\n}\n\nexport interface OpensteerComputerScrollAction {\n readonly type: \"scroll\";\n readonly x: number;\n readonly y: number;\n readonly deltaX: number;\n readonly deltaY: number;\n}\n\nexport interface OpensteerComputerTypeAction {\n readonly type: \"type\";\n readonly text: string;\n}\n\nexport interface OpensteerComputerKeyAction {\n readonly type: \"key\";\n readonly key: string;\n readonly modifiers?: readonly OpensteerComputerKeyModifier[];\n}\n\nexport interface OpensteerComputerDragAction {\n readonly type: \"drag\";\n readonly start: Point;\n readonly end: Point;\n readonly steps?: number;\n}\n\nexport interface OpensteerComputerScreenshotAction {\n readonly type: \"screenshot\";\n}\n\nexport interface OpensteerComputerWaitAction {\n readonly type: \"wait\";\n readonly durationMs: number;\n}\n\nexport type OpensteerComputerAction =\n | OpensteerComputerClickAction\n | OpensteerComputerMoveAction\n | OpensteerComputerScrollAction\n | OpensteerComputerTypeAction\n | OpensteerComputerKeyAction\n | OpensteerComputerDragAction\n | OpensteerComputerScreenshotAction\n | OpensteerComputerWaitAction;\n\nexport interface OpensteerComputerScreenshotOptions {\n readonly format?: ScreenshotFormat;\n readonly includeCursor?: boolean;\n readonly disableAnnotations?: readonly OpensteerComputerAnnotation[];\n}\n\nexport interface OpensteerComputerExecuteInput {\n readonly action: OpensteerComputerAction;\n readonly screenshot?: OpensteerComputerScreenshotOptions;\n readonly networkTag?: string;\n}\n\nexport interface OpensteerComputerDisplayScale {\n readonly x: number;\n readonly y: number;\n}\n\nexport interface OpensteerComputerTracePoint {\n readonly role: \"point\" | \"start\" | \"end\";\n readonly point: Point;\n readonly hitTest?: HitTestResult;\n readonly target?: OpensteerResolvedTarget;\n}\n\nexport interface OpensteerComputerTraceEnrichment {\n readonly points: readonly OpensteerComputerTracePoint[];\n}\n\nexport interface OpensteerComputerExecuteTiming {\n readonly actionMs: number;\n readonly waitMs: number;\n readonly totalMs: number;\n}\n\nexport interface OpensteerComputerExecuteOutput {\n readonly action: OpensteerComputerAction;\n readonly pageRef: PageRef;\n readonly screenshot: ScreenshotArtifact;\n readonly displayViewport: ViewportMetrics;\n readonly nativeViewport: ViewportMetrics;\n readonly displayScale: OpensteerComputerDisplayScale;\n readonly events: readonly OpensteerEvent[];\n readonly timing: OpensteerComputerExecuteTiming;\n readonly trace?: OpensteerComputerTraceEnrichment;\n}\n\nexport const opensteerSemanticOperationNames = [\n \"session.open\",\n \"page.list\",\n \"page.new\",\n \"page.activate\",\n \"page.close\",\n \"page.goto\",\n \"page.evaluate\",\n \"page.add-init-script\",\n \"page.snapshot\",\n \"dom.click\",\n \"dom.hover\",\n \"dom.input\",\n \"dom.scroll\",\n \"dom.extract\",\n \"network.query\",\n \"network.save\",\n \"network.clear\",\n \"network.minimize\",\n \"network.diff\",\n \"network.probe\",\n \"reverse.discover\",\n \"reverse.query\",\n \"reverse.package.create\",\n \"reverse.package.run\",\n \"reverse.export\",\n \"reverse.report\",\n \"reverse.package.get\",\n \"reverse.package.list\",\n \"reverse.package.patch\",\n \"interaction.capture\",\n \"interaction.get\",\n \"interaction.diff\",\n \"interaction.replay\",\n \"artifact.read\",\n \"inspect.cookies\",\n \"inspect.storage\",\n \"scripts.capture\",\n \"scripts.beautify\",\n \"scripts.deobfuscate\",\n \"scripts.sandbox\",\n \"captcha.solve\",\n \"request.raw\",\n \"request-plan.infer\",\n \"request-plan.write\",\n \"request-plan.get\",\n \"request-plan.list\",\n \"recipe.write\",\n \"recipe.get\",\n \"recipe.list\",\n \"recipe.run\",\n \"auth-recipe.write\",\n \"auth-recipe.get\",\n \"auth-recipe.list\",\n \"auth-recipe.run\",\n \"request.execute\",\n \"computer.execute\",\n \"session.close\",\n] as const;\n\nexport type OpensteerSemanticOperationName = (typeof opensteerSemanticOperationNames)[number];\n\nexport interface OpensteerSemanticOperationSpec<TInput = unknown, TOutput = unknown> {\n readonly name: OpensteerSemanticOperationName;\n readonly description: string;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly requiredCapabilities: readonly OpensteerCapability[];\n readonly packageRunnable?: boolean;\n resolveRequiredCapabilities?(input: TInput): readonly OpensteerCapability[];\n}\n\nexport interface OpensteerSemanticRestEndpointDescriptor {\n readonly name: OpensteerSemanticOperationName;\n readonly method: \"POST\";\n readonly path: string;\n readonly description: string;\n readonly requestSchema: JsonSchema;\n readonly responseSchema: JsonSchema;\n}\n\nfunction defineSemanticOperationSpec<TInput, TOutput>(\n spec: OpensteerSemanticOperationSpec<TInput, TOutput>,\n): OpensteerSemanticOperationSpec<TInput, TOutput> {\n return spec;\n}\n\nconst opensteerPackageRunnableSemanticOperationNames = new Set<OpensteerSemanticOperationName>([\n \"page.list\",\n \"page.new\",\n \"page.activate\",\n \"page.close\",\n \"page.goto\",\n \"page.evaluate\",\n \"page.add-init-script\",\n \"page.snapshot\",\n \"dom.click\",\n \"dom.hover\",\n \"dom.input\",\n \"dom.scroll\",\n \"dom.extract\",\n \"network.query\",\n \"network.save\",\n \"network.clear\",\n \"network.minimize\",\n \"network.diff\",\n \"network.probe\",\n \"interaction.capture\",\n \"interaction.get\",\n \"interaction.diff\",\n \"interaction.replay\",\n \"artifact.read\",\n \"inspect.cookies\",\n \"inspect.storage\",\n \"scripts.capture\",\n \"scripts.beautify\",\n \"scripts.deobfuscate\",\n \"scripts.sandbox\",\n \"captcha.solve\",\n \"request.raw\",\n \"request.execute\",\n \"computer.execute\",\n]);\n\nfunction resolveTransportRequiredCapabilities(\n transport: TransportKind | undefined,\n fallback: TransportKind,\n): readonly OpensteerCapability[] {\n switch (transport ?? fallback) {\n case \"direct-http\":\n return [];\n case \"matched-tls\":\n case \"context-http\":\n return [\"inspect.cookies\"];\n case \"page-http\":\n return [\"pages.manage\"];\n case \"session-http\":\n return [\"transport.sessionHttp\"];\n }\n}\n\nconst snapshotModeSchema: JsonSchema = enumSchema([\"action\", \"extraction\"] as const, {\n title: \"OpensteerSnapshotMode\",\n});\n\nconst viewportSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n width: integerSchema({ minimum: 1 }),\n height: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerViewport\",\n required: [\"width\", \"height\"],\n },\n ),\n literalSchema(null),\n ],\n {\n title: \"OpensteerViewportOrNull\",\n },\n);\n\nconst opensteerBrowserLaunchOptionsSchema: JsonSchema = objectSchema(\n {\n headless: { type: \"boolean\" },\n executablePath: stringSchema(),\n args: arraySchema(stringSchema()),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerBrowserLaunchOptions\",\n },\n);\n\nconst attachBrowserOptionsSchema: JsonSchema = objectSchema(\n {\n mode: enumSchema([\"attach\"] as const),\n endpoint: stringSchema(),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerAttachBrowserHeaders\",\n }),\n freshTab: { type: \"boolean\" },\n },\n {\n title: \"OpensteerAttachBrowserOptions\",\n required: [\"mode\"],\n },\n);\n\nconst opensteerBrowserOptionsSchema: JsonSchema = oneOfSchema(\n [enumSchema([\"temporary\", \"persistent\"] as const), attachBrowserOptionsSchema],\n {\n title: \"OpensteerBrowserOptions\",\n },\n);\n\nconst opensteerBrowserContextOptionsSchema: JsonSchema = objectSchema(\n {\n ignoreHTTPSErrors: { type: \"boolean\" },\n locale: stringSchema(),\n timezoneId: stringSchema(),\n userAgent: stringSchema(),\n viewport: viewportSchema,\n javaScriptEnabled: { type: \"boolean\" },\n bypassCSP: { type: \"boolean\" },\n reducedMotion: enumSchema([\"reduce\", \"no-preference\"] as const),\n colorScheme: enumSchema([\"light\", \"dark\", \"no-preference\"] as const),\n stealthProfile: objectSchema(\n {\n id: stringSchema(),\n platform: enumSchema([\"macos\", \"windows\", \"linux\"] as const),\n browserBrand: enumSchema([\"chrome\", \"edge\"] as const),\n browserVersion: stringSchema(),\n userAgent: stringSchema(),\n viewport: viewportSchema,\n screenResolution: viewportSchema,\n devicePixelRatio: { type: \"number\", minimum: 0.5 },\n maxTouchPoints: integerSchema({ minimum: 0 }),\n webglVendor: stringSchema(),\n webglRenderer: stringSchema(),\n fonts: arraySchema(stringSchema()),\n canvasNoiseSeed: integerSchema({ minimum: 0 }),\n audioNoiseSeed: integerSchema({ minimum: 0 }),\n locale: stringSchema(),\n timezoneId: stringSchema(),\n },\n {\n title: \"OpensteerStealthProfileInput\",\n },\n ),\n },\n {\n title: \"OpensteerBrowserContextOptions\",\n },\n);\n\nconst targetByElementSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"element\"] as const),\n element: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerTargetByElement\",\n required: [\"kind\", \"element\"],\n },\n);\n\nconst targetByDescriptionSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"description\"] as const),\n description: stringSchema(),\n },\n {\n title: \"OpensteerTargetByDescription\",\n required: [\"kind\", \"description\"],\n },\n);\n\nconst targetBySelectorSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"selector\"] as const),\n selector: stringSchema(),\n },\n {\n title: \"OpensteerTargetBySelector\",\n required: [\"kind\", \"selector\"],\n },\n);\n\nconst opensteerTargetInputSchema: JsonSchema = oneOfSchema(\n [targetByElementSchema, targetByDescriptionSchema, targetBySelectorSchema],\n {\n title: \"OpensteerTargetInput\",\n },\n);\n\nconst opensteerResolvedTargetSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n tagName: stringSchema(),\n pathHint: stringSchema(),\n description: stringSchema(),\n selectorUsed: stringSchema(),\n },\n {\n title: \"OpensteerResolvedTarget\",\n required: [\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"nodeRef\",\n \"tagName\",\n \"pathHint\",\n ],\n },\n);\n\nconst opensteerActionResultSchema: JsonSchema = objectSchema(\n {\n target: opensteerResolvedTargetSchema,\n point: pointSchema,\n persistedDescription: stringSchema(),\n },\n {\n title: \"OpensteerActionResult\",\n required: [\"target\"],\n },\n);\n\nconst opensteerSnapshotCounterSchema: JsonSchema = objectSchema(\n {\n element: integerSchema({ minimum: 1 }),\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n tagName: stringSchema(),\n pathHint: stringSchema(),\n text: stringSchema(),\n attributes: arraySchema(\n objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"OpensteerSnapshotCounterAttribute\",\n required: [\"name\", \"value\"],\n },\n ),\n ),\n iframeDepth: integerSchema({ minimum: 0 }),\n shadowDepth: integerSchema({ minimum: 0 }),\n interactive: { type: \"boolean\" },\n },\n {\n title: \"OpensteerSnapshotCounter\",\n required: [\n \"element\",\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"tagName\",\n \"pathHint\",\n \"iframeDepth\",\n \"shadowDepth\",\n \"interactive\",\n ],\n },\n);\n\nconst opensteerSessionStateSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n url: stringSchema(),\n title: stringSchema(),\n },\n {\n title: \"OpensteerSessionState\",\n required: [\"sessionRef\", \"pageRef\", \"url\", \"title\"],\n },\n);\n\nconst opensteerOpenInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n workspace: stringSchema(),\n browser: opensteerBrowserOptionsSchema,\n launch: opensteerBrowserLaunchOptionsSchema,\n context: opensteerBrowserContextOptionsSchema,\n },\n {\n title: \"OpensteerOpenInput\",\n },\n);\n\nconst opensteerPageListInputSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerPageListInput\",\n },\n);\n\nconst opensteerPageListOutputSchema: JsonSchema = objectSchema(\n {\n activePageRef: pageRefSchema,\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"OpensteerPageListOutput\",\n required: [\"pages\"],\n },\n);\n\nconst opensteerPageNewInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n openerPageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageNewInput\",\n },\n);\n\nconst opensteerPageActivateInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageActivateInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst opensteerPageCloseInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageCloseInput\",\n },\n);\n\nconst opensteerPageCloseOutputSchema: JsonSchema = objectSchema(\n {\n closedPageRef: pageRefSchema,\n activePageRef: pageRefSchema,\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"OpensteerPageCloseOutput\",\n required: [\"closedPageRef\", \"pages\"],\n },\n);\n\nconst opensteerPageGotoInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerPageGotoInput\",\n required: [\"url\"],\n },\n);\n\nconst opensteerPageEvaluateInputSchema: JsonSchema = objectSchema(\n {\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(\n defineSchema({\n title: \"JsonValue\",\n }),\n ),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageEvaluateInput\",\n required: [\"script\"],\n },\n);\n\nconst opensteerPageEvaluateOutputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n value: oneOfSchema(\n [\n defineSchema({\n title: \"JsonValue\",\n }),\n arraySchema({}),\n stringSchema(),\n numberSchema(),\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"OpensteerPageEvaluateValue\",\n },\n ),\n },\n {\n title: \"OpensteerPageEvaluateOutput\",\n required: [\"pageRef\", \"value\"],\n },\n);\n\nconst opensteerAddInitScriptInputSchema: JsonSchema = objectSchema(\n {\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(defineSchema({ title: \"OpensteerInitScriptArg\" })),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerAddInitScriptInput\",\n required: [\"script\"],\n },\n);\n\nconst opensteerAddInitScriptOutputSchema: JsonSchema = objectSchema(\n {\n registrationId: stringSchema({ minLength: 1 }),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerAddInitScriptOutput\",\n required: [\"registrationId\", \"sessionRef\"],\n },\n);\n\nconst opensteerCapturedScriptSchema: JsonSchema = objectSchema(\n {\n source: enumSchema([\"inline\", \"external\", \"dynamic\", \"worker\"] as const),\n url: stringSchema({ minLength: 1 }),\n type: stringSchema({ minLength: 1 }),\n hash: stringSchema({ minLength: 1 }),\n loadOrder: integerSchema({ minimum: 0 }),\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerCapturedScript\",\n required: [\"source\", \"hash\", \"loadOrder\", \"content\"],\n },\n);\n\nconst opensteerCaptureScriptsInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n includeInline: { type: \"boolean\" },\n includeExternal: { type: \"boolean\" },\n includeDynamic: { type: \"boolean\" },\n includeWorkers: { type: \"boolean\" },\n urlFilter: stringSchema({ minLength: 1 }),\n persist: { type: \"boolean\" },\n },\n {\n title: \"OpensteerCaptureScriptsInput\",\n },\n);\n\nconst opensteerCaptureScriptsOutputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n scripts: arraySchema(opensteerCapturedScriptSchema),\n },\n {\n title: \"OpensteerCaptureScriptsOutput\",\n required: [\"pageRef\", \"scripts\"],\n },\n);\n\nconst opensteerPageSnapshotInputSchema: JsonSchema = objectSchema(\n {\n mode: snapshotModeSchema,\n },\n {\n title: \"OpensteerPageSnapshotInput\",\n },\n);\n\nconst opensteerPageSnapshotOutputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n title: stringSchema(),\n mode: snapshotModeSchema,\n html: stringSchema(),\n counters: arraySchema(opensteerSnapshotCounterSchema),\n },\n {\n title: \"OpensteerPageSnapshotOutput\",\n required: [\"url\", \"title\", \"mode\", \"html\", \"counters\"],\n },\n);\n\nconst opensteerInspectCookiesInputSchema: JsonSchema = objectSchema(\n {\n urls: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerInspectCookiesInput\",\n },\n);\n\nconst opensteerInspectCookiesOutputSchema: JsonSchema = arraySchema(cookieRecordSchema, {\n title: \"OpensteerInspectCookiesOutput\",\n});\n\nconst opensteerInspectStorageInputSchema: JsonSchema = objectSchema(\n {\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n },\n {\n title: \"OpensteerInspectStorageInput\",\n },\n);\n\nconst opensteerDomClickInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n persistAsDescription: stringSchema(),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomClickInput\",\n required: [\"target\"],\n },\n);\n\nconst opensteerDomHoverInputSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n persistAsDescription: stringSchema(),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomHoverInput\",\n required: [\"target\"],\n },\n);\n\nconst opensteerDomInputInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n text: stringSchema(),\n pressEnter: { type: \"boolean\" },\n persistAsDescription: stringSchema(),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomInputInput\",\n required: [\"target\", \"text\"],\n },\n);\n\nconst opensteerDomScrollInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n direction: enumSchema([\"up\", \"down\", \"left\", \"right\"] as const),\n amount: integerSchema({ minimum: 1 }),\n persistAsDescription: stringSchema(),\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomScrollInput\",\n required: [\"target\", \"direction\", \"amount\"],\n },\n);\n\nconst opensteerExtractSchemaSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerExtractSchema\",\n additionalProperties: true,\n },\n);\n\nconst opensteerDomExtractInputSchema: JsonSchema = objectSchema(\n {\n description: stringSchema(),\n schema: opensteerExtractSchemaSchema,\n },\n {\n title: \"OpensteerDomExtractInput\",\n required: [\"description\"],\n },\n);\n\nconst jsonValueSchema: JsonSchema = recordSchema({}, { title: \"JsonValueRecord\" });\n\nconst opensteerDomExtractOutputSchema: JsonSchema = objectSchema(\n {\n data: oneOfSchema(\n [\n jsonValueSchema,\n arraySchema({}),\n stringSchema(),\n numberSchema(),\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"OpensteerExtractedJsonValue\",\n },\n ),\n },\n {\n title: \"OpensteerDomExtractOutput\",\n required: [\"data\"],\n },\n);\n\nconst opensteerSessionCloseInputSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerSessionCloseInput\",\n required: [],\n },\n);\n\nconst opensteerSessionCloseOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n },\n {\n title: \"OpensteerSessionCloseOutput\",\n required: [\"closed\"],\n },\n);\n\nconst opensteerComputerMouseButtonSchema: JsonSchema = enumSchema(\n [\"left\", \"middle\", \"right\"] as const,\n {\n title: \"OpensteerComputerMouseButton\",\n },\n);\n\nconst opensteerComputerKeyModifierSchema: JsonSchema = enumSchema(\n [\"Shift\", \"Control\", \"Alt\", \"Meta\"] as const,\n {\n title: \"OpensteerComputerKeyModifier\",\n },\n);\n\nconst opensteerComputerAnnotationSchema: JsonSchema = enumSchema(opensteerComputerAnnotationNames, {\n title: \"OpensteerComputerAnnotation\",\n});\n\nconst opensteerComputerClickActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"click\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n button: opensteerComputerMouseButtonSchema,\n clickCount: integerSchema({ minimum: 1 }),\n modifiers: arraySchema(opensteerComputerKeyModifierSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerClickAction\",\n required: [\"type\", \"x\", \"y\"],\n },\n);\n\nconst opensteerComputerMoveActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"move\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"OpensteerComputerMoveAction\",\n required: [\"type\", \"x\", \"y\"],\n },\n);\n\nconst opensteerComputerScrollActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"scroll\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n deltaX: numberSchema(),\n deltaY: numberSchema(),\n },\n {\n title: \"OpensteerComputerScrollAction\",\n required: [\"type\", \"x\", \"y\", \"deltaX\", \"deltaY\"],\n },\n);\n\nconst opensteerComputerTypeActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"type\"] as const),\n text: stringSchema(),\n },\n {\n title: \"OpensteerComputerTypeAction\",\n required: [\"type\", \"text\"],\n },\n);\n\nconst opensteerComputerKeyActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"key\"] as const),\n key: stringSchema(),\n modifiers: arraySchema(opensteerComputerKeyModifierSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerKeyAction\",\n required: [\"type\", \"key\"],\n },\n);\n\nconst opensteerComputerDragActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"drag\"] as const),\n start: pointSchema,\n end: pointSchema,\n steps: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerComputerDragAction\",\n required: [\"type\", \"start\", \"end\"],\n },\n);\n\nconst opensteerComputerScreenshotActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"screenshot\"] as const),\n },\n {\n title: \"OpensteerComputerScreenshotAction\",\n required: [\"type\"],\n },\n);\n\nconst opensteerComputerWaitActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"wait\"] as const),\n durationMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerComputerWaitAction\",\n required: [\"type\", \"durationMs\"],\n },\n);\n\nconst opensteerComputerActionSchema: JsonSchema = oneOfSchema(\n [\n opensteerComputerClickActionSchema,\n opensteerComputerMoveActionSchema,\n opensteerComputerScrollActionSchema,\n opensteerComputerTypeActionSchema,\n opensteerComputerKeyActionSchema,\n opensteerComputerDragActionSchema,\n opensteerComputerScreenshotActionSchema,\n opensteerComputerWaitActionSchema,\n ],\n {\n title: \"OpensteerComputerAction\",\n },\n);\n\nconst opensteerComputerScreenshotOptionsSchema: JsonSchema = objectSchema(\n {\n format: enumSchema([\"png\", \"jpeg\", \"webp\"] as const),\n includeCursor: { type: \"boolean\" },\n disableAnnotations: arraySchema(opensteerComputerAnnotationSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerScreenshotOptions\",\n },\n);\n\nconst opensteerComputerExecuteInputSchema: JsonSchema = objectSchema(\n {\n action: opensteerComputerActionSchema,\n screenshot: opensteerComputerScreenshotOptionsSchema,\n networkTag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerComputerExecuteInput\",\n required: [\"action\"],\n },\n);\n\nconst opensteerComputerTracePointSchema: JsonSchema = objectSchema(\n {\n role: enumSchema([\"point\", \"start\", \"end\"] as const),\n point: pointSchema,\n hitTest: hitTestResultSchema,\n target: opensteerResolvedTargetSchema,\n },\n {\n title: \"OpensteerComputerTracePoint\",\n required: [\"role\", \"point\"],\n },\n);\n\nconst opensteerComputerTraceEnrichmentSchema: JsonSchema = objectSchema(\n {\n points: arraySchema(opensteerComputerTracePointSchema),\n },\n {\n title: \"OpensteerComputerTraceEnrichment\",\n required: [\"points\"],\n },\n);\n\nconst opensteerComputerExecuteTimingSchema: JsonSchema = objectSchema(\n {\n actionMs: integerSchema({ minimum: 0 }),\n waitMs: integerSchema({ minimum: 0 }),\n totalMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerComputerExecuteTiming\",\n required: [\"actionMs\", \"waitMs\", \"totalMs\"],\n },\n);\n\nconst opensteerComputerDisplayScaleSchema: JsonSchema = objectSchema(\n {\n x: numberSchema({ exclusiveMinimum: 0 }),\n y: numberSchema({ exclusiveMinimum: 0 }),\n },\n {\n title: \"OpensteerComputerDisplayScale\",\n required: [\"x\", \"y\"],\n },\n);\n\nconst opensteerComputerExecuteOutputSchema: JsonSchema = objectSchema(\n {\n action: opensteerComputerActionSchema,\n pageRef: pageRefSchema,\n screenshot: screenshotArtifactSchema,\n displayViewport: viewportMetricsSchema,\n nativeViewport: viewportMetricsSchema,\n displayScale: opensteerComputerDisplayScaleSchema,\n events: arraySchema(opensteerEventSchema),\n timing: opensteerComputerExecuteTimingSchema,\n trace: opensteerComputerTraceEnrichmentSchema,\n },\n {\n title: \"OpensteerComputerExecuteOutput\",\n required: [\n \"action\",\n \"pageRef\",\n \"screenshot\",\n \"displayViewport\",\n \"nativeViewport\",\n \"displayScale\",\n \"events\",\n \"timing\",\n ],\n },\n);\n\nexport function resolveSemanticRequiredCapabilities<TInput>(\n spec: Pick<\n OpensteerSemanticOperationSpec<TInput, unknown>,\n \"requiredCapabilities\" | \"resolveRequiredCapabilities\"\n >,\n input: TInput,\n): readonly OpensteerCapability[] {\n return spec.resolveRequiredCapabilities?.(input) ?? spec.requiredCapabilities;\n}\n\nexport function assertValidSemanticOperationInput(\n name: OpensteerSemanticOperationName,\n input: unknown,\n): void {\n const spec = opensteerSemanticOperationSpecificationMap[name];\n const issues = validateJsonSchema(spec.inputSchema, input);\n if (issues.length === 0) {\n return;\n }\n\n const firstIssue = issues[0]!;\n throw new OpensteerProtocolError(\n \"invalid-request\",\n `invalid ${name} input at ${firstIssue.path}: ${firstIssue.message}`,\n {\n details: {\n operation: name,\n issues,\n },\n },\n );\n}\n\nconst opensteerSemanticOperationSpecificationsBase = [\n defineSemanticOperationSpec<OpensteerOpenInput, OpensteerOpenOutput>({\n name: \"session.open\",\n description: \"Open or resume the current Opensteer session and primary page.\",\n inputSchema: opensteerOpenInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"sessions.manage\", \"pages.manage\"],\n resolveRequiredCapabilities: (input) =>\n input.url === undefined\n ? [\"sessions.manage\", \"pages.manage\"]\n : [\"sessions.manage\", \"pages.manage\", \"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageListInput, OpensteerPageListOutput>({\n name: \"page.list\",\n description: \"List top-level pages for the current Opensteer session.\",\n inputSchema: opensteerPageListInputSchema,\n outputSchema: opensteerPageListOutputSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageNewInput, OpensteerPageNewOutput>({\n name: \"page.new\",\n description: \"Create and optionally navigate a new top-level page in the current session.\",\n inputSchema: opensteerPageNewInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.manage\"],\n resolveRequiredCapabilities: (input) =>\n input.url === undefined ? [\"pages.manage\"] : [\"pages.manage\", \"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageActivateInput, OpensteerPageActivateOutput>({\n name: \"page.activate\",\n description: \"Activate an existing top-level page in the current session.\",\n inputSchema: opensteerPageActivateInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageCloseInput, OpensteerPageCloseOutput>({\n name: \"page.close\",\n description: \"Close a top-level page in the current session.\",\n inputSchema: opensteerPageCloseInputSchema,\n outputSchema: opensteerPageCloseOutputSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageGotoInput, OpensteerPageGotoOutput>({\n name: \"page.goto\",\n description: \"Navigate the current Opensteer page to a new URL.\",\n inputSchema: opensteerPageGotoInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageEvaluateInput, OpensteerPageEvaluateOutput>({\n name: \"page.evaluate\",\n description: \"Execute JavaScript in the live page context and return a structured result.\",\n inputSchema: opensteerPageEvaluateInputSchema,\n outputSchema: opensteerPageEvaluateOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerAddInitScriptInput, OpensteerAddInitScriptOutput>({\n name: \"page.add-init-script\",\n description: \"Register a script that runs before page scripts in the current browser session.\",\n inputSchema: opensteerAddInitScriptInputSchema,\n outputSchema: opensteerAddInitScriptOutputSchema,\n requiredCapabilities: [\"instrumentation.initScripts\"],\n }),\n defineSemanticOperationSpec<OpensteerPageSnapshotInput, OpensteerPageSnapshotOutput>({\n name: \"page.snapshot\",\n description: \"Compile an HTML-first agent snapshot for the current page.\",\n inputSchema: opensteerPageSnapshotInputSchema,\n outputSchema: opensteerPageSnapshotOutputSchema,\n requiredCapabilities: [\"inspect.pages\", \"inspect.html\", \"inspect.domSnapshot\"],\n }),\n defineSemanticOperationSpec<OpensteerDomClickInput, OpensteerActionResult>({\n name: \"dom.click\",\n description: \"Resolve and click a DOM target using Opensteer semantics.\",\n inputSchema: opensteerDomClickInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomHoverInput, OpensteerActionResult>({\n name: \"dom.hover\",\n description: \"Resolve and hover a DOM target using Opensteer semantics.\",\n inputSchema: opensteerDomHoverInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomInputInput, OpensteerActionResult>({\n name: \"dom.input\",\n description: \"Resolve a DOM target, focus it, and type text through Opensteer semantics.\",\n inputSchema: opensteerDomInputInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\n \"input.pointer\",\n \"input.keyboard\",\n \"inspect.domSnapshot\",\n \"inspect.hitTest\",\n ],\n }),\n defineSemanticOperationSpec<OpensteerDomScrollInput, OpensteerActionResult>({\n name: \"dom.scroll\",\n description:\n \"Resolve a DOM target and dispatch directional scrolling through Opensteer semantics.\",\n inputSchema: opensteerDomScrollInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomExtractInput, OpensteerDomExtractOutput>({\n name: \"dom.extract\",\n description: \"Run structured DOM extraction with persisted Opensteer extraction descriptors.\",\n inputSchema: opensteerDomExtractInputSchema,\n outputSchema: opensteerDomExtractOutputSchema,\n requiredCapabilities: [\"inspect.domSnapshot\", \"inspect.text\", \"inspect.attributes\"],\n }),\n defineSemanticOperationSpec<OpensteerNetworkQueryInput, OpensteerNetworkQueryOutput>({\n name: \"network.query\",\n description: \"Query live or saved network records for reverse engineering workflows.\",\n inputSchema: opensteerNetworkQueryInputSchema,\n outputSchema: opensteerNetworkQueryOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) =>\n input.source === \"saved\"\n ? []\n : input.includeBodies === true\n ? [\"inspect.network\", \"inspect.networkBodies\"]\n : [\"inspect.network\"],\n }),\n defineSemanticOperationSpec<OpensteerNetworkSaveInput, OpensteerNetworkSaveOutput>({\n name: \"network.save\",\n description:\n \"Persist filtered live network records into the saved network registry under a tag.\",\n inputSchema: opensteerNetworkSaveInputSchema,\n outputSchema: opensteerNetworkSaveOutputSchema,\n requiredCapabilities: [\"inspect.network\"],\n }),\n defineSemanticOperationSpec<OpensteerNetworkClearInput, OpensteerNetworkClearOutput>({\n name: \"network.clear\",\n description: \"Clear saved network records globally or for a specific tag.\",\n inputSchema: opensteerNetworkClearInputSchema,\n outputSchema: opensteerNetworkClearOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerNetworkMinimizeInput, OpensteerNetworkMinimizeOutput>({\n name: \"network.minimize\",\n description:\n \"Minimize a saved captured request by identifying the smallest viable header, cookie, query, and body-field set.\",\n inputSchema: opensteerNetworkMinimizeInputSchema,\n outputSchema: opensteerNetworkMinimizeOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) =>\n resolveTransportRequiredCapabilities(input.transport, \"session-http\"),\n }),\n defineSemanticOperationSpec<OpensteerNetworkDiffInput, OpensteerNetworkDiffOutput>({\n name: \"network.diff\",\n description:\n \"Compare two captured requests and responses field-by-field with entropy analysis for likely encrypted values.\",\n inputSchema: opensteerNetworkDiffInputSchema,\n outputSchema: opensteerNetworkDiffOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerTransportProbeInput, OpensteerTransportProbeOutput>({\n name: \"network.probe\",\n description:\n \"Probe a captured request across transport layers and recommend the lightest working execution path.\",\n inputSchema: opensteerTransportProbeInputSchema,\n outputSchema: opensteerTransportProbeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseDiscoverInput, OpensteerReverseDiscoverOutput>({\n name: \"reverse.discover\",\n description:\n \"Capture and index a bounded reverse-engineering observation window, then return the case handle, summary, report id, and query metadata only.\",\n inputSchema: opensteerReverseDiscoverInputSchema,\n outputSchema: opensteerReverseDiscoverOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseQueryInput, OpensteerReverseQueryOutput>({\n name: \"reverse.query\",\n description:\n \"Query a cached reverse case with deterministic filters and explicit sort keys or preset shortcuts over records, clusters, or candidates.\",\n inputSchema: opensteerReverseQueryInputSchema,\n outputSchema: opensteerReverseQueryOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<\n OpensteerReversePackageCreateInput,\n OpensteerReversePackageCreateOutput\n >({\n name: \"reverse.package.create\",\n description:\n \"Create an explicit reverse package draft from a chosen observed record or advisory candidate, with an optional advisory template.\",\n inputSchema: opensteerReversePackageCreateInputSchema,\n outputSchema: opensteerReversePackageCreateOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageRunInput, OpensteerReversePackageRunOutput>({\n name: \"reverse.package.run\",\n description:\n \"Run a reverse package draft through its operation, await-record, and assertion steps, returning executed bindings and first failure details.\",\n inputSchema: opensteerReversePackageRunInputSchema,\n outputSchema: opensteerReversePackageRunOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseExportInput, OpensteerReverseExportOutput>({\n name: \"reverse.export\",\n description:\n \"Export or clone a reverse-engineering package, including a request plan when the package is portable.\",\n inputSchema: opensteerReverseExportInputSchema,\n outputSchema: opensteerReverseExportOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseReportInput, OpensteerReverseReportOutput>({\n name: \"reverse.report\",\n description:\n \"Read an evidence-centered discovery report or a draft-centered package report, including linked evidence, replay attempts, and advisory suggestions.\",\n inputSchema: opensteerReverseReportInputSchema,\n outputSchema: opensteerReverseReportOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageGetInput, OpensteerReversePackageGetOutput>({\n name: \"reverse.package.get\",\n description:\n \"Read a standalone reverse-engineering package so an agent can inspect its workflow, resolvers, requirements, and linked evidence.\",\n inputSchema: opensteerReversePackageGetInputSchema,\n outputSchema: opensteerReversePackageGetOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageListInput, OpensteerReversePackageListOutput>({\n name: \"reverse.package.list\",\n description: \"List reverse-engineering packages by case, key, kind, or readiness.\",\n inputSchema: opensteerReversePackageListInputSchema,\n outputSchema: opensteerReversePackageListOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<\n OpensteerReversePackagePatchInput,\n OpensteerReversePackagePatchOutput\n >({\n name: \"reverse.package.patch\",\n description:\n \"Write a new immutable reverse-engineering package revision by patching editable workflow, resolver, validator, and evidence sections.\",\n inputSchema: opensteerReversePackagePatchInputSchema,\n outputSchema: opensteerReversePackagePatchOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionCaptureInput, OpensteerInteractionCaptureOutput>({\n name: \"interaction.capture\",\n description:\n \"Capture a guarded interaction window, including event properties, state changes, and downstream network.\",\n inputSchema: opensteerInteractionCaptureInputSchema,\n outputSchema: opensteerInteractionCaptureOutputSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.cookies\", \"inspect.localStorage\"],\n }),\n defineSemanticOperationSpec<OpensteerInteractionGetInput, OpensteerInteractionGetOutput>({\n name: \"interaction.get\",\n description:\n \"Read a captured interaction trace by ID for package inspection, diffing, and replay editing.\",\n inputSchema: opensteerInteractionGetInputSchema,\n outputSchema: opensteerInteractionGetOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionDiffInput, OpensteerInteractionDiffOutput>({\n name: \"interaction.diff\",\n description:\n \"Compare two captured interaction traces by event sequence, event properties, state deltas, and downstream network.\",\n inputSchema: opensteerInteractionDiffInputSchema,\n outputSchema: opensteerInteractionDiffOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionReplayInput, OpensteerInteractionReplayOutput>({\n name: \"interaction.replay\",\n description:\n \"Replay a captured interaction trace against a live page and report how many events were reproduced.\",\n inputSchema: opensteerInteractionReplayInputSchema,\n outputSchema: opensteerInteractionReplayOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerArtifactReadInput, OpensteerArtifactReadOutput>({\n name: \"artifact.read\",\n description:\n \"Read a persisted artifact by ID so agents can inspect captured scripts, storage, cookies, or snapshots linked from reverse packages and reports.\",\n inputSchema: opensteerArtifactReadInputSchema,\n outputSchema: opensteerArtifactReadOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerCaptureScriptsInput, OpensteerCaptureScriptsOutput>({\n name: \"scripts.capture\",\n description: \"Capture inline and external script sources from the current page and run.\",\n inputSchema: opensteerCaptureScriptsInputSchema,\n outputSchema: opensteerCaptureScriptsOutputSchema,\n requiredCapabilities: [\"inspect.html\", \"inspect.network\", \"inspect.networkBodies\"],\n }),\n defineSemanticOperationSpec<OpensteerScriptBeautifyInput, OpensteerScriptBeautifyOutput>({\n name: \"scripts.beautify\",\n description:\n \"Beautify captured or inline JavaScript through Prettier and optionally persist the transformed artifact.\",\n inputSchema: opensteerScriptBeautifyInputSchema,\n outputSchema: opensteerScriptBeautifyOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerScriptDeobfuscateInput, OpensteerScriptDeobfuscateOutput>({\n name: \"scripts.deobfuscate\",\n description:\n \"Deobfuscate captured or inline JavaScript through webcrack and optionally persist the transformed artifact.\",\n inputSchema: opensteerScriptDeobfuscateInputSchema,\n outputSchema: opensteerScriptDeobfuscateOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerScriptSandboxInput, OpensteerScriptSandboxOutput>({\n name: \"scripts.sandbox\",\n description:\n \"Execute captured or inline JavaScript inside a controlled VM sandbox with browser-style shims and AJAX interception.\",\n inputSchema: opensteerScriptSandboxInputSchema,\n outputSchema: opensteerScriptSandboxOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerCaptchaSolveInput, OpensteerCaptchaSolveOutput>({\n name: \"captcha.solve\",\n description:\n \"Detect, solve, and inject a supported CAPTCHA token into the current page through a pluggable solver provider.\",\n inputSchema: opensteerCaptchaSolveInputSchema,\n outputSchema: opensteerCaptchaSolveOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerInspectCookiesInput, readonly CookieRecord[]>({\n name: \"inspect.cookies\",\n description: \"Read cookies from the current browser session.\",\n inputSchema: opensteerInspectCookiesInputSchema,\n outputSchema: opensteerInspectCookiesOutputSchema,\n requiredCapabilities: [\"inspect.cookies\"],\n }),\n defineSemanticOperationSpec<OpensteerInspectStorageInput, StorageSnapshot>({\n name: \"inspect.storage\",\n description: \"Read browser storage state from the current browser session.\",\n inputSchema: opensteerInspectStorageInputSchema,\n outputSchema: storageSnapshotSchema,\n requiredCapabilities: [\"inspect.localStorage\"],\n resolveRequiredCapabilities: (input) => {\n const capabilities: OpensteerCapability[] = [\"inspect.localStorage\"];\n if (input.includeSessionStorage ?? false) {\n capabilities.push(\"inspect.sessionStorage\");\n }\n if (input.includeIndexedDb ?? false) {\n capabilities.push(\"inspect.indexedDb\");\n }\n return capabilities;\n },\n }),\n defineSemanticOperationSpec<OpensteerRawRequestInput, OpensteerRawRequestOutput>({\n name: \"request.raw\",\n description:\n \"Execute a raw HTTP request through either the current browser session or a direct HTTP transport.\",\n inputSchema: opensteerRawRequestInputSchema,\n outputSchema: opensteerRawRequestOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) =>\n resolveTransportRequiredCapabilities(input.transport, \"context-http\"),\n }),\n defineSemanticOperationSpec<OpensteerInferRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.infer\",\n description: \"Infer and persist a request plan from a selected network record.\",\n inputSchema: opensteerInferRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.write\",\n description: \"Validate and persist a reusable request plan in the local registry.\",\n inputSchema: opensteerWriteRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.get\",\n description: \"Resolve a request plan by key and optional version.\",\n inputSchema: opensteerGetRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListRequestPlansInput, OpensteerListRequestPlansOutput>({\n name: \"request-plan.list\",\n description: \"List request plans from the local registry.\",\n inputSchema: opensteerListRequestPlansInputSchema,\n outputSchema: opensteerListRequestPlansOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"recipe.write\",\n description: \"Validate and persist a reusable recipe in the local registry.\",\n inputSchema: opensteerWriteAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"recipe.get\",\n description: \"Resolve a recipe by key and optional version.\",\n inputSchema: opensteerGetAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListAuthRecipesInput, OpensteerListAuthRecipesOutput>({\n name: \"recipe.list\",\n description: \"List recipes from the local registry.\",\n inputSchema: opensteerListAuthRecipesInputSchema,\n outputSchema: opensteerListAuthRecipesOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRunAuthRecipeInput, OpensteerRunAuthRecipeOutput>({\n name: \"recipe.run\",\n description: \"Run a stored recipe deterministically against the current runtime.\",\n inputSchema: opensteerRunAuthRecipeInputSchema,\n outputSchema: opensteerRunAuthRecipeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"auth-recipe.write\",\n description: \"Validate and persist a reusable auth recovery recipe in the local registry.\",\n inputSchema: opensteerWriteAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"auth-recipe.get\",\n description: \"Resolve an auth recipe by key and optional version.\",\n inputSchema: opensteerGetAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListAuthRecipesInput, OpensteerListAuthRecipesOutput>({\n name: \"auth-recipe.list\",\n description: \"List auth recovery recipes from the local registry.\",\n inputSchema: opensteerListAuthRecipesInputSchema,\n outputSchema: opensteerListAuthRecipesOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRunAuthRecipeInput, OpensteerRunAuthRecipeOutput>({\n name: \"auth-recipe.run\",\n description: \"Run a stored auth recovery recipe deterministically against the current runtime.\",\n inputSchema: opensteerRunAuthRecipeInputSchema,\n outputSchema: opensteerRunAuthRecipeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRequestExecuteInput, OpensteerRequestExecuteOutput>({\n name: \"request.execute\",\n description:\n \"Execute a request plan through its configured transport and deterministic auth recovery policy.\",\n inputSchema: opensteerRequestExecuteInputSchema,\n outputSchema: opensteerRequestExecuteOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerComputerExecuteInput, OpensteerComputerExecuteOutput>({\n name: \"computer.execute\",\n description:\n \"Execute a computer-use action in canonical computer-display-css coordinates and return the post-action screenshot in that same model-visible space.\",\n inputSchema: opensteerComputerExecuteInputSchema,\n outputSchema: opensteerComputerExecuteOutputSchema,\n requiredCapabilities: [\"artifacts.screenshot\", \"inspect.viewportMetrics\"],\n resolveRequiredCapabilities: (input) => {\n const base: OpensteerCapability[] = [\"artifacts.screenshot\", \"inspect.viewportMetrics\"];\n switch (input.action.type) {\n case \"click\":\n if ((input.action.modifiers?.length ?? 0) > 0) {\n base.unshift(\"input.keyboard\");\n }\n base.unshift(\"input.pointer\");\n break;\n case \"move\":\n case \"scroll\":\n case \"drag\":\n base.unshift(\"input.pointer\");\n break;\n case \"type\":\n case \"key\":\n base.unshift(\"input.keyboard\");\n break;\n case \"screenshot\":\n case \"wait\":\n break;\n }\n return base;\n },\n }),\n defineSemanticOperationSpec<OpensteerSessionCloseInput, OpensteerSessionCloseOutput>({\n name: \"session.close\",\n description: \"Close the current Opensteer session and release browser resources.\",\n inputSchema: opensteerSessionCloseInputSchema,\n outputSchema: opensteerSessionCloseOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n] as const satisfies readonly OpensteerSemanticOperationSpec[];\n\nexport const opensteerSemanticOperationSpecifications =\n opensteerSemanticOperationSpecificationsBase.map((spec) => ({\n ...spec,\n packageRunnable: opensteerPackageRunnableSemanticOperationNames.has(spec.name),\n })) as readonly OpensteerSemanticOperationSpec[];\n\nexport const opensteerSemanticOperationSpecificationMap = Object.fromEntries(\n opensteerSemanticOperationSpecifications.map((spec) => [spec.name, spec]),\n) as Record<OpensteerSemanticOperationName, OpensteerSemanticOperationSpec>;\n\nconst semanticRestBasePath = `${OPENSTEER_PROTOCOL_REST_BASE_PATH}/semantic`;\n\nexport const opensteerSemanticRestEndpoints: readonly OpensteerSemanticRestEndpointDescriptor[] =\n opensteerSemanticOperationSpecifications.map((spec) => ({\n name: spec.name,\n method: \"POST\",\n path: `${semanticRestBasePath}/operations/${spec.name.replaceAll(\".\", \"/\")}`,\n description: spec.description,\n requestSchema: requestEnvelopeSchema(spec.inputSchema, spec.name),\n responseSchema: responseEnvelopeSchema(spec.outputSchema, spec.name),\n }));\n","import type { JsonObject, JsonSchema } from \"./json.js\";\nimport {\n opensteerSemanticOperationSpecifications,\n type OpensteerSemanticOperationName,\n} from \"./semantic.js\";\n\nexport interface OpensteerMcpToolAnnotations {\n readonly readOnlyHint?: boolean;\n readonly destructiveHint?: boolean;\n readonly idempotentHint?: boolean;\n readonly openWorldHint?: boolean;\n}\n\nexport interface OpensteerMcpToolDescriptor {\n readonly name: string;\n readonly title: string;\n readonly description: string;\n readonly operation: OpensteerSemanticOperationName;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly annotations?: OpensteerMcpToolAnnotations;\n}\n\nexport interface OpensteerMcpTextContent {\n readonly type: \"text\";\n readonly text: string;\n}\n\nexport interface OpensteerMcpImageContent {\n readonly type: \"image\";\n readonly data: string;\n readonly mimeType: string;\n}\n\nexport type OpensteerMcpContent = OpensteerMcpTextContent | OpensteerMcpImageContent;\n\nexport interface OpensteerMcpToolResult<TStructured extends JsonObject = JsonObject> {\n readonly structuredContent: TStructured;\n readonly content?: readonly OpensteerMcpContent[];\n readonly isError?: boolean;\n}\n\nconst readOnlyOperations = new Set<OpensteerSemanticOperationName>([\n \"page.snapshot\",\n \"dom.extract\",\n \"network.query\",\n \"request-plan.get\",\n \"request-plan.list\",\n]);\n\nconst destructiveOperations = new Set<OpensteerSemanticOperationName>([\n \"network.clear\",\n \"session.close\",\n]);\n\nfunction toolNameFromOperation(operation: OpensteerSemanticOperationName): string {\n return `opensteer_${operation.replaceAll(\".\", \"_\").replaceAll(\"-\", \"_\")}`;\n}\n\nfunction titleFromOperation(operation: OpensteerSemanticOperationName): string {\n return operation\n .split(/[.-]/)\n .map((segment) => {\n switch (segment) {\n case \"dom\":\n return \"DOM\";\n case \"html\":\n return \"HTML\";\n default:\n return segment.charAt(0).toUpperCase() + segment.slice(1);\n }\n })\n .join(\" \");\n}\n\nexport const opensteerMcpTools: readonly OpensteerMcpToolDescriptor[] =\n opensteerSemanticOperationSpecifications.map((spec) => ({\n name: toolNameFromOperation(spec.name),\n title: titleFromOperation(spec.name),\n description: spec.description,\n operation: spec.name,\n inputSchema: spec.inputSchema,\n outputSchema: spec.outputSchema,\n annotations: {\n readOnlyHint: readOnlyOperations.has(spec.name),\n destructiveHint: destructiveOperations.has(spec.name),\n idempotentHint: readOnlyOperations.has(spec.name),\n openWorldHint: true,\n },\n }));\n\nexport function createStructuredToolResult<TStructured extends JsonObject>(\n structuredContent: TStructured,\n options: {\n readonly text?: string;\n readonly content?: readonly OpensteerMcpContent[];\n readonly isError?: boolean;\n } = {},\n): OpensteerMcpToolResult<TStructured> {\n const content =\n options.content ??\n (options.text === undefined\n ? undefined\n : [\n {\n type: \"text\",\n text: options.text,\n } satisfies OpensteerMcpTextContent,\n ]);\n\n return {\n structuredContent,\n ...(content === undefined ? {} : { content }),\n ...(options.isError === undefined ? {} : { isError: options.isError }),\n };\n}\n","import type {\n BrowserCoreEngine,\n PageRef,\n ScreenshotArtifact as BrowserCoreScreenshotArtifact,\n} from \"@opensteer/browser-core\";\n\nimport type {\n OpensteerComputerAction,\n OpensteerComputerAnnotation,\n OpensteerComputerExecuteTiming,\n} from \"./semantic.js\";\nimport type { OpensteerEvent } from \"./events.js\";\nimport type { ViewportMetrics } from \"./geometry.js\";\nimport type { ScreenshotFormat } from \"./snapshots.js\";\n\nexport const OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL = Symbol.for(\"@opensteer/computer-use-bridge\");\n\nexport interface NormalizedComputerScreenshotOptions {\n readonly format: ScreenshotFormat;\n readonly includeCursor: boolean;\n readonly annotations: readonly OpensteerComputerAnnotation[];\n}\n\nexport interface ComputerUseBridgeInput {\n readonly pageRef: PageRef;\n readonly action: OpensteerComputerAction;\n readonly screenshot: NormalizedComputerScreenshotOptions;\n readonly signal: AbortSignal;\n remainingMs(): number | undefined;\n policySettle(pageRef: PageRef): Promise<void>;\n}\n\nexport interface ComputerUseBridgeOutput {\n readonly pageRef: PageRef;\n readonly screenshot: BrowserCoreScreenshotArtifact;\n readonly viewport: ViewportMetrics;\n readonly events: readonly OpensteerEvent[];\n readonly timing: OpensteerComputerExecuteTiming;\n}\n\nexport interface ComputerUseBridge {\n execute(input: ComputerUseBridgeInput): Promise<ComputerUseBridgeOutput>;\n}\n\nexport interface ComputerUseBridgeProvider {\n [OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL](): ComputerUseBridge;\n}\n\ntype ComputerUseBridgeFactory =\n ComputerUseBridgeProvider[typeof OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL];\n\nfunction isComputerUseBridgeFactory(value: unknown): value is ComputerUseBridgeFactory {\n return typeof value === \"function\";\n}\n\nexport function resolveComputerUseBridge(\n engine: BrowserCoreEngine | ComputerUseBridgeProvider,\n): ComputerUseBridge | undefined {\n const candidate = Reflect.get(engine, OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL);\n return isComputerUseBridgeFactory(candidate) ? candidate.call(engine) : undefined;\n}\n","import type {\n BrowserCoreEngine,\n KeyModifier,\n NodeLocator,\n PageRef,\n Point,\n Quad,\n Rect,\n} from \"@opensteer/browser-core\";\nimport type { ReplayElementPath } from \"./dom-path-types.js\";\n\nexport const OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL = Symbol.for(\"@opensteer/dom-action-bridge\");\n\nexport type DomActionScrollAlignment = \"start\" | \"center\" | \"end\" | \"nearest\";\n\nexport interface DomActionTargetInspection {\n readonly connected: boolean;\n readonly visible: boolean;\n readonly enabled: boolean;\n readonly editable: boolean;\n readonly pointerEvents: string;\n readonly bounds?: Rect;\n readonly contentQuads: readonly Quad[];\n}\n\nexport interface DomActionScrollOptions {\n readonly block?: DomActionScrollAlignment;\n readonly inline?: DomActionScrollAlignment;\n}\n\nexport interface DomActionKeyPressInput {\n readonly key: string;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface DomActionSettleOptions {\n readonly operation: \"dom.click\" | \"dom.hover\" | \"dom.input\" | \"dom.scroll\";\n readonly signal: AbortSignal;\n remainingMs(): number | undefined;\n policySettle(pageRef: PageRef): Promise<void>;\n}\n\nexport type DomPointerHitRelation =\n | \"self\"\n | \"descendant\"\n | \"ancestor\"\n | \"same-owner\"\n | \"outside\"\n | \"unknown\";\n\nexport interface DomPointerHitAssessment {\n readonly relation: DomPointerHitRelation;\n readonly blocking: boolean;\n readonly ambiguous?: boolean;\n readonly canonicalTarget?: NodeLocator;\n readonly hitOwner?: NodeLocator;\n}\n\nexport interface DomActionBridge {\n buildReplayPath(locator: NodeLocator): Promise<ReplayElementPath>;\n inspectActionTarget(locator: NodeLocator): Promise<DomActionTargetInspection>;\n canonicalizePointerTarget(locator: NodeLocator): Promise<NodeLocator>;\n classifyPointerHit(input: {\n readonly target: NodeLocator;\n readonly hit: NodeLocator;\n readonly point: Point;\n }): Promise<DomPointerHitAssessment>;\n scrollNodeIntoView(locator: NodeLocator, options?: DomActionScrollOptions): Promise<void>;\n focusNode(locator: NodeLocator): Promise<void>;\n pressKey(locator: NodeLocator, input: DomActionKeyPressInput): Promise<void>;\n finalizeDomAction(pageRef: PageRef, options: DomActionSettleOptions): Promise<void>;\n}\n\nexport interface DomActionBridgeProvider {\n [OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL](): DomActionBridge;\n}\n\ntype DomActionBridgeFactory = DomActionBridgeProvider[typeof OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL];\n\nfunction isDomActionBridgeFactory(value: unknown): value is DomActionBridgeFactory {\n return typeof value === \"function\";\n}\n\nexport function resolveDomActionBridge(\n engine: BrowserCoreEngine | DomActionBridgeProvider,\n): DomActionBridge | undefined {\n const candidate = Reflect.get(engine, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL);\n return isDomActionBridgeFactory(candidate) ? candidate.call(engine) : undefined;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/json.ts","../src/validation.ts","../src/version.ts","../src/binary-location.ts","../src/identity.ts","../src/geometry.ts","../src/metadata.ts","../src/network.ts","../src/captcha.ts","../src/requests.ts","../src/storage.ts","../src/snapshots.ts","../src/capabilities.ts","../src/cloud.ts","../src/errors.ts","../src/events.ts","../src/artifacts.ts","../src/traces.ts","../src/envelopes.ts","../src/session-info.ts","../src/automation.ts","../src/operations.ts","../src/rest.ts","../src/diff.ts","../src/minimize.ts","../src/probe.ts","../src/scripts.ts","../src/reverse.ts","../src/interaction.ts","../src/semantic.ts","../src/mcp.ts","../src/computer-use-bridge.ts","../src/dom-action-bridge.ts"],"names":["jsonValueSchema","targetByElementSchema","targetByDescriptionSchema","targetBySelectorSchema"],"mappings":"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","file":"index.cjs","sourcesContent":["export type JsonPrimitive = boolean | number | string | null;\n\nexport type JsonValue = JsonPrimitive | JsonObject | JsonArray;\n\nexport interface JsonObject {\n readonly [key: string]: JsonValue;\n}\n\nexport type JsonArray = readonly JsonValue[];\n\nexport type JsonSchemaType =\n | \"string\"\n | \"number\"\n | \"integer\"\n | \"boolean\"\n | \"object\"\n | \"array\"\n | \"null\";\n\nexport interface JsonSchema {\n readonly $id?: string;\n readonly $schema?: string;\n readonly title?: string;\n readonly description?: string;\n readonly type?: JsonSchemaType | readonly JsonSchemaType[];\n readonly enum?: readonly JsonPrimitive[];\n readonly const?: JsonValue;\n readonly format?: string;\n readonly pattern?: string;\n readonly minLength?: number;\n readonly maxLength?: number;\n readonly minimum?: number;\n readonly maximum?: number;\n readonly exclusiveMinimum?: number;\n readonly exclusiveMaximum?: number;\n readonly minItems?: number;\n readonly maxItems?: number;\n readonly uniqueItems?: boolean;\n readonly items?: JsonSchema;\n readonly properties?: Readonly<Record<string, JsonSchema>>;\n readonly required?: readonly string[];\n readonly additionalProperties?: boolean | JsonSchema;\n readonly oneOf?: readonly JsonSchema[];\n readonly anyOf?: readonly JsonSchema[];\n readonly allOf?: readonly JsonSchema[];\n readonly default?: JsonValue;\n readonly examples?: readonly JsonValue[];\n}\n\nexport const JSON_SCHEMA_DRAFT_2020_12 = \"https://json-schema.org/draft/2020-12/schema\";\n\nexport function defineSchema<TSchema extends JsonSchema>(schema: TSchema): TSchema {\n return schema;\n}\n\nexport function stringSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"string\",\n ...options,\n });\n}\n\nexport function numberSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"number\",\n ...options,\n });\n}\n\nexport function integerSchema(options: Omit<JsonSchema, \"type\"> = {}): JsonSchema {\n return defineSchema({\n type: \"integer\",\n ...options,\n });\n}\n\nexport function literalSchema(\n value: JsonValue,\n options: Omit<JsonSchema, \"const\"> = {},\n): JsonSchema {\n return defineSchema({\n const: value,\n ...options,\n });\n}\n\nexport function enumSchema(\n values: readonly JsonPrimitive[],\n options: Omit<JsonSchema, \"enum\"> = {},\n): JsonSchema {\n return defineSchema({\n enum: values,\n ...options,\n });\n}\n\nexport function arraySchema(\n items: JsonSchema,\n options: Omit<JsonSchema, \"type\" | \"items\"> = {},\n): JsonSchema {\n return defineSchema({\n type: \"array\",\n items,\n ...options,\n });\n}\n\nexport function objectSchema(\n properties: Readonly<Record<string, JsonSchema>>,\n options: Omit<JsonSchema, \"type\" | \"properties\"> & {\n readonly required?: readonly string[];\n readonly additionalProperties?: boolean | JsonSchema;\n } = {},\n): JsonSchema {\n const { required, additionalProperties, ...rest } = options;\n\n return defineSchema({\n type: \"object\",\n properties,\n ...rest,\n ...(required === undefined ? {} : { required }),\n ...(additionalProperties === undefined\n ? { additionalProperties: false }\n : { additionalProperties }),\n });\n}\n\nexport function recordSchema(\n valueSchema: JsonSchema,\n options: Omit<JsonSchema, \"type\" | \"additionalProperties\"> = {},\n): JsonSchema {\n return defineSchema({\n type: \"object\",\n additionalProperties: valueSchema,\n ...options,\n });\n}\n\nexport function oneOfSchema(\n members: readonly JsonSchema[],\n options: Omit<JsonSchema, \"oneOf\"> = {},\n): JsonSchema {\n return defineSchema({\n oneOf: members,\n ...options,\n });\n}\n","import type { JsonSchema, JsonSchemaType, JsonValue } from \"./json.js\";\n\nexport interface JsonSchemaValidationIssue {\n readonly path: string;\n readonly message: string;\n}\n\nexport function validateJsonSchema(\n schema: JsonSchema,\n value: unknown,\n path = \"$\",\n): readonly JsonSchemaValidationIssue[] {\n return validateSchemaNode(schema, value, path);\n}\n\nfunction validateSchemaNode(\n schema: JsonSchema,\n value: unknown,\n path: string,\n): JsonSchemaValidationIssue[] {\n const issues: JsonSchemaValidationIssue[] = [];\n\n if (\"const\" in schema && !isJsonValueEqual(schema.const, value)) {\n issues.push({\n path,\n message: `must equal ${JSON.stringify(schema.const)}`,\n });\n return issues;\n }\n\n if (\n schema.enum !== undefined &&\n !schema.enum.some((candidate) => isJsonValueEqual(candidate, value))\n ) {\n issues.push({\n path,\n message: `must be one of ${schema.enum.map((candidate) => JSON.stringify(candidate)).join(\", \")}`,\n });\n return issues;\n }\n\n if (schema.oneOf !== undefined) {\n const branchIssues = schema.oneOf.map((member) => validateSchemaNode(member, value, path));\n const validBranches = branchIssues.filter((current) => current.length === 0).length;\n if (validBranches !== 1) {\n issues.push({\n path,\n message:\n validBranches === 0\n ? \"must match exactly one supported shape\"\n : \"matches multiple supported shapes\",\n });\n return issues;\n }\n }\n\n if (schema.anyOf !== undefined) {\n const hasMatch = schema.anyOf.some(\n (member) => validateSchemaNode(member, value, path).length === 0,\n );\n if (!hasMatch) {\n issues.push({\n path,\n message: \"must match at least one supported shape\",\n });\n return issues;\n }\n }\n\n if (schema.allOf !== undefined) {\n for (const member of schema.allOf) {\n issues.push(...validateSchemaNode(member, value, path));\n }\n if (issues.length > 0) {\n return issues;\n }\n }\n\n if (schema.type !== undefined && !matchesSchemaType(schema.type, value)) {\n issues.push({\n path,\n message: `must be ${describeSchemaType(schema.type)}`,\n });\n return issues;\n }\n\n if (typeof value === \"string\") {\n if (schema.minLength !== undefined && value.length < schema.minLength) {\n issues.push({\n path,\n message: `must have length >= ${String(schema.minLength)}`,\n });\n }\n if (schema.maxLength !== undefined && value.length > schema.maxLength) {\n issues.push({\n path,\n message: `must have length <= ${String(schema.maxLength)}`,\n });\n }\n if (schema.pattern !== undefined && !new RegExp(schema.pattern).test(value)) {\n issues.push({\n path,\n message: `must match pattern ${schema.pattern}`,\n });\n }\n return issues;\n }\n\n if (typeof value === \"number\") {\n if (schema.minimum !== undefined && value < schema.minimum) {\n issues.push({\n path,\n message: `must be >= ${String(schema.minimum)}`,\n });\n }\n if (schema.maximum !== undefined && value > schema.maximum) {\n issues.push({\n path,\n message: `must be <= ${String(schema.maximum)}`,\n });\n }\n if (schema.exclusiveMinimum !== undefined && value <= schema.exclusiveMinimum) {\n issues.push({\n path,\n message: `must be > ${String(schema.exclusiveMinimum)}`,\n });\n }\n if (schema.exclusiveMaximum !== undefined && value >= schema.exclusiveMaximum) {\n issues.push({\n path,\n message: `must be < ${String(schema.exclusiveMaximum)}`,\n });\n }\n return issues;\n }\n\n if (Array.isArray(value)) {\n if (schema.minItems !== undefined && value.length < schema.minItems) {\n issues.push({\n path,\n message: `must have at least ${String(schema.minItems)} items`,\n });\n }\n if (schema.maxItems !== undefined && value.length > schema.maxItems) {\n issues.push({\n path,\n message: `must have at most ${String(schema.maxItems)} items`,\n });\n }\n if (schema.uniqueItems) {\n const seen = new Set<string>();\n for (const item of value) {\n const key = JSON.stringify(item);\n if (seen.has(key)) {\n issues.push({\n path,\n message: \"must not contain duplicate items\",\n });\n break;\n }\n seen.add(key);\n }\n }\n if (schema.items !== undefined) {\n for (let index = 0; index < value.length; index += 1) {\n issues.push(...validateSchemaNode(schema.items, value[index], `${path}[${String(index)}]`));\n }\n }\n return issues;\n }\n\n if (isPlainObject(value)) {\n const properties = schema.properties ?? {};\n for (const requiredKey of schema.required ?? []) {\n if (!(requiredKey in value)) {\n issues.push({\n path: joinObjectPath(path, requiredKey),\n message: \"is required\",\n });\n }\n }\n\n for (const [key, propertyValue] of Object.entries(value)) {\n const propertySchema = properties[key];\n if (propertySchema !== undefined) {\n issues.push(\n ...validateSchemaNode(propertySchema, propertyValue, joinObjectPath(path, key)),\n );\n continue;\n }\n\n if (schema.additionalProperties === false) {\n issues.push({\n path: joinObjectPath(path, key),\n message: \"is not allowed\",\n });\n continue;\n }\n\n if (schema.additionalProperties !== undefined && schema.additionalProperties !== true) {\n issues.push(\n ...validateSchemaNode(\n schema.additionalProperties,\n propertyValue,\n joinObjectPath(path, key),\n ),\n );\n }\n }\n }\n\n return issues;\n}\n\nfunction matchesSchemaType(\n expected: JsonSchemaType | readonly JsonSchemaType[],\n value: unknown,\n): boolean {\n const candidates = Array.isArray(expected) ? expected : [expected];\n return candidates.some((candidate) => matchesSingleSchemaType(candidate, value));\n}\n\nfunction matchesSingleSchemaType(expected: JsonSchemaType, value: unknown): boolean {\n switch (expected) {\n case \"string\":\n return typeof value === \"string\";\n case \"number\":\n return typeof value === \"number\" && Number.isFinite(value);\n case \"integer\":\n return typeof value === \"number\" && Number.isInteger(value);\n case \"boolean\":\n return typeof value === \"boolean\";\n case \"null\":\n return value === null;\n case \"array\":\n return Array.isArray(value);\n case \"object\":\n return isPlainObject(value);\n }\n}\n\nfunction describeSchemaType(expected: JsonSchemaType | readonly JsonSchemaType[]): string {\n const candidates = Array.isArray(expected) ? expected : [expected];\n return candidates.join(\" or \");\n}\n\nfunction isPlainObject(value: unknown): value is Record<string, unknown> {\n return Object.prototype.toString.call(value) === \"[object Object]\";\n}\n\nfunction joinObjectPath(base: string, key: string): string {\n return `${base}.${key}`;\n}\n\nfunction isJsonValueEqual(expected: JsonValue | undefined, actual: unknown): boolean {\n if (expected === undefined) {\n return actual === undefined;\n }\n if (\n expected === null ||\n typeof expected === \"string\" ||\n typeof expected === \"number\" ||\n typeof expected === \"boolean\"\n ) {\n return actual === expected;\n }\n if (Array.isArray(expected)) {\n return (\n Array.isArray(actual) &&\n actual.length === expected.length &&\n expected.every((entry, index) => isJsonValueEqual(entry, actual[index]))\n );\n }\n if (!isPlainObject(actual)) {\n return false;\n }\n\n const expectedObject = expected as Record<string, JsonValue>;\n const expectedKeys = Object.keys(expectedObject).sort((left, right) => left.localeCompare(right));\n const actualKeys = Object.keys(actual).sort((left, right) => left.localeCompare(right));\n return (\n expectedKeys.length === actualKeys.length &&\n expectedKeys.every(\n (key, index) =>\n key === actualKeys[index] && isJsonValueEqual(expectedObject[key], actual[key]),\n )\n );\n}\n","import {\n JSON_SCHEMA_DRAFT_2020_12,\n literalSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport const OPENSTEER_PROTOCOL_NAME = \"opensteer\";\nexport const OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION = 2 as const;\nexport const OPENSTEER_PROTOCOL_VERSION = `0.${OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION}.0`;\nexport const OPENSTEER_PROTOCOL_REVISION_DATE = \"2026-03-13\";\nexport const OPENSTEER_PROTOCOL_MEDIA_TYPE = `application/vnd.${OPENSTEER_PROTOCOL_NAME}+json;version=${OPENSTEER_PROTOCOL_VERSION}`;\nexport const OPENSTEER_PROTOCOL_REST_BASE_PATH = `/api/v${OPENSTEER_PROTOCOL_COMPATIBILITY_REVISION}`;\n\nexport type OpensteerProtocolName = typeof OPENSTEER_PROTOCOL_NAME;\nexport type OpensteerProtocolVersion = typeof OPENSTEER_PROTOCOL_VERSION;\n\nexport interface OpensteerProtocolDescriptor {\n readonly protocol: OpensteerProtocolName;\n readonly version: OpensteerProtocolVersion;\n readonly revisionDate: string;\n readonly mediaType: string;\n readonly restBasePath: string;\n}\n\nexport const opensteerProtocolDescriptor: OpensteerProtocolDescriptor = {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: OPENSTEER_PROTOCOL_VERSION,\n revisionDate: OPENSTEER_PROTOCOL_REVISION_DATE,\n mediaType: OPENSTEER_PROTOCOL_MEDIA_TYPE,\n restBasePath: OPENSTEER_PROTOCOL_REST_BASE_PATH,\n};\n\nexport const opensteerProtocolDescriptorSchema: JsonSchema = objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n revisionDate: stringSchema({\n format: \"date\",\n description: \"Calendar revision for this protocol snapshot.\",\n }),\n mediaType: stringSchema({\n description: \"Canonical media type for JSON payloads using this protocol revision.\",\n }),\n restBasePath: stringSchema({\n description: \"Base HTTP path for the canonical REST transport.\",\n }),\n },\n {\n $schema: JSON_SCHEMA_DRAFT_2020_12,\n $id: \"https://opensteer.dev/schemas/protocol/descriptor.json\",\n title: \"OpensteerProtocolDescriptor\",\n required: [\"protocol\", \"version\", \"revisionDate\", \"mediaType\", \"restBasePath\"],\n },\n);\n\nexport function isSupportedProtocolVersion(value: string): value is OpensteerProtocolVersion {\n return value === OPENSTEER_PROTOCOL_VERSION;\n}\n\nexport function assertSupportedProtocolVersion(value: string): OpensteerProtocolVersion {\n if (!isSupportedProtocolVersion(value)) {\n throw new RangeError(\n `unsupported protocol version ${value}; expected ${OPENSTEER_PROTOCOL_VERSION}`,\n );\n }\n\n return value;\n}\n","import type { JsonSchema } from \"./json.js\";\nimport { enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport interface ExternalBinaryLocation {\n readonly delivery: \"external\";\n readonly uri: string;\n readonly mimeType: string;\n readonly byteLength: number;\n readonly sha256: string;\n}\n\nexport const externalBinaryLocationSchema: JsonSchema = objectSchema(\n {\n delivery: enumSchema([\"external\"] as const),\n uri: stringSchema(),\n mimeType: stringSchema(),\n byteLength: integerSchema({ minimum: 0 }),\n sha256: stringSchema(),\n },\n {\n title: \"ExternalBinaryLocation\",\n required: [\"delivery\", \"uri\", \"mimeType\", \"byteLength\", \"sha256\"],\n },\n);\n","export type {\n SessionRef,\n PageRef,\n FrameRef,\n DocumentRef,\n NodeRef,\n NetworkRequestId,\n DownloadRef,\n DialogRef,\n ChooserRef,\n WorkerRef,\n DocumentEpoch,\n NodeLocator,\n} from \"@opensteer/browser-core\";\n\nexport {\n createSessionRef,\n createPageRef,\n createFrameRef,\n createDocumentRef,\n createNodeRef,\n createNetworkRequestId,\n createDownloadRef,\n createDialogRef,\n createChooserRef,\n createWorkerRef,\n isSessionRef,\n isPageRef,\n isFrameRef,\n isDocumentRef,\n isNodeRef,\n isNetworkRequestId,\n isDownloadRef,\n isDialogRef,\n isChooserRef,\n isWorkerRef,\n serializeRef,\n createDocumentEpoch,\n nextDocumentEpoch,\n serializeDocumentEpoch,\n createNodeLocator,\n} from \"@opensteer/browser-core\";\n\nimport type {\n SessionRef,\n PageRef,\n FrameRef,\n DocumentRef,\n NodeRef,\n NetworkRequestId,\n DownloadRef,\n DialogRef,\n ChooserRef,\n WorkerRef,\n} from \"@opensteer/browser-core\";\n\nimport {\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport type OpensteerRef =\n | SessionRef\n | PageRef\n | FrameRef\n | DocumentRef\n | NodeRef\n | NetworkRequestId\n | DownloadRef\n | DialogRef\n | ChooserRef\n | WorkerRef;\n\ntype RefPrefix =\n | \"session\"\n | \"page\"\n | \"frame\"\n | \"document\"\n | \"node\"\n | \"request\"\n | \"download\"\n | \"dialog\"\n | \"chooser\"\n | \"worker\";\n\nexport interface ParsedOpensteerRef {\n readonly kind: RefPrefix;\n readonly value: string;\n}\n\nconst refPrefixes = [\n \"session\",\n \"page\",\n \"frame\",\n \"document\",\n \"node\",\n \"request\",\n \"download\",\n \"dialog\",\n \"chooser\",\n \"worker\",\n] as const satisfies readonly RefPrefix[];\n\nfunction parsePrefixedRef(value: string): ParsedOpensteerRef | null {\n const separatorIndex = value.indexOf(\":\");\n if (separatorIndex <= 0 || separatorIndex === value.length - 1) {\n return null;\n }\n\n const kind = value.slice(0, separatorIndex);\n if (!refPrefixes.includes(kind as RefPrefix)) {\n return null;\n }\n\n return {\n kind: kind as RefPrefix,\n value: value.slice(separatorIndex + 1),\n };\n}\n\nexport function isOpensteerRef(value: string): value is OpensteerRef {\n return parsePrefixedRef(value) !== null;\n}\n\nexport function parseOpensteerRef(value: string): ParsedOpensteerRef | null {\n return parsePrefixedRef(value);\n}\n\nfunction prefixedRefSchema(prefix: RefPrefix, title: string): JsonSchema {\n return stringSchema({\n title,\n pattern: `^${prefix}:.+$`,\n });\n}\n\nexport const opensteerRefKindSchema: JsonSchema = enumSchema(refPrefixes, {\n title: \"OpensteerRefKind\",\n});\n\nexport const sessionRefSchema = prefixedRefSchema(\"session\", \"SessionRef\");\nexport const pageRefSchema = prefixedRefSchema(\"page\", \"PageRef\");\nexport const frameRefSchema = prefixedRefSchema(\"frame\", \"FrameRef\");\nexport const documentRefSchema = prefixedRefSchema(\"document\", \"DocumentRef\");\nexport const nodeRefSchema = prefixedRefSchema(\"node\", \"NodeRef\");\nexport const networkRequestIdSchema = prefixedRefSchema(\"request\", \"NetworkRequestId\");\nexport const downloadRefSchema = prefixedRefSchema(\"download\", \"DownloadRef\");\nexport const dialogRefSchema = prefixedRefSchema(\"dialog\", \"DialogRef\");\nexport const chooserRefSchema = prefixedRefSchema(\"chooser\", \"ChooserRef\");\nexport const workerRefSchema = prefixedRefSchema(\"worker\", \"WorkerRef\");\n\nexport const opensteerRefSchema: JsonSchema = oneOfSchema(\n [\n sessionRefSchema,\n pageRefSchema,\n frameRefSchema,\n documentRefSchema,\n nodeRefSchema,\n networkRequestIdSchema,\n downloadRefSchema,\n dialogRefSchema,\n chooserRefSchema,\n workerRefSchema,\n ],\n {\n title: \"OpensteerRef\",\n },\n);\n\nexport const documentEpochSchema: JsonSchema = integerSchema({\n title: \"DocumentEpoch\",\n minimum: 0,\n});\n\nexport const nodeLocatorSchema: JsonSchema = objectSchema(\n {\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n },\n {\n title: \"NodeLocator\",\n required: [\"documentRef\", \"documentEpoch\", \"nodeRef\"],\n },\n);\n","export type {\n Point,\n Size,\n Rect,\n Quad,\n ScrollOffset,\n CoordinateSpace,\n LayoutViewport,\n VisualViewport,\n DevicePixelRatio,\n PageScaleFactor,\n PageZoomFactor,\n ViewportMetrics,\n} from \"@opensteer/browser-core\";\n\nimport { arraySchema, enumSchema, numberSchema, objectSchema, type JsonSchema } from \"./json.js\";\n\nexport const pointSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"Point\",\n required: [\"x\", \"y\"],\n },\n);\n\nexport const sizeSchema: JsonSchema = objectSchema(\n {\n width: numberSchema({ minimum: 0 }),\n height: numberSchema({ minimum: 0 }),\n },\n {\n title: \"Size\",\n required: [\"width\", \"height\"],\n },\n);\n\nexport const rectSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n width: numberSchema({ minimum: 0 }),\n height: numberSchema({ minimum: 0 }),\n },\n {\n title: \"Rect\",\n required: [\"x\", \"y\", \"width\", \"height\"],\n },\n);\n\nexport const quadSchema: JsonSchema = arraySchema(pointSchema, {\n title: \"Quad\",\n minItems: 4,\n maxItems: 4,\n});\n\nexport const scrollOffsetSchema: JsonSchema = objectSchema(\n {\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"ScrollOffset\",\n required: [\"x\", \"y\"],\n },\n);\n\nexport const coordinateSpaceSchema: JsonSchema = enumSchema(\n [\n \"document-css\",\n \"layout-viewport-css\",\n \"visual-viewport-css\",\n \"computer-display-css\",\n \"window\",\n \"screen\",\n \"device-pixel\",\n ] as const,\n {\n title: \"CoordinateSpace\",\n },\n);\n\nexport const layoutViewportSchema: JsonSchema = objectSchema(\n {\n origin: pointSchema,\n size: sizeSchema,\n },\n {\n title: \"LayoutViewport\",\n required: [\"origin\", \"size\"],\n },\n);\n\nexport const visualViewportSchema: JsonSchema = objectSchema(\n {\n origin: pointSchema,\n offsetWithinLayoutViewport: scrollOffsetSchema,\n size: sizeSchema,\n },\n {\n title: \"VisualViewport\",\n required: [\"origin\", \"offsetWithinLayoutViewport\", \"size\"],\n },\n);\n\nexport const viewportMetricsSchema: JsonSchema = objectSchema(\n {\n layoutViewport: layoutViewportSchema,\n visualViewport: visualViewportSchema,\n scrollOffset: scrollOffsetSchema,\n contentSize: sizeSchema,\n devicePixelRatio: numberSchema({ exclusiveMinimum: 0 }),\n pageScaleFactor: numberSchema({ exclusiveMinimum: 0 }),\n pageZoomFactor: numberSchema({ exclusiveMinimum: 0 }),\n },\n {\n title: \"ViewportMetrics\",\n required: [\n \"layoutViewport\",\n \"visualViewport\",\n \"scrollOffset\",\n \"contentSize\",\n \"devicePixelRatio\",\n \"pageScaleFactor\",\n \"pageZoomFactor\",\n ],\n },\n);\n","export type { PageLifecycleState, PageInfo, FrameInfo } from \"@opensteer/browser-core\";\n\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport { enumSchema, objectSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const pageLifecycleStateSchema: JsonSchema = enumSchema(\n [\"opening\", \"open\", \"closing\", \"closed\", \"crashed\"] as const,\n {\n title: \"PageLifecycleState\",\n },\n);\n\nexport const pageInfoSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n sessionRef: sessionRefSchema,\n openerPageRef: pageRefSchema,\n url: stringSchema({\n description: \"Current main-frame URL.\",\n }),\n title: stringSchema(),\n lifecycleState: pageLifecycleStateSchema,\n },\n {\n title: \"PageInfo\",\n required: [\"pageRef\", \"sessionRef\", \"url\", \"title\", \"lifecycleState\"],\n },\n);\n\nexport const frameInfoSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n pageRef: pageRefSchema,\n parentFrameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n name: stringSchema(),\n isMainFrame: {\n type: \"boolean\",\n },\n },\n {\n title: \"FrameInfo\",\n required: [\"frameRef\", \"pageRef\", \"documentRef\", \"documentEpoch\", \"url\", \"isMainFrame\"],\n },\n);\n","export type {\n HeaderEntry,\n BodyPayloadEncoding,\n NetworkCaptureState,\n NetworkRecordKind,\n NetworkResourceType,\n NetworkInitiatorType,\n NetworkInitiator,\n NetworkTiming,\n NetworkTransferSizes,\n NetworkSourceMetadata,\n} from \"@opensteer/browser-core\";\n\nexport { createHeaderEntry } from \"@opensteer/browser-core\";\n\nimport type {\n BodyPayloadEncoding,\n DocumentRef,\n FrameRef,\n HeaderEntry,\n NetworkCaptureState,\n NetworkInitiator,\n NetworkRecordKind,\n NetworkRequestId,\n NetworkResourceType,\n NetworkSourceMetadata,\n NetworkTiming,\n NetworkTransferSizes,\n PageRef,\n SessionRef,\n WorkerRef,\n} from \"@opensteer/browser-core\";\n\nimport {\n documentRefSchema,\n frameRefSchema,\n networkRequestIdSchema,\n pageRefSchema,\n sessionRefSchema,\n workerRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport interface BodyPayload {\n readonly data: string;\n readonly encoding: BodyPayloadEncoding;\n readonly mimeType?: string;\n readonly charset?: string;\n readonly truncated: boolean;\n readonly capturedByteLength: number;\n readonly originalByteLength?: number;\n}\n\nexport interface NetworkRecord {\n readonly kind: NetworkRecordKind;\n readonly requestId: NetworkRequestId;\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly method: string;\n readonly url: string;\n readonly requestHeaders: readonly HeaderEntry[];\n readonly responseHeaders: readonly HeaderEntry[];\n readonly status?: number;\n readonly statusText?: string;\n readonly resourceType: NetworkResourceType;\n readonly redirectFromRequestId?: NetworkRequestId;\n readonly redirectToRequestId?: NetworkRequestId;\n readonly navigationRequest: boolean;\n readonly initiator?: NetworkInitiator;\n readonly timing?: NetworkTiming;\n readonly transfer?: NetworkTransferSizes;\n readonly source?: NetworkSourceMetadata;\n readonly captureState: NetworkCaptureState;\n readonly requestBodyState: NetworkCaptureState;\n readonly responseBodyState: NetworkCaptureState;\n readonly requestBodySkipReason?: string;\n readonly responseBodySkipReason?: string;\n readonly requestBodyError?: string;\n readonly responseBodyError?: string;\n readonly requestBody?: BodyPayload;\n readonly responseBody?: BodyPayload;\n}\n\nexport interface NetworkQueryRecord {\n readonly recordId: string;\n readonly capture?: string;\n readonly tags?: readonly string[];\n readonly savedAt?: number;\n readonly record: NetworkRecord;\n}\n\nexport function createBodyPayload(\n data: string,\n options: {\n readonly encoding?: BodyPayloadEncoding;\n readonly mimeType?: string;\n readonly charset?: string;\n readonly truncated?: boolean;\n readonly originalByteLength?: number;\n } = {},\n): BodyPayload {\n const capturedByteLength = Buffer.from(data, \"base64\").byteLength;\n\n return {\n data,\n encoding: options.encoding ?? \"identity\",\n truncated: options.truncated ?? false,\n capturedByteLength,\n ...(options.mimeType === undefined ? {} : { mimeType: options.mimeType }),\n ...(options.charset === undefined ? {} : { charset: options.charset }),\n ...(options.originalByteLength === undefined\n ? {}\n : { originalByteLength: options.originalByteLength }),\n };\n}\n\nexport function bodyPayloadFromUtf8(\n value: string,\n options: {\n readonly mimeType?: string;\n readonly encoding?: BodyPayloadEncoding;\n readonly truncated?: boolean;\n readonly originalByteLength?: number;\n } = {},\n): BodyPayload {\n return createBodyPayload(Buffer.from(value, \"utf8\").toString(\"base64\"), {\n ...(options.mimeType === undefined ? {} : { mimeType: options.mimeType }),\n ...(options.encoding === undefined ? {} : { encoding: options.encoding }),\n ...(options.truncated === undefined ? {} : { truncated: options.truncated }),\n ...(options.originalByteLength === undefined\n ? {}\n : { originalByteLength: options.originalByteLength }),\n charset: \"utf-8\",\n });\n}\n\nexport const headerEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"HeaderEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nexport const bodyPayloadEncodingSchema: JsonSchema = enumSchema(\n [\"identity\", \"base64\", \"gzip\", \"deflate\", \"brotli\", \"unknown\"] as const,\n {\n title: \"BodyPayloadEncoding\",\n },\n);\n\nexport const bodyPayloadSchema: JsonSchema = objectSchema(\n {\n data: stringSchema({\n description: \"Binary payload encoded as base64.\",\n }),\n encoding: bodyPayloadEncodingSchema,\n mimeType: stringSchema(),\n charset: stringSchema(),\n truncated: {\n type: \"boolean\",\n },\n capturedByteLength: integerSchema({ minimum: 0 }),\n originalByteLength: integerSchema({ minimum: 0 }),\n },\n {\n title: \"BodyPayload\",\n required: [\"data\", \"encoding\", \"truncated\", \"capturedByteLength\"],\n },\n);\n\nexport const networkRecordKindSchema: JsonSchema = enumSchema(\n [\"http\", \"websocket\", \"event-stream\"] as const,\n {\n title: \"NetworkRecordKind\",\n },\n);\n\nexport const networkCaptureStateSchema: JsonSchema = enumSchema(\n [\"pending\", \"complete\", \"failed\", \"skipped\"] as const,\n {\n title: \"NetworkCaptureState\",\n },\n);\n\nexport const networkResourceTypeSchema: JsonSchema = enumSchema(\n [\n \"document\",\n \"stylesheet\",\n \"image\",\n \"media\",\n \"font\",\n \"script\",\n \"fetch\",\n \"xhr\",\n \"websocket\",\n \"event-stream\",\n \"manifest\",\n \"texttrack\",\n \"beacon\",\n \"ping\",\n \"preflight\",\n \"other\",\n ] as const,\n {\n title: \"NetworkResourceType\",\n },\n);\n\nexport const networkInitiatorTypeSchema: JsonSchema = enumSchema(\n [\"parser\", \"script\", \"preload\", \"redirect\", \"user\", \"service-worker\", \"other\"] as const,\n {\n title: \"NetworkInitiatorType\",\n },\n);\n\nexport const networkInitiatorSchema: JsonSchema = objectSchema(\n {\n type: networkInitiatorTypeSchema,\n url: stringSchema(),\n lineNumber: integerSchema({ minimum: 0 }),\n columnNumber: integerSchema({ minimum: 0 }),\n requestId: networkRequestIdSchema,\n stackTrace: arraySchema(stringSchema()),\n },\n {\n title: \"NetworkInitiator\",\n required: [\"type\"],\n },\n);\n\nexport const networkTimingSchema: JsonSchema = objectSchema(\n {\n requestStartMs: numberSchema(),\n dnsStartMs: numberSchema(),\n dnsEndMs: numberSchema(),\n connectStartMs: numberSchema(),\n connectEndMs: numberSchema(),\n sslStartMs: numberSchema(),\n sslEndMs: numberSchema(),\n requestSentMs: numberSchema(),\n responseStartMs: numberSchema(),\n responseEndMs: numberSchema(),\n workerStartMs: numberSchema(),\n workerReadyMs: numberSchema(),\n },\n {\n title: \"NetworkTiming\",\n },\n);\n\nexport const networkTransferSizesSchema: JsonSchema = objectSchema(\n {\n requestHeadersBytes: integerSchema({ minimum: 0 }),\n responseHeadersBytes: integerSchema({ minimum: 0 }),\n encodedBodyBytes: integerSchema({ minimum: 0 }),\n decodedBodyBytes: integerSchema({ minimum: 0 }),\n transferSizeBytes: integerSchema({ minimum: 0 }),\n },\n {\n title: \"NetworkTransferSizes\",\n },\n);\n\nexport const networkSourceMetadataSchema: JsonSchema = objectSchema(\n {\n protocol: stringSchema(),\n remoteAddress: objectSchema(\n {\n ip: stringSchema(),\n port: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n fromServiceWorker: {\n type: \"boolean\",\n },\n fromDiskCache: {\n type: \"boolean\",\n },\n fromMemoryCache: {\n type: \"boolean\",\n },\n workerRef: workerRefSchema,\n },\n {\n title: \"NetworkSourceMetadata\",\n },\n);\n\nexport const networkRecordSchema: JsonSchema = objectSchema(\n {\n kind: networkRecordKindSchema,\n requestId: networkRequestIdSchema,\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n method: stringSchema(),\n url: stringSchema(),\n requestHeaders: arraySchema(headerEntrySchema),\n responseHeaders: arraySchema(headerEntrySchema),\n status: integerSchema({ minimum: 0 }),\n statusText: stringSchema(),\n resourceType: networkResourceTypeSchema,\n redirectFromRequestId: networkRequestIdSchema,\n redirectToRequestId: networkRequestIdSchema,\n navigationRequest: {\n type: \"boolean\",\n },\n initiator: networkInitiatorSchema,\n timing: networkTimingSchema,\n transfer: networkTransferSizesSchema,\n source: networkSourceMetadataSchema,\n captureState: networkCaptureStateSchema,\n requestBodyState: networkCaptureStateSchema,\n responseBodyState: networkCaptureStateSchema,\n requestBodySkipReason: stringSchema(),\n responseBodySkipReason: stringSchema(),\n requestBodyError: stringSchema(),\n responseBodyError: stringSchema(),\n requestBody: bodyPayloadSchema,\n responseBody: bodyPayloadSchema,\n },\n {\n title: \"NetworkRecord\",\n required: [\n \"kind\",\n \"requestId\",\n \"sessionRef\",\n \"method\",\n \"url\",\n \"requestHeaders\",\n \"responseHeaders\",\n \"resourceType\",\n \"navigationRequest\",\n \"captureState\",\n \"requestBodyState\",\n \"responseBodyState\",\n ],\n },\n);\n\nexport const networkQueryRecordSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n capture: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n savedAt: integerSchema({ minimum: 0 }),\n record: networkRecordSchema,\n },\n {\n title: \"NetworkQueryRecord\",\n required: [\"recordId\", \"record\"],\n },\n);\n\nexport const orderedHeadersSchema: JsonSchema = arraySchema(headerEntrySchema, {\n title: \"OrderedHeaders\",\n});\n","import type { JsonSchema } from \"./json.js\";\nimport { enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\n\nexport type CaptchaType = \"recaptcha-v2\" | \"hcaptcha\" | \"turnstile\";\nexport type CaptchaProvider = \"2captcha\" | \"capsolver\";\n\nexport interface CaptchaDetectionResult {\n readonly type: CaptchaType;\n readonly siteKey: string;\n readonly pageUrl: string;\n}\n\nexport interface OpensteerCaptchaSolveInput {\n readonly provider: CaptchaProvider;\n readonly apiKey: string;\n readonly pageRef?: PageRef;\n readonly timeoutMs?: number;\n readonly type?: CaptchaType;\n readonly siteKey?: string;\n readonly pageUrl?: string;\n}\n\nexport interface OpensteerCaptchaSolveOutput {\n readonly captcha: CaptchaDetectionResult;\n readonly token: string;\n readonly injected: boolean;\n readonly provider: CaptchaProvider;\n}\n\nexport const captchaTypeSchema: JsonSchema = enumSchema(\n [\"recaptcha-v2\", \"hcaptcha\", \"turnstile\"] as const,\n {\n title: \"CaptchaType\",\n },\n);\n\nexport const captchaProviderSchema: JsonSchema = enumSchema([\"2captcha\", \"capsolver\"] as const, {\n title: \"CaptchaProvider\",\n});\n\nexport const captchaDetectionResultSchema: JsonSchema = objectSchema(\n {\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n },\n {\n title: \"CaptchaDetectionResult\",\n required: [\"type\", \"siteKey\", \"pageUrl\"],\n },\n);\n\nexport const opensteerCaptchaSolveInputSchema: JsonSchema = objectSchema(\n {\n provider: captchaProviderSchema,\n apiKey: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 1 }),\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerCaptchaSolveInput\",\n required: [\"provider\", \"apiKey\"],\n },\n);\n\nexport const opensteerCaptchaSolveOutputSchema: JsonSchema = objectSchema(\n {\n captcha: captchaDetectionResultSchema,\n token: stringSchema({ minLength: 1 }),\n injected: { type: \"boolean\" },\n provider: captchaProviderSchema,\n },\n {\n title: \"OpensteerCaptchaSolveOutput\",\n required: [\"captcha\", \"token\", \"injected\", \"provider\"],\n },\n);\n","import type { HeaderEntry } from \"./network.js\";\nimport {\n bodyPayloadSchema,\n headerEntrySchema,\n networkQueryRecordSchema,\n networkResourceTypeSchema,\n type BodyPayload,\n type NetworkQueryRecord,\n type NetworkResourceType,\n} from \"./network.js\";\nimport type { CaptchaProvider, CaptchaType } from \"./captcha.js\";\nimport { captchaProviderSchema, captchaTypeSchema } from \"./captcha.js\";\nimport type { JsonSchema, JsonValue } from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n} from \"./json.js\";\n\nexport type OpensteerRequestScalar = string | number | boolean;\nexport type TransportKind =\n | \"direct-http\"\n | \"matched-tls\"\n | \"context-http\"\n | \"page-http\"\n | \"session-http\";\n\nexport interface OpensteerRequestEntry {\n readonly name: string;\n readonly value: string;\n}\n\nexport type OpensteerRequestParameterLocation = \"path\" | \"query\" | \"header\";\n\nexport interface OpensteerRequestPlanParameter {\n readonly name: string;\n readonly in: OpensteerRequestParameterLocation;\n readonly wireName?: string;\n readonly required?: boolean;\n readonly description?: string;\n readonly defaultValue?: string;\n}\n\nexport interface OpensteerRequestPlanTransport {\n readonly kind: TransportKind;\n readonly requiresBrowser?: boolean;\n readonly requireSameOrigin?: boolean;\n readonly cookieJar?: string;\n}\n\nexport interface OpensteerRequestPlanEndpoint {\n readonly method: string;\n readonly urlTemplate: string;\n readonly defaultQuery?: readonly OpensteerRequestEntry[];\n readonly defaultHeaders?: readonly OpensteerRequestEntry[];\n}\n\nexport type OpensteerRequestPlanBodyKind = \"json\" | \"form\" | \"text\";\n\nexport interface OpensteerRequestPlanBody {\n readonly kind?: OpensteerRequestPlanBodyKind;\n readonly contentType?: string;\n readonly required?: boolean;\n readonly description?: string;\n readonly template?: JsonValue | string;\n readonly fields?: readonly OpensteerRequestEntry[];\n}\n\nexport interface OpensteerRequestPlanResponseExpectation {\n readonly status: number | readonly number[];\n readonly contentType?: string;\n}\n\nexport interface OpensteerRecipeRef {\n readonly key: string;\n readonly version?: string;\n}\n\nexport type OpensteerAuthRecipeRef = OpensteerRecipeRef;\n\nexport interface OpensteerRequestFailurePolicyHeaderMatch {\n readonly name: string;\n readonly valueIncludes: string;\n}\n\nexport interface OpensteerRequestFailurePolicy {\n readonly statusCodes?: readonly number[];\n readonly finalUrlIncludes?: readonly string[];\n readonly responseHeaders?: readonly OpensteerRequestFailurePolicyHeaderMatch[];\n readonly responseBodyIncludes?: readonly string[];\n}\n\nexport interface OpensteerRequestRetryBackoffPolicy {\n readonly strategy?: \"fixed\" | \"exponential\";\n readonly delayMs: number;\n readonly maxDelayMs?: number;\n}\n\nexport interface OpensteerRequestRetryPolicy {\n readonly maxRetries: number;\n readonly backoff?: OpensteerRequestRetryBackoffPolicy;\n readonly respectRetryAfter?: boolean;\n readonly failurePolicy?: OpensteerRequestFailurePolicy;\n}\n\nexport type OpensteerRecipeCachePolicy = \"none\" | \"untilFailure\";\n\nexport interface OpensteerRequestPlanRecipeBinding {\n readonly recipe: OpensteerRecipeRef;\n readonly cachePolicy?: OpensteerRecipeCachePolicy;\n}\n\nexport interface OpensteerRequestPlanRecoverBinding extends OpensteerRequestPlanRecipeBinding {\n readonly failurePolicy: OpensteerRequestFailurePolicy;\n}\n\nexport interface OpensteerRequestPlanRecipes {\n readonly prepare?: OpensteerRequestPlanRecipeBinding;\n readonly recover?: OpensteerRequestPlanRecoverBinding;\n}\n\nexport interface OpensteerRequestPlanAuth {\n readonly strategy: \"session-cookie\" | \"bearer-token\" | \"api-key\" | \"custom\";\n readonly recipe?: OpensteerRecipeRef;\n readonly failurePolicy?: OpensteerRequestFailurePolicy;\n readonly description?: string;\n}\n\nexport interface OpensteerRequestPlanPayload {\n readonly transport: OpensteerRequestPlanTransport;\n readonly endpoint: OpensteerRequestPlanEndpoint;\n readonly parameters?: readonly OpensteerRequestPlanParameter[];\n readonly body?: OpensteerRequestPlanBody;\n readonly response?: OpensteerRequestPlanResponseExpectation;\n readonly recipes?: OpensteerRequestPlanRecipes;\n readonly retryPolicy?: OpensteerRequestRetryPolicy;\n readonly auth?: OpensteerRequestPlanAuth;\n}\n\nexport interface OpensteerRegistryProvenance {\n readonly source: string;\n readonly sourceId?: string;\n readonly capturedAt?: number;\n readonly notes?: string;\n}\n\nexport interface OpensteerRequestPlanFreshness {\n readonly lastValidatedAt?: number;\n readonly staleAt?: number;\n readonly expiresAt?: number;\n}\n\nexport interface OpensteerRequestPlanRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly freshness?: OpensteerRequestPlanFreshness;\n readonly payload: OpensteerRequestPlanPayload;\n}\n\nexport interface OpensteerRecipeStepHeaderCapture {\n readonly name: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepBodyJsonPointerCapture {\n readonly pointer: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepBodyTextCapture {\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeStepResponseCapture {\n readonly header?: OpensteerRecipeStepHeaderCapture;\n readonly bodyJsonPointer?: OpensteerRecipeStepBodyJsonPointerCapture;\n readonly bodyText?: OpensteerRecipeStepBodyTextCapture;\n}\n\nexport interface OpensteerRecipeRequestStepInput {\n readonly url: string;\n readonly transport?: TransportKind;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly method?: string;\n readonly headers?: Readonly<Record<string, string>>;\n readonly query?: Readonly<Record<string, string>>;\n readonly body?: OpensteerRequestBodyInput;\n readonly followRedirects?: boolean;\n}\n\nexport interface OpensteerRecipeGotoStep {\n readonly kind: \"goto\";\n readonly url: string;\n}\n\nexport interface OpensteerRecipeReloadStep {\n readonly kind: \"reload\";\n}\n\nexport interface OpensteerRecipeWaitForUrlStep {\n readonly kind: \"waitForUrl\";\n readonly includes: string;\n readonly timeoutMs?: number;\n}\n\nexport interface OpensteerRecipeWaitForNetworkStep {\n readonly kind: \"waitForNetwork\";\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly includeBodies?: boolean;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeWaitForCookieStep {\n readonly kind: \"waitForCookie\";\n readonly name: string;\n readonly url?: string;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeWaitForStorageStep {\n readonly kind: \"waitForStorage\";\n readonly area: \"local\" | \"session\";\n readonly origin: string;\n readonly key: string;\n readonly timeoutMs?: number;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeReadCookieStep {\n readonly kind: \"readCookie\";\n readonly name: string;\n readonly url?: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeReadStorageStep {\n readonly kind: \"readStorage\";\n readonly area: \"local\" | \"session\";\n readonly origin: string;\n readonly key: string;\n readonly pageUrl?: string;\n readonly saveAs: string;\n}\n\nexport interface OpensteerRecipeEvaluateStep {\n readonly kind: \"evaluate\";\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeSyncCookiesToJarStep {\n readonly kind: \"syncCookiesToJar\";\n readonly jar: string;\n readonly urls?: readonly string[];\n}\n\nexport interface OpensteerRecipeRequestStep {\n readonly kind: \"request\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerAuthRecipeSessionRequestStep {\n readonly kind: \"sessionRequest\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerAuthRecipeDirectRequestStep {\n readonly kind: \"directRequest\";\n readonly request: OpensteerRecipeRequestStepInput;\n readonly capture?: OpensteerRecipeStepResponseCapture;\n}\n\nexport interface OpensteerRecipeSolveCaptchaStep {\n readonly kind: \"solveCaptcha\";\n readonly provider: CaptchaProvider;\n readonly apiKey: string;\n readonly pageRef?: PageRef;\n readonly timeoutMs?: number;\n readonly type?: CaptchaType;\n readonly siteKey?: string;\n readonly pageUrl?: string;\n readonly saveAs?: string;\n}\n\nexport interface OpensteerRecipeHookRef {\n readonly specifier: string;\n readonly export: string;\n}\n\nexport type OpensteerAuthRecipeHookRef = OpensteerRecipeHookRef;\n\nexport interface OpensteerRecipeHookStep {\n readonly kind: \"hook\";\n readonly hook: OpensteerRecipeHookRef;\n}\n\nexport type OpensteerRecipeStep =\n | OpensteerRecipeGotoStep\n | OpensteerRecipeReloadStep\n | OpensteerRecipeWaitForUrlStep\n | OpensteerRecipeWaitForNetworkStep\n | OpensteerRecipeWaitForCookieStep\n | OpensteerRecipeWaitForStorageStep\n | OpensteerRecipeReadCookieStep\n | OpensteerRecipeReadStorageStep\n | OpensteerRecipeEvaluateStep\n | OpensteerRecipeSyncCookiesToJarStep\n | OpensteerRecipeRequestStep\n | OpensteerAuthRecipeSessionRequestStep\n | OpensteerAuthRecipeDirectRequestStep\n | OpensteerRecipeSolveCaptchaStep\n | OpensteerRecipeHookStep;\n\nexport type OpensteerAuthRecipeStep = OpensteerRecipeStep;\n\nexport interface OpensteerRecipeRetryOverrides {\n readonly params?: Readonly<Record<string, string>>;\n readonly headers?: Readonly<Record<string, string>>;\n readonly query?: Readonly<Record<string, string>>;\n readonly body?: Readonly<Record<string, string>>;\n}\n\nexport type OpensteerAuthRecipeRetryOverrides = OpensteerRecipeRetryOverrides;\n\nexport interface OpensteerRecipePayload {\n readonly description?: string;\n readonly steps: readonly OpensteerRecipeStep[];\n readonly outputs?: OpensteerRecipeRetryOverrides;\n}\n\nexport type OpensteerAuthRecipePayload = OpensteerRecipePayload;\n\nexport interface OpensteerRecipeRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerRecipePayload;\n}\n\nexport type OpensteerAuthRecipeRecord = OpensteerRecipeRecord;\n\nexport interface OpensteerNetworkQueryInput {\n readonly pageRef?: PageRef;\n readonly recordId?: string;\n readonly requestId?: string;\n readonly capture?: string;\n readonly tag?: string;\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n readonly includeBodies?: boolean;\n readonly limit?: number;\n}\n\nexport interface OpensteerNetworkQueryOutput {\n readonly records: readonly NetworkQueryRecord[];\n}\n\nexport interface OpensteerNetworkTagInput {\n readonly pageRef?: PageRef;\n readonly recordId?: string;\n readonly requestId?: string;\n readonly capture?: string;\n readonly tag: string;\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n}\n\nexport interface OpensteerNetworkTagOutput {\n readonly taggedCount: number;\n}\n\nexport interface OpensteerNetworkClearInput {\n readonly capture?: string;\n readonly tag?: string;\n}\n\nexport interface OpensteerNetworkClearOutput {\n readonly clearedCount: number;\n}\n\nexport interface OpensteerWriteRequestPlanInput {\n readonly id?: string;\n readonly key: string;\n readonly version: string;\n readonly tags?: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly freshness?: OpensteerRequestPlanFreshness;\n readonly payload: OpensteerRequestPlanPayload;\n}\n\nexport interface OpensteerGetRequestPlanInput {\n readonly key: string;\n readonly version?: string;\n}\n\nexport interface OpensteerListRequestPlansInput {\n readonly key?: string;\n}\n\nexport interface OpensteerListRequestPlansOutput {\n readonly plans: readonly OpensteerRequestPlanRecord[];\n}\n\nexport interface OpensteerWriteRecipeInput {\n readonly id?: string;\n readonly key: string;\n readonly version: string;\n readonly tags?: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerRecipePayload;\n}\n\nexport type OpensteerWriteAuthRecipeInput = OpensteerWriteRecipeInput;\n\nexport interface OpensteerGetRecipeInput {\n readonly key: string;\n readonly version?: string;\n}\n\nexport type OpensteerGetAuthRecipeInput = OpensteerGetRecipeInput;\n\nexport interface OpensteerListRecipesInput {\n readonly key?: string;\n}\n\nexport type OpensteerListAuthRecipesInput = OpensteerListRecipesInput;\n\nexport interface OpensteerListRecipesOutput {\n readonly recipes: readonly OpensteerRecipeRecord[];\n}\n\nexport type OpensteerListAuthRecipesOutput = OpensteerListRecipesOutput;\n\nexport interface OpensteerRunRecipeInput {\n readonly key: string;\n readonly version?: string;\n readonly variables?: Readonly<Record<string, string>>;\n}\n\nexport type OpensteerRunAuthRecipeInput = OpensteerRunRecipeInput;\n\nexport interface OpensteerRunRecipeOutput {\n readonly recipe: {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n };\n readonly variables: Readonly<Record<string, string>>;\n readonly overrides?: OpensteerRecipeRetryOverrides;\n}\n\nexport type OpensteerRunAuthRecipeOutput = OpensteerRunRecipeOutput;\n\nexport type OpensteerRequestScalarMap = Readonly<Record<string, OpensteerRequestScalar>>;\n\nexport interface OpensteerJsonRequestBodyInput {\n readonly json: JsonValue;\n readonly contentType?: string;\n}\n\nexport interface OpensteerTextRequestBodyInput {\n readonly text: string;\n readonly contentType?: string;\n}\n\nexport interface OpensteerBase64RequestBodyInput {\n readonly base64: string;\n readonly contentType?: string;\n}\n\nexport type OpensteerRequestBodyInput =\n | OpensteerJsonRequestBodyInput\n | OpensteerTextRequestBodyInput\n | OpensteerBase64RequestBodyInput;\n\nexport interface OpensteerRequestExecuteInput {\n readonly key: string;\n readonly version?: string;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly params?: OpensteerRequestScalarMap;\n readonly query?: OpensteerRequestScalarMap;\n readonly headers?: OpensteerRequestScalarMap;\n readonly bodyVars?: OpensteerRequestScalarMap;\n readonly body?: OpensteerRequestBodyInput;\n readonly validateResponse?: boolean;\n}\n\nexport interface OpensteerRawRequestInput {\n readonly transport?: TransportKind;\n readonly pageRef?: PageRef;\n readonly cookieJar?: string;\n readonly url: string;\n readonly method?: string;\n readonly headers?: readonly HeaderEntry[];\n readonly body?: OpensteerRequestBodyInput;\n readonly followRedirects?: boolean;\n}\n\nexport interface OpensteerRequestTransportResult {\n readonly method: string;\n readonly url: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n}\n\nexport interface OpensteerRequestResponseResult {\n readonly url: string;\n readonly status: number;\n readonly statusText: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly redirected: boolean;\n}\n\nexport interface OpensteerRequestExecuteOutput {\n readonly plan: {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n };\n readonly request: OpensteerRequestTransportResult;\n readonly response: OpensteerRequestResponseResult;\n readonly recovery?: {\n readonly attempted: boolean;\n readonly succeeded: boolean;\n readonly matchedFailurePolicy?: boolean;\n readonly recipe?: {\n readonly key: string;\n readonly version: string;\n };\n };\n readonly data?: unknown;\n}\n\nexport interface OpensteerRawRequestOutput {\n readonly recordId: string;\n readonly request: OpensteerRequestTransportResult;\n readonly response: OpensteerRequestResponseResult;\n readonly data?: unknown;\n}\n\nexport interface OpensteerInferRequestPlanInput {\n readonly recordId: string;\n readonly key: string;\n readonly version: string;\n readonly transport?: TransportKind;\n}\n\nexport const opensteerRequestScalarSchema: JsonSchema = oneOfSchema(\n [stringSchema(), { type: \"number\" }, { type: \"boolean\" }],\n {\n title: \"OpensteerRequestScalar\",\n },\n);\n\nconst opensteerRequestScalarMapSchema: JsonSchema = recordSchema(opensteerRequestScalarSchema, {\n title: \"OpensteerRequestScalarMap\",\n});\n\nexport const opensteerRequestEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n },\n {\n title: \"OpensteerRequestEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nexport const opensteerRequestPlanParameterLocationSchema: JsonSchema = enumSchema(\n [\"path\", \"query\", \"header\"] as const,\n {\n title: \"OpensteerRequestParameterLocation\",\n },\n);\n\nexport const opensteerRequestPlanParameterSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n in: opensteerRequestPlanParameterLocationSchema,\n wireName: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n defaultValue: stringSchema(),\n },\n {\n title: \"OpensteerRequestPlanParameter\",\n required: [\"name\", \"in\"],\n },\n);\n\nexport const opensteerRequestPlanTransportSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\n \"direct-http\",\n \"matched-tls\",\n \"context-http\",\n \"page-http\",\n \"session-http\",\n ] as const),\n requiresBrowser: { type: \"boolean\" },\n requireSameOrigin: { type: \"boolean\" },\n cookieJar: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanTransport\",\n required: [\"kind\"],\n },\n);\n\nexport const opensteerRequestPlanEndpointSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n urlTemplate: stringSchema({ minLength: 1 }),\n defaultQuery: arraySchema(opensteerRequestEntrySchema),\n defaultHeaders: arraySchema(opensteerRequestEntrySchema),\n },\n {\n title: \"OpensteerRequestPlanEndpoint\",\n required: [\"method\", \"urlTemplate\"],\n },\n);\n\nexport const opensteerRequestPlanBodySchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"json\", \"form\", \"text\"] as const),\n contentType: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n template: defineSchema({\n title: \"JsonValue\",\n }),\n fields: arraySchema(opensteerRequestEntrySchema),\n },\n {\n title: \"OpensteerRequestPlanBody\",\n },\n);\n\nexport const transportKindSchema: JsonSchema = enumSchema(\n [\"direct-http\", \"matched-tls\", \"context-http\", \"page-http\", \"session-http\"] as const,\n {\n title: \"TransportKind\",\n },\n);\n\nconst opensteerRequestPlanStatusSchema: JsonSchema = oneOfSchema(\n [\n integerSchema({ minimum: 100, maximum: 599 }),\n arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n ],\n {\n title: \"OpensteerRequestPlanResponseStatus\",\n },\n);\n\nexport const opensteerRequestPlanResponseExpectationSchema: JsonSchema = objectSchema(\n {\n status: opensteerRequestPlanStatusSchema,\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanResponseExpectation\",\n required: [\"status\"],\n },\n);\n\nexport const opensteerRecipeRefSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeRef\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerAuthRecipeRefSchema: JsonSchema = opensteerRecipeRefSchema;\n\nexport const opensteerRequestFailurePolicyHeaderMatchSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n valueIncludes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestFailurePolicyHeaderMatch\",\n required: [\"name\", \"valueIncludes\"],\n },\n);\n\nexport const opensteerRequestFailurePolicySchema: JsonSchema = objectSchema(\n {\n statusCodes: arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n finalUrlIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseHeaders: arraySchema(opensteerRequestFailurePolicyHeaderMatchSchema, {\n minItems: 1,\n }),\n responseBodyIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerRequestFailurePolicy\",\n },\n);\n\nexport const opensteerRequestRetryBackoffPolicySchema: JsonSchema = objectSchema(\n {\n strategy: enumSchema([\"fixed\", \"exponential\"] as const),\n delayMs: integerSchema({ minimum: 0 }),\n maxDelayMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerRequestRetryBackoffPolicy\",\n required: [\"delayMs\"],\n },\n);\n\nexport const opensteerRequestRetryPolicySchema: JsonSchema = objectSchema(\n {\n maxRetries: integerSchema({ minimum: 0 }),\n backoff: opensteerRequestRetryBackoffPolicySchema,\n respectRetryAfter: { type: \"boolean\" },\n failurePolicy: opensteerRequestFailurePolicySchema,\n },\n {\n title: \"OpensteerRequestRetryPolicy\",\n required: [\"maxRetries\"],\n },\n);\n\nexport const opensteerRecipeCachePolicySchema: JsonSchema = enumSchema(\n [\"none\", \"untilFailure\"] as const,\n {\n title: \"OpensteerRecipeCachePolicy\",\n },\n);\n\nexport const opensteerRequestPlanRecipeBindingSchema: JsonSchema = objectSchema(\n {\n recipe: opensteerRecipeRefSchema,\n cachePolicy: opensteerRecipeCachePolicySchema,\n },\n {\n title: \"OpensteerRequestPlanRecipeBinding\",\n required: [\"recipe\"],\n },\n);\n\nexport const opensteerRequestPlanRecoverBindingSchema: JsonSchema = objectSchema(\n {\n recipe: opensteerRecipeRefSchema,\n cachePolicy: opensteerRecipeCachePolicySchema,\n failurePolicy: opensteerRequestFailurePolicySchema,\n },\n {\n title: \"OpensteerRequestPlanRecoverBinding\",\n required: [\"recipe\", \"failurePolicy\"],\n },\n);\n\nexport const opensteerRequestPlanRecipesSchema: JsonSchema = objectSchema(\n {\n prepare: opensteerRequestPlanRecipeBindingSchema,\n recover: opensteerRequestPlanRecoverBindingSchema,\n },\n {\n title: \"OpensteerRequestPlanRecipes\",\n },\n);\n\nexport const opensteerRequestPlanAuthSchema: JsonSchema = objectSchema(\n {\n strategy: enumSchema([\"session-cookie\", \"bearer-token\", \"api-key\", \"custom\"] as const),\n recipe: opensteerRecipeRefSchema,\n failurePolicy: opensteerRequestFailurePolicySchema,\n description: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestPlanAuth\",\n required: [\"strategy\"],\n },\n);\n\nexport const opensteerRequestPlanPayloadSchema: JsonSchema = objectSchema(\n {\n transport: opensteerRequestPlanTransportSchema,\n endpoint: opensteerRequestPlanEndpointSchema,\n parameters: arraySchema(opensteerRequestPlanParameterSchema),\n body: opensteerRequestPlanBodySchema,\n response: opensteerRequestPlanResponseExpectationSchema,\n recipes: opensteerRequestPlanRecipesSchema,\n retryPolicy: opensteerRequestRetryPolicySchema,\n auth: opensteerRequestPlanAuthSchema,\n },\n {\n title: \"OpensteerRequestPlanPayload\",\n required: [\"transport\", \"endpoint\"],\n },\n);\n\nexport const opensteerRegistryProvenanceSchema: JsonSchema = objectSchema(\n {\n source: stringSchema({ minLength: 1 }),\n sourceId: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRegistryProvenance\",\n required: [\"source\"],\n },\n);\n\nexport const opensteerRequestPlanFreshnessSchema: JsonSchema = objectSchema(\n {\n lastValidatedAt: integerSchema({ minimum: 0 }),\n staleAt: integerSchema({ minimum: 0 }),\n expiresAt: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerRequestPlanFreshness\",\n },\n);\n\nexport const opensteerRequestPlanRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n freshness: opensteerRequestPlanFreshnessSchema,\n payload: opensteerRequestPlanPayloadSchema,\n },\n {\n title: \"OpensteerRequestPlanRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst jsonValueSchema: JsonSchema = defineSchema({\n title: \"JsonValue\",\n});\n\nexport const opensteerRequestBodyInputSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n json: jsonValueSchema,\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerJsonRequestBodyInput\",\n required: [\"json\"],\n },\n ),\n objectSchema(\n {\n text: stringSchema(),\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerTextRequestBodyInput\",\n required: [\"text\"],\n },\n ),\n objectSchema(\n {\n base64: stringSchema(),\n contentType: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerBase64RequestBodyInput\",\n required: [\"base64\"],\n },\n ),\n ],\n {\n title: \"OpensteerRequestBodyInput\",\n },\n);\n\nconst opensteerRecipeRetryOverridesSchema: JsonSchema = objectSchema(\n {\n params: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeParams\",\n }),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeHeaders\",\n }),\n query: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeQuery\",\n }),\n body: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeBodyVariables\",\n }),\n },\n {\n title: \"OpensteerRecipeRetryOverrides\",\n },\n);\n\nconst opensteerAuthRecipeRetryOverridesSchema: JsonSchema = opensteerRecipeRetryOverridesSchema;\n\nconst opensteerRecipeStepResponseCaptureSchema: JsonSchema = objectSchema(\n {\n header: objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeHeaderCapture\",\n required: [\"name\", \"saveAs\"],\n },\n ),\n bodyJsonPointer: objectSchema(\n {\n pointer: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeBodyJsonPointerCapture\",\n required: [\"pointer\", \"saveAs\"],\n },\n ),\n bodyText: objectSchema(\n {\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeBodyTextCapture\",\n required: [\"saveAs\"],\n },\n ),\n },\n {\n title: \"OpensteerRecipeStepResponseCapture\",\n },\n);\n\nconst opensteerRecipeRequestStepInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeRequestHeaders\",\n }),\n query: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeRequestQuery\",\n }),\n body: opensteerRequestBodyInputSchema,\n followRedirects: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRecipeRequestStepInput\",\n required: [\"url\"],\n },\n);\n\nexport const opensteerRecipeHookRefSchema: JsonSchema = objectSchema(\n {\n specifier: stringSchema({ minLength: 1 }),\n export: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeHookRef\",\n required: [\"specifier\", \"export\"],\n },\n);\n\nexport const opensteerAuthRecipeHookRefSchema: JsonSchema = opensteerRecipeHookRefSchema;\n\nexport const opensteerRecipeStepSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n kind: enumSchema([\"goto\"] as const),\n url: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeGotoStep\",\n required: [\"kind\", \"url\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"reload\"] as const),\n },\n {\n title: \"OpensteerAuthRecipeReloadStep\",\n required: [\"kind\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForUrl\"] as const),\n includes: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForUrlStep\",\n required: [\"kind\", \"includes\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForNetwork\"] as const),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n includeBodies: { type: \"boolean\" },\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeWaitForNetworkStep\",\n required: [\"kind\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForCookie\"] as const),\n name: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForCookieStep\",\n required: [\"kind\", \"name\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"waitForStorage\"] as const),\n area: enumSchema([\"local\", \"session\"] as const),\n origin: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n timeoutMs: integerSchema({ minimum: 0 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeWaitForStorageStep\",\n required: [\"kind\", \"area\", \"origin\", \"key\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"readCookie\"] as const),\n name: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerAuthRecipeReadCookieStep\",\n required: [\"kind\", \"name\", \"saveAs\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"readStorage\"] as const),\n area: enumSchema([\"local\", \"session\"] as const),\n origin: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeReadStorageStep\",\n required: [\"kind\", \"area\", \"origin\", \"key\", \"saveAs\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"evaluate\"] as const),\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(jsonValueSchema),\n pageRef: pageRefSchema,\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeEvaluateStep\",\n required: [\"kind\", \"script\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"syncCookiesToJar\"] as const),\n jar: stringSchema({ minLength: 1 }),\n urls: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n }),\n },\n {\n title: \"OpensteerRecipeSyncCookiesToJarStep\",\n required: [\"kind\", \"jar\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"request\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerRecipeRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"sessionRequest\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerAuthRecipeSessionRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"directRequest\"] as const),\n request: opensteerRecipeRequestStepInputSchema,\n capture: opensteerRecipeStepResponseCaptureSchema,\n },\n {\n title: \"OpensteerAuthRecipeDirectRequestStep\",\n required: [\"kind\", \"request\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"solveCaptcha\"] as const),\n provider: captchaProviderSchema,\n apiKey: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 1 }),\n type: captchaTypeSchema,\n siteKey: stringSchema({ minLength: 1 }),\n pageUrl: stringSchema({ minLength: 1 }),\n saveAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRecipeSolveCaptchaStep\",\n required: [\"kind\", \"provider\", \"apiKey\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"hook\"] as const),\n hook: opensteerRecipeHookRefSchema,\n },\n {\n title: \"OpensteerRecipeHookStep\",\n required: [\"kind\", \"hook\"],\n },\n ),\n ],\n {\n title: \"OpensteerRecipeStep\",\n },\n);\n\nexport const opensteerAuthRecipeStepSchema: JsonSchema = opensteerRecipeStepSchema;\n\nexport const opensteerRecipePayloadSchema: JsonSchema = objectSchema(\n {\n description: stringSchema({ minLength: 1 }),\n steps: arraySchema(opensteerRecipeStepSchema, {\n minItems: 1,\n }),\n outputs: opensteerRecipeRetryOverridesSchema,\n },\n {\n title: \"OpensteerRecipePayload\",\n required: [\"steps\"],\n },\n);\n\nexport const opensteerAuthRecipePayloadSchema: JsonSchema = opensteerRecipePayloadSchema;\n\nexport const opensteerRecipeRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerRecipePayloadSchema,\n },\n {\n title: \"OpensteerRecipeRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerAuthRecipeRecordSchema: JsonSchema = opensteerRecipeRecordSchema;\n\nexport const opensteerNetworkQueryInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n recordId: stringSchema({ minLength: 1 }),\n requestId: stringSchema({ minLength: 1 }),\n capture: stringSchema({ minLength: 1 }),\n tag: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n includeBodies: { type: \"boolean\" },\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n },\n {\n title: \"OpensteerNetworkQueryInput\",\n },\n);\n\nexport const opensteerNetworkQueryOutputSchema: JsonSchema = objectSchema(\n {\n records: arraySchema(networkQueryRecordSchema),\n },\n {\n title: \"OpensteerNetworkQueryOutput\",\n required: [\"records\"],\n },\n);\n\nexport const opensteerNetworkTagInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n recordId: stringSchema({ minLength: 1 }),\n requestId: stringSchema({ minLength: 1 }),\n capture: stringSchema({ minLength: 1 }),\n tag: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n },\n {\n title: \"OpensteerNetworkTagInput\",\n required: [\"tag\"],\n },\n);\n\nexport const opensteerNetworkTagOutputSchema: JsonSchema = objectSchema(\n {\n taggedCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkTagOutput\",\n required: [\"taggedCount\"],\n },\n);\n\nexport const opensteerNetworkClearInputSchema: JsonSchema = objectSchema(\n {\n capture: stringSchema({ minLength: 1 }),\n tag: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerNetworkClearInput\",\n },\n);\n\nexport const opensteerNetworkClearOutputSchema: JsonSchema = objectSchema(\n {\n clearedCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkClearOutput\",\n required: [\"clearedCount\"],\n },\n);\n\nexport const opensteerWriteRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n freshness: opensteerRequestPlanFreshnessSchema,\n payload: opensteerRequestPlanPayloadSchema,\n },\n {\n title: \"OpensteerWriteRequestPlanInput\",\n required: [\"key\", \"version\", \"payload\"],\n },\n);\n\nexport const opensteerGetRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerGetRequestPlanInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerListRequestPlansInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerListRequestPlansInput\",\n },\n);\n\nexport const opensteerListRequestPlansOutputSchema: JsonSchema = objectSchema(\n {\n plans: arraySchema(opensteerRequestPlanRecordSchema),\n },\n {\n title: \"OpensteerListRequestPlansOutput\",\n required: [\"plans\"],\n },\n);\n\nexport const opensteerWriteRecipeInputSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerRecipePayloadSchema,\n },\n {\n title: \"OpensteerWriteRecipeInput\",\n required: [\"key\", \"version\", \"payload\"],\n },\n);\n\nexport const opensteerWriteAuthRecipeInputSchema: JsonSchema = opensteerWriteRecipeInputSchema;\n\nexport const opensteerGetRecipeInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerGetRecipeInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerGetAuthRecipeInputSchema: JsonSchema = opensteerGetRecipeInputSchema;\n\nexport const opensteerListRecipesInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerListRecipesInput\",\n },\n);\n\nexport const opensteerListAuthRecipesInputSchema: JsonSchema = opensteerListRecipesInputSchema;\n\nexport const opensteerListRecipesOutputSchema: JsonSchema = objectSchema(\n {\n recipes: arraySchema(opensteerRecipeRecordSchema),\n },\n {\n title: \"OpensteerListRecipesOutput\",\n required: [\"recipes\"],\n },\n);\n\nexport const opensteerListAuthRecipesOutputSchema: JsonSchema = opensteerListRecipesOutputSchema;\n\nexport const opensteerRunRecipeInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n variables: recordSchema(stringSchema(), {\n title: \"OpensteerRecipeVariables\",\n }),\n },\n {\n title: \"OpensteerRunRecipeInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerRunAuthRecipeInputSchema: JsonSchema = opensteerRunRecipeInputSchema;\n\nexport const opensteerRunRecipeOutputSchema: JsonSchema = objectSchema(\n {\n recipe: objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRecipeRef\",\n required: [\"id\", \"key\", \"version\"],\n },\n ),\n variables: recordSchema(stringSchema(), {\n title: \"OpensteerResolvedRecipeVariables\",\n }),\n overrides: opensteerRecipeRetryOverridesSchema,\n },\n {\n title: \"OpensteerRunRecipeOutput\",\n required: [\"recipe\", \"variables\"],\n },\n);\n\nexport const opensteerRunAuthRecipeOutputSchema: JsonSchema = opensteerRunRecipeOutputSchema;\n\nexport const opensteerRequestExecuteInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n params: opensteerRequestScalarMapSchema,\n query: opensteerRequestScalarMapSchema,\n headers: opensteerRequestScalarMapSchema,\n bodyVars: opensteerRequestScalarMapSchema,\n body: opensteerRequestBodyInputSchema,\n validateResponse: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRequestExecuteInput\",\n required: [\"key\"],\n },\n);\n\nexport const opensteerRawRequestInputSchema: JsonSchema = objectSchema(\n {\n transport: transportKindSchema,\n pageRef: pageRefSchema,\n cookieJar: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n headers: arraySchema(headerEntrySchema),\n body: opensteerRequestBodyInputSchema,\n followRedirects: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRawRequestInput\",\n required: [\"url\"],\n },\n);\n\nexport const opensteerRequestTransportResultSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n },\n {\n title: \"OpensteerRequestTransportResult\",\n required: [\"method\", \"url\", \"headers\"],\n },\n);\n\nexport const opensteerRequestResponseResultSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 100, maximum: 599 }),\n statusText: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n redirected: { type: \"boolean\" },\n },\n {\n title: \"OpensteerRequestResponseResult\",\n required: [\"url\", \"status\", \"statusText\", \"headers\", \"redirected\"],\n },\n);\n\nexport const opensteerRequestExecuteOutputSchema: JsonSchema = objectSchema(\n {\n plan: objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRequestPlanRef\",\n required: [\"id\", \"key\", \"version\"],\n },\n ),\n request: opensteerRequestTransportResultSchema,\n response: opensteerRequestResponseResultSchema,\n recovery: objectSchema(\n {\n attempted: { type: \"boolean\" },\n succeeded: { type: \"boolean\" },\n matchedFailurePolicy: { type: \"boolean\" },\n recipe: objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerResolvedRecoveryRecipeRef\",\n required: [\"key\", \"version\"],\n },\n ),\n },\n {\n title: \"OpensteerRequestRecoveryMetadata\",\n required: [\"attempted\", \"succeeded\"],\n },\n ),\n data: jsonValueSchema,\n },\n {\n title: \"OpensteerRequestExecuteOutput\",\n required: [\"plan\", \"request\", \"response\"],\n },\n);\n\nexport const opensteerRawRequestOutputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n request: opensteerRequestTransportResultSchema,\n response: opensteerRequestResponseResultSchema,\n data: jsonValueSchema,\n },\n {\n title: \"OpensteerRawRequestOutput\",\n required: [\"recordId\", \"request\", \"response\"],\n },\n);\n\nexport const opensteerInferRequestPlanInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n },\n {\n title: \"OpensteerInferRequestPlanInput\",\n required: [\"recordId\", \"key\", \"version\"],\n },\n);\n","export type {\n CookieSameSite,\n CookiePriority,\n CookieRecord,\n StorageEntry,\n IndexedDbRecord,\n IndexedDbIndexSnapshot,\n IndexedDbObjectStoreSnapshot,\n IndexedDbDatabaseSnapshot,\n StorageOriginSnapshot,\n SessionStorageSnapshot,\n StorageSnapshot,\n} from \"@opensteer/browser-core\";\n\nimport { frameRefSchema, pageRefSchema, sessionRefSchema } from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nconst jsonUnknownSchema: JsonSchema = {};\n\nexport const cookieSameSiteSchema: JsonSchema = enumSchema([\"strict\", \"lax\", \"none\"] as const, {\n title: \"CookieSameSite\",\n});\n\nexport const cookiePrioritySchema: JsonSchema = enumSchema([\"low\", \"medium\", \"high\"] as const, {\n title: \"CookiePriority\",\n});\n\nexport const cookieRecordSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n name: stringSchema(),\n value: stringSchema(),\n domain: stringSchema(),\n path: stringSchema(),\n secure: {\n type: \"boolean\",\n },\n httpOnly: {\n type: \"boolean\",\n },\n sameSite: cookieSameSiteSchema,\n priority: cookiePrioritySchema,\n partitionKey: stringSchema(),\n session: {\n type: \"boolean\",\n },\n expiresAt: {\n type: [\"number\", \"null\"],\n },\n },\n {\n title: \"CookieRecord\",\n required: [\"sessionRef\", \"name\", \"value\", \"domain\", \"path\", \"secure\", \"httpOnly\", \"session\"],\n },\n);\n\nexport const storageEntrySchema: JsonSchema = objectSchema(\n {\n key: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"StorageEntry\",\n required: [\"key\", \"value\"],\n },\n);\n\nexport const indexedDbRecordSchema: JsonSchema = objectSchema(\n {\n key: jsonUnknownSchema,\n primaryKey: jsonUnknownSchema,\n value: jsonUnknownSchema,\n },\n {\n title: \"IndexedDbRecord\",\n required: [\"key\", \"value\"],\n },\n);\n\nexport const indexedDbIndexSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n keyPath: {\n oneOf: [stringSchema(), arraySchema(stringSchema())],\n },\n multiEntry: {\n type: \"boolean\",\n },\n unique: {\n type: \"boolean\",\n },\n },\n {\n title: \"IndexedDbIndexSnapshot\",\n required: [\"name\", \"multiEntry\", \"unique\"],\n },\n);\n\nexport const indexedDbObjectStoreSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n keyPath: {\n oneOf: [stringSchema(), arraySchema(stringSchema())],\n },\n autoIncrement: {\n type: \"boolean\",\n },\n indexes: arraySchema(indexedDbIndexSnapshotSchema),\n records: arraySchema(indexedDbRecordSchema),\n },\n {\n title: \"IndexedDbObjectStoreSnapshot\",\n required: [\"name\", \"autoIncrement\", \"indexes\", \"records\"],\n },\n);\n\nexport const indexedDbDatabaseSnapshotSchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n version: numberSchema(),\n objectStores: arraySchema(indexedDbObjectStoreSnapshotSchema),\n },\n {\n title: \"IndexedDbDatabaseSnapshot\",\n required: [\"name\", \"version\", \"objectStores\"],\n },\n);\n\nexport const storageOriginSnapshotSchema: JsonSchema = objectSchema(\n {\n origin: stringSchema(),\n localStorage: arraySchema(storageEntrySchema),\n indexedDb: arraySchema(indexedDbDatabaseSnapshotSchema),\n },\n {\n title: \"StorageOriginSnapshot\",\n required: [\"origin\", \"localStorage\"],\n },\n);\n\nexport const sessionStorageSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n origin: stringSchema(),\n entries: arraySchema(storageEntrySchema),\n },\n {\n title: \"SessionStorageSnapshot\",\n required: [\"pageRef\", \"frameRef\", \"origin\", \"entries\"],\n },\n);\n\nexport const storageSnapshotSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n capturedAt: integerSchema({ minimum: 0 }),\n origins: arraySchema(storageOriginSnapshotSchema),\n sessionStorage: arraySchema(sessionStorageSnapshotSchema),\n },\n {\n title: \"StorageSnapshot\",\n required: [\"sessionRef\", \"capturedAt\", \"origins\"],\n },\n);\n","export type {\n ScreenshotFormat,\n HtmlSnapshot,\n DomSnapshotNode,\n ShadowDomSnapshotMode,\n DomSnapshot,\n HitTestResult,\n} from \"@opensteer/browser-core\";\n\nexport { findDomSnapshotNode, findDomSnapshotNodeByRef } from \"@opensteer/browser-core\";\n\nimport type { DocumentEpoch, DocumentRef, FrameRef, PageRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n nodeRefSchema,\n pageRefSchema,\n} from \"./identity.js\";\nimport type { ExternalBinaryLocation } from \"./binary-location.js\";\nimport { externalBinaryLocationSchema } from \"./binary-location.js\";\nimport type { CoordinateSpace, Rect, Size } from \"./geometry.js\";\nimport {\n coordinateSpaceSchema,\n pointSchema,\n quadSchema,\n rectSchema,\n sizeSchema,\n} from \"./geometry.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nexport interface ScreenshotArtifact {\n readonly pageRef: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n readonly payload: ExternalBinaryLocation;\n readonly format: \"png\" | \"jpeg\" | \"webp\";\n readonly size: Size;\n readonly coordinateSpace: CoordinateSpace;\n readonly clip?: Rect;\n}\n\nexport const screenshotFormatSchema: JsonSchema = enumSchema([\"png\", \"jpeg\", \"webp\"] as const, {\n title: \"ScreenshotFormat\",\n});\n\nexport const screenshotArtifactSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n payload: externalBinaryLocationSchema,\n format: screenshotFormatSchema,\n size: sizeSchema,\n coordinateSpace: coordinateSpaceSchema,\n clip: rectSchema,\n },\n {\n title: \"ScreenshotArtifact\",\n required: [\"pageRef\", \"payload\", \"format\", \"size\", \"coordinateSpace\"],\n },\n);\n\nexport const htmlSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n capturedAt: integerSchema({ minimum: 0 }),\n html: stringSchema(),\n },\n {\n title: \"HtmlSnapshot\",\n required: [\"pageRef\", \"frameRef\", \"documentRef\", \"documentEpoch\", \"url\", \"capturedAt\", \"html\"],\n },\n);\n\nexport const domSnapshotNodeSchema: JsonSchema = objectSchema(\n {\n snapshotNodeId: integerSchema({ minimum: 0 }),\n nodeRef: nodeRefSchema,\n parentSnapshotNodeId: integerSchema({ minimum: 0 }),\n childSnapshotNodeIds: arraySchema(integerSchema({ minimum: 0 })),\n shadowRootType: enumSchema([\"open\", \"closed\", \"user-agent\"] as const),\n shadowHostNodeRef: nodeRefSchema,\n contentDocumentRef: documentRefSchema,\n nodeType: integerSchema({ minimum: 0 }),\n nodeName: stringSchema(),\n nodeValue: stringSchema(),\n textContent: stringSchema(),\n computedStyle: objectSchema(\n {\n display: stringSchema(),\n visibility: stringSchema(),\n opacity: stringSchema(),\n position: stringSchema(),\n cursor: stringSchema(),\n overflowX: stringSchema(),\n overflowY: stringSchema(),\n },\n {\n required: [],\n },\n ),\n attributes: arraySchema(\n objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n required: [\"name\", \"value\"],\n },\n ),\n ),\n layout: objectSchema(\n {\n rect: rectSchema,\n quad: quadSchema,\n paintOrder: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n },\n {\n title: \"DomSnapshotNode\",\n required: [\n \"snapshotNodeId\",\n \"childSnapshotNodeIds\",\n \"nodeType\",\n \"nodeName\",\n \"nodeValue\",\n \"attributes\",\n ],\n },\n);\n\nexport const shadowDomSnapshotModeSchema: JsonSchema = enumSchema(\n [\"flattened\", \"preserved\", \"unsupported\"] as const,\n {\n title: \"ShadowDomSnapshotMode\",\n },\n);\n\nexport const domSnapshotSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n parentDocumentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n url: stringSchema(),\n capturedAt: integerSchema({ minimum: 0 }),\n rootSnapshotNodeId: integerSchema({ minimum: 0 }),\n shadowDomMode: shadowDomSnapshotModeSchema,\n geometryCoordinateSpace: coordinateSpaceSchema,\n nodes: arraySchema(domSnapshotNodeSchema),\n },\n {\n title: \"DomSnapshot\",\n required: [\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"url\",\n \"capturedAt\",\n \"rootSnapshotNodeId\",\n \"shadowDomMode\",\n \"nodes\",\n ],\n },\n);\n\nexport const hitTestResultSchema: JsonSchema = objectSchema(\n {\n inputPoint: pointSchema,\n inputCoordinateSpace: coordinateSpaceSchema,\n resolvedPoint: pointSchema,\n resolvedCoordinateSpace: coordinateSpaceSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n targetQuad: quadSchema,\n obscured: {\n type: \"boolean\",\n },\n pointerEventsSkipped: {\n type: \"boolean\",\n },\n },\n {\n title: \"HitTestResult\",\n required: [\n \"inputPoint\",\n \"inputCoordinateSpace\",\n \"resolvedPoint\",\n \"resolvedCoordinateSpace\",\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"obscured\",\n \"pointerEventsSkipped\",\n ],\n },\n);\n","import { arraySchema, enumSchema, objectSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const opensteerCapabilities = [\n \"sessions.manage\",\n \"pages.manage\",\n \"pages.navigate\",\n \"input.pointer\",\n \"input.keyboard\",\n \"input.touch\",\n \"artifacts.screenshot\",\n \"execution.pause\",\n \"execution.resume\",\n \"execution.freeze\",\n \"inspect.pages\",\n \"inspect.frames\",\n \"inspect.html\",\n \"inspect.domSnapshot\",\n \"inspect.text\",\n \"inspect.attributes\",\n \"inspect.hitTest\",\n \"inspect.viewportMetrics\",\n \"inspect.network\",\n \"inspect.networkBodies\",\n \"inspect.cookies\",\n \"inspect.localStorage\",\n \"inspect.sessionStorage\",\n \"inspect.indexedDb\",\n \"transport.sessionHttp\",\n \"instrumentation.initScripts\",\n \"instrumentation.routing\",\n \"events.pageLifecycle\",\n \"events.dialog\",\n \"events.download\",\n \"events.chooser\",\n \"events.worker\",\n \"events.console\",\n \"events.pageError\",\n \"events.websocket\",\n \"events.eventStream\",\n \"events.executionState\",\n \"surface.rest\",\n \"surface.mcp\",\n] as const;\n\nexport type OpensteerCapability = (typeof opensteerCapabilities)[number];\n\nexport interface OpensteerCapabilityDescriptor {\n readonly key: OpensteerCapability;\n readonly description: string;\n readonly stability: \"stable\" | \"experimental\";\n}\n\nexport const opensteerCapabilityDescriptors: readonly OpensteerCapabilityDescriptor[] = [\n {\n key: \"sessions.manage\",\n description: \"Create and close isolated browser sessions.\",\n stability: \"stable\",\n },\n {\n key: \"pages.manage\",\n description: \"Create, close, and activate top-level browsing contexts.\",\n stability: \"stable\",\n },\n {\n key: \"pages.navigate\",\n description: \"Navigate, reload, and traverse session history.\",\n stability: \"stable\",\n },\n {\n key: \"input.pointer\",\n description: \"Inject pointer movement, click, and wheel input.\",\n stability: \"stable\",\n },\n {\n key: \"input.keyboard\",\n description: \"Inject key presses and raw text input.\",\n stability: \"stable\",\n },\n { key: \"input.touch\", description: \"Inject touch or gesture input.\", stability: \"experimental\" },\n {\n key: \"artifacts.screenshot\",\n description: \"Capture browser-rendered screenshots as evidence artifacts.\",\n stability: \"stable\",\n },\n {\n key: \"execution.pause\",\n description: \"Pause active page execution between protocol steps.\",\n stability: \"stable\",\n },\n {\n key: \"execution.resume\",\n description: \"Resume previously paused page execution.\",\n stability: \"stable\",\n },\n {\n key: \"execution.freeze\",\n description: \"Freeze timers or script execution at the engine boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.pages\",\n description: \"Enumerate pages and read page metadata.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.frames\",\n description: \"Enumerate frames and read frame metadata.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.html\",\n description: \"Read raw HTML snapshots without selector semantics.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.domSnapshot\",\n description: \"Read structured DOM snapshots with node bindings.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.text\",\n description: \"Read raw text from a specific node binding.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.attributes\",\n description: \"Read ordered attributes from a specific node binding.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.hitTest\",\n description: \"Resolve a point into the browser's current DOM target.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.viewportMetrics\",\n description: \"Read viewport and scroll geometry.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.network\",\n description: \"Read normalized network records without mutating traffic.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.networkBodies\",\n description: \"Expose captured request and response bodies in network records.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.cookies\",\n description: \"Read browser cookie state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.localStorage\",\n description: \"Read localStorage state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.sessionStorage\",\n description: \"Read sessionStorage state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"inspect.indexedDb\",\n description: \"Read IndexedDB state through the session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"transport.sessionHttp\",\n description: \"Execute HTTP requests inside the live browser session boundary.\",\n stability: \"stable\",\n },\n {\n key: \"instrumentation.initScripts\",\n description: \"Inject scripts before page scripts execute inside a browser session.\",\n stability: \"stable\",\n },\n {\n key: \"instrumentation.routing\",\n description: \"Intercept, continue, replace, or abort browser network requests.\",\n stability: \"stable\",\n },\n {\n key: \"events.pageLifecycle\",\n description: \"Emit normalized page and popup lifecycle events.\",\n stability: \"stable\",\n },\n { key: \"events.dialog\", description: \"Emit dialog lifecycle events.\", stability: \"stable\" },\n { key: \"events.download\", description: \"Emit download lifecycle events.\", stability: \"stable\" },\n {\n key: \"events.chooser\",\n description: \"Emit file chooser and select picker events.\",\n stability: \"stable\",\n },\n { key: \"events.worker\", description: \"Emit worker lifecycle events.\", stability: \"experimental\" },\n {\n key: \"events.console\",\n description: \"Emit normalized console log events.\",\n stability: \"stable\",\n },\n {\n key: \"events.pageError\",\n description: \"Emit page-level uncaught error events.\",\n stability: \"stable\",\n },\n {\n key: \"events.websocket\",\n description: \"Emit websocket open, frame, and close events.\",\n stability: \"experimental\",\n },\n {\n key: \"events.eventStream\",\n description: \"Emit server-sent event stream messages.\",\n stability: \"experimental\",\n },\n {\n key: \"events.executionState\",\n description: \"Emit pause, resume, and frozen execution events.\",\n stability: \"stable\",\n },\n {\n key: \"surface.rest\",\n description: \"Expose the protocol over the canonical REST transport.\",\n stability: \"stable\",\n },\n {\n key: \"surface.mcp\",\n description: \"Expose the protocol over Model Context Protocol tools.\",\n stability: \"stable\",\n },\n] as const;\n\nexport const opensteerCapabilitySchema: JsonSchema = enumSchema(opensteerCapabilities, {\n title: \"OpensteerCapability\",\n});\n\nexport const opensteerCapabilitySetSchema: JsonSchema = arraySchema(opensteerCapabilitySchema, {\n title: \"OpensteerCapabilitySet\",\n uniqueItems: true,\n});\n\nexport const opensteerCapabilityDescriptorSchema: JsonSchema = objectSchema(\n {\n key: opensteerCapabilitySchema,\n description: stringSchema(),\n stability: enumSchema([\"stable\", \"experimental\"] as const),\n },\n {\n title: \"OpensteerCapabilityDescriptor\",\n required: [\"key\", \"description\", \"stability\"],\n },\n);\n\nexport const opensteerCapabilityDescriptorListSchema: JsonSchema = arraySchema(\n opensteerCapabilityDescriptorSchema,\n {\n title: \"OpensteerCapabilityDescriptorList\",\n uniqueItems: true,\n },\n);\n\nexport function hasCapability(\n capabilities: readonly OpensteerCapability[],\n capability: OpensteerCapability,\n): boolean {\n return capabilities.includes(capability);\n}\n","import type { CookieRecord } from \"@opensteer/browser-core\";\n\nexport const cloudActionMethods = [\n \"goto\",\n \"snapshot\",\n \"screenshot\",\n \"state\",\n \"click\",\n \"dblclick\",\n \"rightclick\",\n \"hover\",\n \"input\",\n \"select\",\n \"scroll\",\n \"tabs\",\n \"newTab\",\n \"switchTab\",\n \"closeTab\",\n \"getCookies\",\n \"setCookie\",\n \"clearCookies\",\n \"pressKey\",\n \"type\",\n \"getElementText\",\n \"getElementValue\",\n \"getElementAttributes\",\n \"getElementBoundingBox\",\n \"getHtml\",\n \"getTitle\",\n \"uploadFile\",\n \"exportCookies\",\n \"importCookies\",\n \"waitForText\",\n \"extract\",\n \"extractFromPlan\",\n \"clearCache\",\n] as const;\n\nexport type CloudActionMethod = (typeof cloudActionMethods)[number];\n\nexport const cloudErrorCodes = [\n \"CLOUD_AUTH_FAILED\",\n \"CLOUD_SESSION_NOT_FOUND\",\n \"CLOUD_SESSION_CLOSED\",\n \"CLOUD_UNSUPPORTED_METHOD\",\n \"CLOUD_INVALID_REQUEST\",\n \"CLOUD_MODEL_NOT_ALLOWED\",\n \"CLOUD_ACTION_FAILED\",\n \"CLOUD_CAPACITY_EXHAUSTED\",\n \"CLOUD_RUNTIME_UNAVAILABLE\",\n \"CLOUD_RUNTIME_MISMATCH\",\n \"CLOUD_SESSION_STALE\",\n \"CLOUD_CONTROL_PLANE_ERROR\",\n \"CLOUD_CONTRACT_MISMATCH\",\n \"CLOUD_PROXY_UNAVAILABLE\",\n \"CLOUD_PROXY_REQUIRED\",\n \"CLOUD_BILLING_LIMIT_REACHED\",\n \"CLOUD_PLAN_RESTRICTED\",\n \"CLOUD_RATE_LIMITED\",\n \"CLOUD_BROWSER_PROFILE_NOT_FOUND\",\n \"CLOUD_BROWSER_PROFILE_BUSY\",\n \"CLOUD_BROWSER_PROFILE_DISABLED\",\n \"CLOUD_BROWSER_PROFILE_NOT_READY\",\n \"CLOUD_BROWSER_PROFILE_PROXY_UNAVAILABLE\",\n \"CLOUD_BROWSER_PROFILE_SYNC_FAILED\",\n \"CLOUD_INTERNAL\",\n] as const;\n\nexport type CloudErrorCode = (typeof cloudErrorCodes)[number];\n\nexport const cloudSessionStatuses = [\n \"provisioning\",\n \"active\",\n \"closing\",\n \"closed\",\n \"failed\",\n] as const;\n\nexport type CloudSessionStatus = (typeof cloudSessionStatuses)[number];\n\nexport const cloudSessionSourceTypes = [\n \"agent-thread\",\n \"agent-run\",\n \"project-agent-run\",\n \"local-cloud\",\n \"manual\",\n] as const;\n\nexport type CloudSessionSourceType = (typeof cloudSessionSourceTypes)[number];\nexport type CloudSessionVisibilityScope = \"team\" | \"owner\";\nexport type CloudProxyMode = \"disabled\" | \"optional\" | \"required\";\nexport type CloudProxyProtocol = \"http\" | \"https\" | \"socks5\";\nexport type CloudFingerprintMode = \"off\" | \"auto\";\nexport type BrowserProfileStatus = \"active\" | \"archived\" | \"error\";\nexport type BrowserProfileProxyPolicy = \"strict_sticky\";\nexport type BrowserProfileArchiveFormat = \"tar.gz\";\nexport type PortableBrowserProfileSnapshotFormat = \"portable-cookies-v1+json.gz\";\nexport type PortableBrowserFamily = \"chromium\";\nexport type BrowserProfileImportStatus =\n | \"awaiting_upload\"\n | \"queued\"\n | \"processing\"\n | \"ready\"\n | \"failed\";\n\nexport interface PortableBrowserProfileSnapshotSource {\n readonly browserFamily: PortableBrowserFamily;\n readonly browserName?: string;\n readonly browserMajor?: string;\n readonly browserBrand?: string;\n readonly captureMethod?: string;\n readonly platform?: string;\n readonly capturedAt: number;\n}\n\nexport type PortableBrowserProfileCookieRecord = Omit<CookieRecord, \"sessionRef\">;\n\nexport interface PortableBrowserProfileSnapshot {\n readonly version: \"portable-cookies-v1\";\n readonly source: PortableBrowserProfileSnapshotSource;\n readonly cookies: readonly PortableBrowserProfileCookieRecord[];\n}\n\nexport interface BrowserProfileImportSnapshotSummary {\n readonly source: PortableBrowserProfileSnapshotSource;\n readonly cookieCount: number;\n readonly domainCount: number;\n}\n\nexport interface CloudViewport {\n readonly width: number;\n readonly height: number;\n}\n\nexport interface CloudGeolocation {\n readonly latitude: number;\n readonly longitude: number;\n readonly accuracy?: number;\n}\n\nexport interface CloudBrowserContextConfig {\n readonly viewport?: CloudViewport;\n readonly locale?: string;\n readonly timezoneId?: string;\n readonly geolocation?: CloudGeolocation;\n readonly colorScheme?: \"light\" | \"dark\" | \"no-preference\";\n readonly userAgent?: string;\n readonly javaScriptEnabled?: boolean;\n readonly ignoreHTTPSErrors?: boolean;\n}\n\nexport interface CloudBrowserExtensionConfig {\n readonly includeDefaults?: boolean;\n readonly extensionKeys?: readonly string[];\n}\n\nexport interface CloudBrowserLaunchConfig {\n readonly headless?: boolean;\n readonly context?: CloudBrowserContextConfig;\n readonly chromeArgs?: readonly string[];\n readonly extensions?: CloudBrowserExtensionConfig;\n}\n\nexport interface CloudProxyPreference {\n readonly mode?: CloudProxyMode;\n readonly countryCode?: string;\n readonly region?: string;\n readonly city?: string;\n readonly proxyId?: string;\n}\n\nexport interface CloudFingerprintPreference {\n readonly mode?: CloudFingerprintMode;\n readonly locales?: readonly string[];\n readonly minWidth?: number;\n readonly maxWidth?: number;\n readonly minHeight?: number;\n readonly maxHeight?: number;\n readonly slim?: boolean;\n}\n\nexport interface CloudBrowserProfilePreference {\n readonly profileId: string;\n readonly reuseIfActive?: boolean;\n}\n\nexport type CloudBrowserProfileLaunchPreference = CloudBrowserProfilePreference;\n\nexport interface CloudSessionLaunchConfig {\n readonly browser?: CloudBrowserLaunchConfig;\n readonly proxy?: CloudProxyPreference;\n readonly fingerprint?: CloudFingerprintPreference;\n readonly browserProfile?: CloudBrowserProfilePreference;\n}\n\nexport interface CloudSessionSummary {\n readonly sessionId: string;\n readonly workspaceId: string;\n readonly state: CloudSessionStatus;\n readonly createdAt: number;\n readonly sourceType: CloudSessionSourceType;\n readonly sourceRef?: string;\n readonly label?: string;\n}\n\nexport interface CloudSelectorCacheImportEntry {\n readonly workspace: string;\n readonly method: string;\n readonly descriptionHash: string;\n readonly description?: string;\n readonly path: unknown;\n readonly schemaHash?: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nexport interface CloudSelectorCacheImportRequest {\n readonly entries: readonly CloudSelectorCacheImportEntry[];\n}\n\nexport interface CloudSelectorCacheImportResponse {\n readonly imported: number;\n readonly inserted: number;\n readonly updated: number;\n readonly skipped: number;\n}\n\nexport interface CloudRegistryImportEntry {\n readonly workspace: string;\n readonly recordId: string;\n readonly key: string;\n readonly version: string;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: unknown;\n readonly payload: unknown;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nexport interface CloudRequestPlanImportEntry extends CloudRegistryImportEntry {\n readonly freshness?: unknown;\n}\n\nexport interface CloudRegistryImportRequest {\n readonly entries: readonly CloudRegistryImportEntry[];\n}\n\nexport interface CloudRequestPlanImportRequest {\n readonly entries: readonly CloudRequestPlanImportEntry[];\n}\n\nexport interface CloudRegistryImportResponse {\n readonly imported: number;\n readonly inserted: number;\n readonly updated: number;\n readonly skipped: number;\n}\n\nexport type ActionFailureCode =\n | \"TARGET_NOT_FOUND\"\n | \"TARGET_UNAVAILABLE\"\n | \"TARGET_STALE\"\n | \"TARGET_AMBIGUOUS\"\n | \"BLOCKED_BY_INTERCEPTOR\"\n | \"NOT_VISIBLE\"\n | \"NOT_ENABLED\"\n | \"NOT_EDITABLE\"\n | \"INVALID_TARGET\"\n | \"INVALID_OPTIONS\"\n | \"ACTION_TIMEOUT\"\n | \"UNKNOWN\";\n\nexport type ActionFailureClassificationSource =\n | \"typed_error\"\n | \"playwright_call_log\"\n | \"dom_probe\"\n | \"message_heuristic\"\n | \"unknown\";\n\nexport interface ActionFailureBlocker {\n readonly tag: string;\n readonly id: string | null;\n readonly classes: readonly string[];\n readonly role: string | null;\n readonly text: string | null;\n}\n\nexport interface ActionFailureDetails {\n readonly blocker?: ActionFailureBlocker;\n readonly observation?: string;\n}\n\nexport interface ActionFailure {\n readonly code: ActionFailureCode;\n readonly message: string;\n readonly retryable: boolean;\n readonly classificationSource: ActionFailureClassificationSource;\n readonly details?: ActionFailureDetails;\n}\n\nexport interface CloudActionRequest {\n readonly id: number;\n readonly method: CloudActionMethod;\n readonly args: Readonly<Record<string, unknown>>;\n readonly sessionId: string;\n readonly token: string;\n}\n\nexport interface CloudActionSuccess {\n readonly id: number;\n readonly ok: true;\n readonly result: unknown;\n}\n\nexport interface CloudActionFailureDetails {\n readonly actionFailure?: ActionFailure;\n}\n\nexport interface CloudActionFailure {\n readonly id: number;\n readonly ok: false;\n readonly error: string;\n readonly code: CloudErrorCode;\n readonly details?: CloudActionFailureDetails;\n}\n\nexport type CloudActionResponse = CloudActionSuccess | CloudActionFailure;\n\nexport interface BrowserProfileDescriptor {\n readonly profileId: string;\n readonly teamId: string;\n readonly ownerUserId: string;\n readonly name: string;\n readonly status: BrowserProfileStatus;\n readonly proxyPolicy: BrowserProfileProxyPolicy;\n readonly stickyProxyId?: string;\n readonly proxyCountryCode?: string;\n readonly proxyRegion?: string;\n readonly proxyCity?: string;\n readonly fingerprintMode: CloudFingerprintMode;\n readonly fingerprintHash?: string;\n readonly activeSessionId?: string;\n readonly lastSessionId?: string;\n readonly lastLaunchedAt?: number;\n readonly latestRevision?: number;\n readonly latestStorageId?: string;\n readonly latestSizeBytes?: number;\n readonly latestArchiveSha256?: string;\n readonly latestArchiveFormat?: BrowserProfileArchiveFormat;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly lastError?: string;\n}\n\nexport interface BrowserProfileListResponse {\n readonly profiles: readonly BrowserProfileDescriptor[];\n readonly nextCursor?: string;\n}\n\nexport interface BrowserProfileCreateRequest {\n readonly name: string;\n readonly proxy?: {\n readonly proxyId?: string;\n readonly countryCode?: string;\n readonly region?: string;\n readonly city?: string;\n };\n readonly fingerprint?: {\n readonly mode?: CloudFingerprintMode;\n };\n}\n\nexport interface BrowserProfileImportCreateRequest {\n readonly profileId: string;\n}\n\nexport interface BrowserProfileImportCreateResponse {\n readonly importId: string;\n readonly profileId: string;\n readonly status: BrowserProfileImportStatus;\n readonly uploadUrl: string;\n readonly uploadMethod: \"PUT\";\n readonly uploadFormat: PortableBrowserProfileSnapshotFormat;\n readonly maxUploadBytes: number;\n}\n\nexport interface BrowserProfileImportDescriptor {\n readonly importId: string;\n readonly profileId: string;\n readonly status: BrowserProfileImportStatus;\n readonly uploadFormat: PortableBrowserProfileSnapshotFormat;\n readonly storageId?: string;\n readonly revision?: number;\n readonly error?: string;\n readonly snapshotSummary?: BrowserProfileImportSnapshotSummary;\n readonly createdAt: number;\n readonly updatedAt: number;\n}\n\nconst cloudActionMethodSet = new Set<CloudActionMethod>(cloudActionMethods);\nconst cloudErrorCodeSet = new Set<CloudErrorCode>(cloudErrorCodes);\nconst cloudSessionSourceTypeSet = new Set<CloudSessionSourceType>(cloudSessionSourceTypes);\nconst cloudSessionStatusSet = new Set<CloudSessionStatus>(cloudSessionStatuses);\n\nexport function isCloudActionMethod(value: unknown): value is CloudActionMethod {\n return typeof value === \"string\" && cloudActionMethodSet.has(value as CloudActionMethod);\n}\n\nexport function isCloudErrorCode(value: unknown): value is CloudErrorCode {\n return typeof value === \"string\" && cloudErrorCodeSet.has(value as CloudErrorCode);\n}\n\nexport function isCloudSessionSourceType(value: unknown): value is CloudSessionSourceType {\n return (\n typeof value === \"string\" && cloudSessionSourceTypeSet.has(value as CloudSessionSourceType)\n );\n}\n\nexport function isCloudSessionStatus(value: unknown): value is CloudSessionStatus {\n return typeof value === \"string\" && cloudSessionStatusSet.has(value as CloudSessionStatus);\n}\n","import type { OpensteerCapability } from \"./capabilities.js\";\nimport { opensteerCapabilitySchema } from \"./capabilities.js\";\nimport { objectSchema, recordSchema, stringSchema, type JsonSchema } from \"./json.js\";\n\nexport const opensteerErrorCodes = [\n \"invalid-request\",\n \"invalid-argument\",\n \"invalid-ref\",\n \"unsupported-version\",\n \"unsupported-operation\",\n \"unsupported-capability\",\n \"not-found\",\n \"stale-node-ref\",\n \"session-closed\",\n \"page-closed\",\n \"frame-detached\",\n \"timeout\",\n \"navigation-failed\",\n \"permission-denied\",\n \"conflict\",\n \"profile-unavailable\",\n \"auth-failure\",\n \"auth-recovery-failed\",\n \"browser-required\",\n \"rate-limited\",\n \"operation-failed\",\n \"internal\",\n] as const;\n\nexport type OpensteerErrorCode = (typeof opensteerErrorCodes)[number];\n\nexport interface OpensteerError {\n readonly code: OpensteerErrorCode;\n readonly message: string;\n readonly retriable: boolean;\n readonly capability?: OpensteerCapability;\n readonly details?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerErrorOptions {\n readonly cause?: unknown;\n readonly retriable?: boolean;\n readonly capability?: OpensteerCapability;\n readonly details?: Readonly<Record<string, unknown>>;\n}\n\nexport class OpensteerProtocolError extends Error {\n readonly code: OpensteerErrorCode;\n readonly retriable: boolean;\n readonly capability: OpensteerCapability | undefined;\n readonly details: Readonly<Record<string, unknown>> | undefined;\n\n constructor(code: OpensteerErrorCode, message: string, options: OpensteerErrorOptions = {}) {\n super(message, { cause: options.cause });\n this.name = \"OpensteerProtocolError\";\n this.code = code;\n this.retriable = options.retriable ?? false;\n this.capability = options.capability;\n this.details = options.details;\n }\n}\n\nexport function createOpensteerError(\n code: OpensteerErrorCode,\n message: string,\n options: Omit<OpensteerErrorOptions, \"cause\"> = {},\n): OpensteerError {\n return {\n code,\n message,\n retriable: options.retriable ?? false,\n ...(options.capability === undefined ? {} : { capability: options.capability }),\n ...(options.details === undefined ? {} : { details: options.details }),\n };\n}\n\nexport function unsupportedCapabilityError(capability: OpensteerCapability): OpensteerError {\n return createOpensteerError(\n \"unsupported-capability\",\n `capability ${capability} is not supported by this surface`,\n {\n capability,\n details: { capability },\n },\n );\n}\n\nexport function isOpensteerProtocolError(value: unknown): value is OpensteerProtocolError {\n return value instanceof OpensteerProtocolError;\n}\n\nexport function toOpensteerError(\n error: Pick<\n OpensteerProtocolError | OpensteerError,\n \"code\" | \"message\" | \"retriable\" | \"capability\" | \"details\"\n >,\n): OpensteerError {\n return createOpensteerError(error.code, error.message, {\n retriable: error.retriable,\n ...(error.capability === undefined ? {} : { capability: error.capability }),\n ...(error.details === undefined ? {} : { details: error.details }),\n });\n}\n\nexport function unsupportedVersionError(version: string): OpensteerError {\n return createOpensteerError(\n \"unsupported-version\",\n `protocol version ${version} is not supported`,\n {\n details: { version },\n },\n );\n}\n\nexport const opensteerErrorCodeSchema: JsonSchema = {\n title: \"OpensteerErrorCode\",\n enum: opensteerErrorCodes,\n};\n\nexport const opensteerErrorSchema: JsonSchema = objectSchema(\n {\n code: opensteerErrorCodeSchema,\n message: stringSchema(),\n retriable: {\n type: \"boolean\",\n },\n capability: opensteerCapabilitySchema,\n details: recordSchema({}),\n },\n {\n title: \"OpensteerError\",\n required: [\"code\", \"message\", \"retriable\"],\n },\n);\n\nexport function httpStatusForOpensteerError(error: OpensteerError): number {\n switch (error.code) {\n case \"invalid-request\":\n case \"invalid-argument\":\n case \"invalid-ref\":\n case \"unsupported-version\":\n return 400;\n case \"permission-denied\":\n return 403;\n case \"not-found\":\n case \"stale-node-ref\":\n case \"session-closed\":\n case \"page-closed\":\n case \"frame-detached\":\n return 404;\n case \"conflict\":\n case \"profile-unavailable\":\n case \"auth-failure\":\n case \"auth-recovery-failed\":\n return 409;\n case \"browser-required\":\n return 412;\n case \"rate-limited\":\n return 429;\n case \"unsupported-operation\":\n case \"unsupported-capability\":\n return 501;\n case \"timeout\":\n return 504;\n case \"navigation-failed\":\n case \"operation-failed\":\n return 502;\n case \"internal\":\n return 500;\n }\n\n return 500;\n}\n","export type { ConsoleLevel } from \"@opensteer/browser-core\";\n\nexport type { PageCreatedStepEvent as PageCreatedEvent } from \"@opensteer/browser-core\";\nexport type { PopupOpenedStepEvent as PopupOpenedEvent } from \"@opensteer/browser-core\";\nexport type { PageClosedStepEvent as PageClosedEvent } from \"@opensteer/browser-core\";\nexport type { DialogOpenedStepEvent as DialogOpenedEvent } from \"@opensteer/browser-core\";\nexport type { DownloadStartedStepEvent as DownloadStartedEvent } from \"@opensteer/browser-core\";\nexport type { DownloadFinishedStepEvent as DownloadFinishedEvent } from \"@opensteer/browser-core\";\nexport type { ChooserOpenedStepEvent as ChooserOpenedEvent } from \"@opensteer/browser-core\";\nexport type { WorkerCreatedStepEvent as WorkerCreatedEvent } from \"@opensteer/browser-core\";\nexport type { WorkerDestroyedStepEvent as WorkerDestroyedEvent } from \"@opensteer/browser-core\";\nexport type { ConsoleStepEvent as ConsoleEvent } from \"@opensteer/browser-core\";\nexport type { PageErrorStepEvent as PageErrorEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketOpenedStepEvent as WebSocketOpenedEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketFrameStepEvent as WebSocketFrameEvent } from \"@opensteer/browser-core\";\nexport type { WebSocketClosedStepEvent as WebSocketClosedEvent } from \"@opensteer/browser-core\";\nexport type { EventStreamMessageStepEvent as EventStreamMessageEvent } from \"@opensteer/browser-core\";\nexport type { PausedStepEvent as PausedEvent } from \"@opensteer/browser-core\";\nexport type { ResumedStepEvent as ResumedEvent } from \"@opensteer/browser-core\";\nexport type { FrozenStepEvent as FrozenEvent } from \"@opensteer/browser-core\";\nexport type { StepEvent as OpensteerEvent } from \"@opensteer/browser-core\";\n\nimport {\n chooserRefSchema,\n dialogRefSchema,\n documentEpochSchema,\n documentRefSchema,\n downloadRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n workerRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\n\nfunction eventBaseSchema(kind: string): Record<string, JsonSchema> {\n return {\n eventId: stringSchema(),\n kind: enumSchema([kind] as const),\n timestamp: integerSchema({ minimum: 0 }),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n };\n}\n\nconst dialogTypeSchema = enumSchema([\"alert\", \"beforeunload\", \"confirm\", \"prompt\"] as const);\nconst downloadStateSchema = enumSchema([\"completed\", \"canceled\", \"failed\"] as const);\nconst chooserTypeSchema = enumSchema([\"file\", \"select\"] as const);\nconst workerTypeSchema = enumSchema([\"dedicated\", \"shared\", \"service\"] as const);\nconst consoleLevelSchema = enumSchema([\"debug\", \"log\", \"info\", \"warn\", \"error\", \"trace\"] as const);\nconst websocketDirectionSchema = enumSchema([\"sent\", \"received\"] as const);\n\nconst pageCreatedEventSchema = objectSchema(eventBaseSchema(\"page-created\"), {\n title: \"PageCreatedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\"],\n});\n\nconst popupOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"popup-opened\"),\n openerPageRef: pageRefSchema,\n },\n {\n title: \"PopupOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\", \"openerPageRef\"],\n },\n);\n\nconst pageClosedEventSchema = objectSchema(eventBaseSchema(\"page-closed\"), {\n title: \"PageClosedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"pageRef\"],\n});\n\nconst dialogOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"dialog-opened\"),\n dialogRef: dialogRefSchema,\n dialogType: dialogTypeSchema,\n message: stringSchema(),\n defaultValue: stringSchema(),\n },\n {\n title: \"DialogOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"dialogRef\", \"dialogType\", \"message\"],\n },\n);\n\nconst downloadStartedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"download-started\"),\n downloadRef: downloadRefSchema,\n url: stringSchema(),\n suggestedFilename: stringSchema(),\n },\n {\n title: \"DownloadStartedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"downloadRef\", \"url\"],\n },\n);\n\nconst downloadFinishedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"download-finished\"),\n downloadRef: downloadRefSchema,\n state: downloadStateSchema,\n filePath: stringSchema(),\n },\n {\n title: \"DownloadFinishedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"downloadRef\", \"state\"],\n },\n);\n\nconst chooserOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"chooser-opened\"),\n chooserRef: chooserRefSchema,\n chooserType: chooserTypeSchema,\n multiple: {\n type: \"boolean\",\n },\n options: arraySchema(\n objectSchema(\n {\n index: integerSchema({ minimum: 0 }),\n label: stringSchema(),\n value: stringSchema(),\n selected: {\n type: \"boolean\",\n },\n },\n {\n required: [\"index\", \"label\", \"value\", \"selected\"],\n },\n ),\n ),\n },\n {\n title: \"ChooserOpenedEvent\",\n required: [\n \"eventId\",\n \"kind\",\n \"timestamp\",\n \"sessionRef\",\n \"chooserRef\",\n \"chooserType\",\n \"multiple\",\n ],\n },\n);\n\nconst workerCreatedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"worker-created\"),\n workerRef: workerRefSchema,\n workerType: workerTypeSchema,\n url: stringSchema(),\n },\n {\n title: \"WorkerCreatedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"workerRef\", \"workerType\", \"url\"],\n },\n);\n\nconst workerDestroyedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"worker-destroyed\"),\n workerRef: workerRefSchema,\n workerType: workerTypeSchema,\n url: stringSchema(),\n },\n {\n title: \"WorkerDestroyedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"workerRef\", \"workerType\", \"url\"],\n },\n);\n\nconst consoleEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"console\"),\n level: consoleLevelSchema,\n text: stringSchema(),\n location: objectSchema(\n {\n url: stringSchema(),\n lineNumber: integerSchema({ minimum: 0 }),\n columnNumber: integerSchema({ minimum: 0 }),\n },\n {\n required: [],\n },\n ),\n },\n {\n title: \"ConsoleEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"level\", \"text\"],\n },\n);\n\nconst pageErrorEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"page-error\"),\n message: stringSchema(),\n stack: stringSchema(),\n },\n {\n title: \"PageErrorEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"message\"],\n },\n);\n\nconst websocketOpenedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-opened\"),\n socketId: stringSchema(),\n url: stringSchema(),\n },\n {\n title: \"WebSocketOpenedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\", \"url\"],\n },\n);\n\nconst websocketFrameEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-frame\"),\n socketId: stringSchema(),\n direction: websocketDirectionSchema,\n opcode: integerSchema({ minimum: 0 }),\n payloadPreview: stringSchema(),\n },\n {\n title: \"WebSocketFrameEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\", \"direction\"],\n },\n);\n\nconst websocketClosedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"websocket-closed\"),\n socketId: stringSchema(),\n code: integerSchema({ minimum: 0 }),\n reason: stringSchema(),\n },\n {\n title: \"WebSocketClosedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"socketId\"],\n },\n);\n\nconst eventStreamMessageEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"event-stream-message\"),\n streamId: stringSchema(),\n eventName: stringSchema(),\n dataPreview: stringSchema(),\n },\n {\n title: \"EventStreamMessageEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\", \"streamId\"],\n },\n);\n\nconst pausedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"paused\"),\n reason: stringSchema(),\n },\n {\n title: \"PausedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nconst resumedEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"resumed\"),\n reason: stringSchema(),\n },\n {\n title: \"ResumedEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nconst frozenEventSchema = objectSchema(\n {\n ...eventBaseSchema(\"frozen\"),\n reason: stringSchema(),\n },\n {\n title: \"FrozenEvent\",\n required: [\"eventId\", \"kind\", \"timestamp\", \"sessionRef\"],\n },\n);\n\nexport const opensteerEventSchema: JsonSchema = oneOfSchema(\n [\n pageCreatedEventSchema,\n popupOpenedEventSchema,\n pageClosedEventSchema,\n dialogOpenedEventSchema,\n downloadStartedEventSchema,\n downloadFinishedEventSchema,\n chooserOpenedEventSchema,\n workerCreatedEventSchema,\n workerDestroyedEventSchema,\n consoleEventSchema,\n pageErrorEventSchema,\n websocketOpenedEventSchema,\n websocketFrameEventSchema,\n websocketClosedEventSchema,\n eventStreamMessageEventSchema,\n pausedEventSchema,\n resumedEventSchema,\n frozenEventSchema,\n ],\n {\n title: \"OpensteerEvent\",\n },\n);\n","import type { DocumentEpoch, DocumentRef, FrameRef, PageRef, SessionRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type { ExternalBinaryLocation } from \"./binary-location.js\";\nimport { externalBinaryLocationSchema } from \"./binary-location.js\";\nimport type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n} from \"./json.js\";\nimport type { HtmlSnapshot, DomSnapshot, ScreenshotArtifact } from \"./snapshots.js\";\nimport { domSnapshotSchema, htmlSnapshotSchema, screenshotArtifactSchema } from \"./snapshots.js\";\nimport type { CookieRecord, StorageSnapshot } from \"./storage.js\";\nimport { cookieRecordSchema, storageSnapshotSchema } from \"./storage.js\";\n\nexport type OpensteerArtifactKind =\n | \"screenshot\"\n | \"html-snapshot\"\n | \"dom-snapshot\"\n | \"cookies\"\n | \"storage-snapshot\"\n | \"script-source\";\n\nexport type ArtifactRelation = \"result\" | \"before\" | \"after\" | \"capture\" | \"evidence\" | \"snapshot\";\n\nexport type ArtifactExternalLocation = ExternalBinaryLocation;\n\nexport interface ArtifactProvenance {\n readonly sourceArtifactId?: string;\n readonly transform?: string;\n}\n\nexport interface ScriptSourceArtifactData {\n readonly source: \"inline\" | \"external\" | \"dynamic\" | \"worker\";\n readonly url?: string;\n readonly type?: string;\n readonly hash: string;\n readonly loadOrder: number;\n readonly content: string;\n}\n\nexport interface ArtifactInline<TData> {\n readonly delivery: \"inline\";\n readonly data: TData;\n}\n\ninterface ArtifactContext {\n readonly sessionRef?: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n}\n\ninterface OpensteerArtifactBase extends ArtifactContext {\n readonly artifactId: string;\n readonly kind: OpensteerArtifactKind;\n readonly createdAt: number;\n readonly provenance?: ArtifactProvenance;\n}\n\nexport interface ScreenshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"screenshot\";\n readonly payload: ArtifactInline<ScreenshotArtifact> | ArtifactExternalLocation;\n}\n\nexport interface HtmlSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"html-snapshot\";\n readonly payload: ArtifactInline<HtmlSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface DomSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"dom-snapshot\";\n readonly payload: ArtifactInline<DomSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface CookiesArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"cookies\";\n readonly payload: ArtifactInline<readonly CookieRecord[]> | ArtifactExternalLocation;\n}\n\nexport interface StorageSnapshotArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"storage-snapshot\";\n readonly payload: ArtifactInline<StorageSnapshot> | ArtifactExternalLocation;\n}\n\nexport interface ScriptSourceArtifactRecord extends OpensteerArtifactBase {\n readonly kind: \"script-source\";\n readonly payload: ArtifactInline<ScriptSourceArtifactData> | ArtifactExternalLocation;\n}\n\nexport type OpensteerArtifact =\n | ScreenshotArtifactRecord\n | HtmlSnapshotArtifactRecord\n | DomSnapshotArtifactRecord\n | CookiesArtifactRecord\n | StorageSnapshotArtifactRecord\n | ScriptSourceArtifactRecord;\n\nexport interface ArtifactReference {\n readonly artifactId: string;\n readonly kind: OpensteerArtifactKind;\n readonly relation: ArtifactRelation;\n}\n\nexport interface OpensteerArtifactReadInput {\n readonly artifactId: string;\n}\n\nexport interface OpensteerArtifactReadOutput {\n readonly artifact: OpensteerArtifact;\n}\n\nconst artifactKindSchema: JsonSchema = enumSchema(\n [\n \"screenshot\",\n \"html-snapshot\",\n \"dom-snapshot\",\n \"cookies\",\n \"storage-snapshot\",\n \"script-source\",\n ] as const,\n {\n title: \"OpensteerArtifactKind\",\n },\n);\n\nconst artifactRelationSchema: JsonSchema = enumSchema(\n [\"result\", \"before\", \"after\", \"capture\", \"evidence\", \"snapshot\"] as const,\n {\n title: \"ArtifactRelation\",\n },\n);\n\nfunction inlineArtifactPayloadSchema(dataSchema: JsonSchema, title: string): JsonSchema {\n return objectSchema(\n {\n delivery: enumSchema([\"inline\"] as const),\n data: dataSchema,\n },\n {\n title,\n required: [\"delivery\", \"data\"],\n },\n );\n}\n\nfunction artifactBaseSchema(kind: OpensteerArtifactKind): Record<string, JsonSchema> {\n return {\n artifactId: stringSchema(),\n kind: enumSchema([kind] as const),\n createdAt: integerSchema({ minimum: 0 }),\n provenance: objectSchema(\n {\n sourceArtifactId: stringSchema({ minLength: 1 }),\n transform: stringSchema({ minLength: 1 }),\n },\n {\n title: \"ArtifactProvenance\",\n },\n ),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n };\n}\n\nconst screenshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"screenshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(screenshotArtifactSchema, \"InlineScreenshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"ScreenshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst htmlSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"html-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(htmlSnapshotSchema, \"InlineHtmlSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"HtmlSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst domSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"dom-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(domSnapshotSchema, \"InlineDomSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"DomSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst cookiesArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"cookies\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(arraySchema(cookieRecordSchema), \"InlineCookiesArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"CookiesArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nconst storageSnapshotArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"storage-snapshot\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(storageSnapshotSchema, \"InlineStorageSnapshotArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"StorageSnapshotArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nexport const scriptSourceArtifactDataSchema: JsonSchema = objectSchema(\n {\n source: enumSchema([\"inline\", \"external\", \"dynamic\", \"worker\"] as const),\n url: stringSchema({ minLength: 1 }),\n type: stringSchema({ minLength: 1 }),\n hash: stringSchema({ minLength: 1 }),\n loadOrder: integerSchema({ minimum: 0 }),\n content: stringSchema(),\n },\n {\n title: \"ScriptSourceArtifactData\",\n required: [\"source\", \"hash\", \"loadOrder\", \"content\"],\n },\n);\n\nconst scriptSourceArtifactRecordSchema: JsonSchema = objectSchema(\n {\n ...artifactBaseSchema(\"script-source\"),\n payload: oneOfSchema([\n inlineArtifactPayloadSchema(scriptSourceArtifactDataSchema, \"InlineScriptSourceArtifact\"),\n externalBinaryLocationSchema,\n ]),\n },\n {\n title: \"ScriptSourceArtifactRecord\",\n required: [\"artifactId\", \"kind\", \"createdAt\", \"payload\"],\n },\n);\n\nexport const opensteerArtifactSchema: JsonSchema = oneOfSchema(\n [\n screenshotArtifactRecordSchema,\n htmlSnapshotArtifactRecordSchema,\n domSnapshotArtifactRecordSchema,\n cookiesArtifactRecordSchema,\n storageSnapshotArtifactRecordSchema,\n scriptSourceArtifactRecordSchema,\n ],\n {\n title: \"OpensteerArtifact\",\n },\n);\n\nexport const artifactReferenceSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema(),\n kind: artifactKindSchema,\n relation: artifactRelationSchema,\n },\n {\n title: \"ArtifactReference\",\n required: [\"artifactId\", \"kind\", \"relation\"],\n },\n);\n\nexport const opensteerArtifactReadInputSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerArtifactReadInput\",\n required: [\"artifactId\"],\n },\n);\n\nexport const opensteerArtifactReadOutputSchema: JsonSchema = objectSchema(\n {\n artifact: opensteerArtifactSchema,\n },\n {\n title: \"OpensteerArtifactReadOutput\",\n required: [\"artifact\"],\n },\n);\n","import {\n artifactReferenceSchema,\n opensteerArtifactSchema,\n type ArtifactReference,\n type OpensteerArtifact,\n} from \"./artifacts.js\";\nimport { opensteerEventSchema, type OpensteerEvent } from \"./events.js\";\nimport type { DocumentEpoch, DocumentRef, FrameRef, PageRef, SessionRef } from \"./identity.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport { opensteerErrorSchema, type OpensteerError } from \"./errors.js\";\n\nexport type TraceOutcome = \"ok\" | \"error\";\n\nexport interface TraceContext {\n readonly sessionRef?: SessionRef;\n readonly pageRef?: PageRef;\n readonly frameRef?: FrameRef;\n readonly documentRef?: DocumentRef;\n readonly documentEpoch?: DocumentEpoch;\n}\n\nexport interface TraceRecord<TData = unknown> {\n readonly traceId: string;\n readonly stepId: string;\n readonly operation: string;\n readonly outcome: TraceOutcome;\n readonly startedAt: number;\n readonly completedAt: number;\n readonly durationMs: number;\n readonly context: TraceContext;\n readonly events: readonly OpensteerEvent[];\n readonly artifacts?: readonly ArtifactReference[];\n readonly data?: TData;\n readonly error?: OpensteerError;\n}\n\nexport interface TraceBundle<TData = unknown> {\n readonly trace: TraceRecord<TData>;\n readonly artifacts?: readonly OpensteerArtifact[];\n}\n\nexport const traceContextSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n },\n {\n title: \"TraceContext\",\n },\n);\n\nexport function traceRecordSchema(dataSchema: JsonSchema = {}): JsonSchema {\n return objectSchema(\n {\n traceId: stringSchema(),\n stepId: stringSchema(),\n operation: stringSchema(),\n outcome: enumSchema([\"ok\", \"error\"] as const),\n startedAt: integerSchema({ minimum: 0 }),\n completedAt: integerSchema({ minimum: 0 }),\n durationMs: integerSchema({ minimum: 0 }),\n context: traceContextSchema,\n events: arraySchema(opensteerEventSchema),\n artifacts: arraySchema(artifactReferenceSchema),\n data: dataSchema,\n error: opensteerErrorSchema,\n },\n {\n title: \"TraceRecord\",\n required: [\n \"traceId\",\n \"stepId\",\n \"operation\",\n \"outcome\",\n \"startedAt\",\n \"completedAt\",\n \"durationMs\",\n \"context\",\n \"events\",\n ],\n },\n );\n}\n\nexport function traceBundleSchema(dataSchema: JsonSchema = {}): JsonSchema {\n return objectSchema(\n {\n trace: traceRecordSchema(dataSchema),\n artifacts: arraySchema(opensteerArtifactSchema),\n },\n {\n title: \"TraceBundle\",\n required: [\"trace\"],\n },\n );\n}\n","import type { OpensteerArtifact } from \"./artifacts.js\";\nimport { opensteerArtifactSchema } from \"./artifacts.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport { opensteerCapabilitySetSchema } from \"./capabilities.js\";\nimport type { OpensteerError } from \"./errors.js\";\nimport { opensteerErrorSchema } from \"./errors.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport type { TraceRecord } from \"./traces.js\";\nimport { traceRecordSchema } from \"./traces.js\";\nimport {\n OPENSTEER_PROTOCOL_NAME,\n OPENSTEER_PROTOCOL_VERSION,\n type OpensteerProtocolVersion,\n} from \"./version.js\";\n\nexport interface OpensteerRequestEnvelope<TInput> {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly sentAt: number;\n readonly input: TInput;\n}\n\nexport interface OpensteerSuccessEnvelope<TOutput> {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly status: \"ok\";\n readonly receivedAt: number;\n readonly data: TOutput;\n readonly trace?: TraceRecord<TOutput>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n}\n\nexport interface OpensteerErrorEnvelope {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly requestId: string;\n readonly operation: string;\n readonly status: \"error\";\n readonly receivedAt: number;\n readonly error: OpensteerError;\n readonly trace?: TraceRecord<unknown>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n}\n\nexport type OpensteerResponseEnvelope<TOutput> =\n | OpensteerSuccessEnvelope<TOutput>\n | OpensteerErrorEnvelope;\n\nexport function createRequestEnvelope<TInput>(\n operation: string,\n input: TInput,\n options: {\n readonly requestId: string;\n readonly sentAt?: number;\n readonly version?: OpensteerProtocolVersion;\n },\n): OpensteerRequestEnvelope<TInput> {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: options.version ?? OPENSTEER_PROTOCOL_VERSION,\n requestId: options.requestId,\n operation,\n sentAt: options.sentAt ?? Date.now(),\n input,\n };\n}\n\nexport function createSuccessEnvelope<TOutput>(\n request: Pick<OpensteerRequestEnvelope<unknown>, \"requestId\" | \"operation\" | \"version\">,\n data: TOutput,\n options: {\n readonly receivedAt?: number;\n readonly trace?: TraceRecord<TOutput>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n } = {},\n): OpensteerSuccessEnvelope<TOutput> {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: request.version,\n requestId: request.requestId,\n operation: request.operation,\n status: \"ok\",\n receivedAt: options.receivedAt ?? Date.now(),\n data,\n ...(options.trace === undefined ? {} : { trace: options.trace }),\n ...(options.artifacts === undefined ? {} : { artifacts: options.artifacts }),\n ...(options.capabilities === undefined ? {} : { capabilities: options.capabilities }),\n };\n}\n\nexport function createErrorEnvelope(\n request: Pick<OpensteerRequestEnvelope<unknown>, \"requestId\" | \"operation\" | \"version\">,\n error: OpensteerError,\n options: {\n readonly receivedAt?: number;\n readonly trace?: TraceRecord<unknown>;\n readonly artifacts?: readonly OpensteerArtifact[];\n readonly capabilities?: readonly OpensteerCapability[];\n } = {},\n): OpensteerErrorEnvelope {\n return {\n protocol: OPENSTEER_PROTOCOL_NAME,\n version: request.version,\n requestId: request.requestId,\n operation: request.operation,\n status: \"error\",\n receivedAt: options.receivedAt ?? Date.now(),\n error,\n ...(options.trace === undefined ? {} : { trace: options.trace }),\n ...(options.artifacts === undefined ? {} : { artifacts: options.artifacts }),\n ...(options.capabilities === undefined ? {} : { capabilities: options.capabilities }),\n };\n}\n\nexport function isErrorEnvelope<TOutput>(\n envelope: OpensteerResponseEnvelope<TOutput>,\n): envelope is OpensteerErrorEnvelope {\n return envelope.status === \"error\";\n}\n\nfunction operationFieldSchema(operation: string | undefined): JsonSchema {\n return operation === undefined ? stringSchema() : literalSchema(operation);\n}\n\nexport function requestEnvelopeSchema(inputSchema: JsonSchema, operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n sentAt: integerSchema({ minimum: 0 }),\n input: inputSchema,\n },\n {\n title: \"OpensteerRequestEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"sentAt\", \"input\"],\n },\n );\n}\n\nexport function successEnvelopeSchema(dataSchema: JsonSchema, operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n status: enumSchema([\"ok\"] as const),\n receivedAt: integerSchema({ minimum: 0 }),\n data: dataSchema,\n trace: traceRecordSchema(dataSchema),\n artifacts: arraySchema(opensteerArtifactSchema),\n capabilities: opensteerCapabilitySetSchema,\n },\n {\n title: \"OpensteerSuccessEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"status\", \"receivedAt\", \"data\"],\n },\n );\n}\n\nfunction errorEnvelopeSchema(operation?: string): JsonSchema {\n return objectSchema(\n {\n protocol: literalSchema(OPENSTEER_PROTOCOL_NAME),\n version: literalSchema(OPENSTEER_PROTOCOL_VERSION),\n requestId: stringSchema(),\n operation: operationFieldSchema(operation),\n status: enumSchema([\"error\"] as const),\n receivedAt: integerSchema({ minimum: 0 }),\n error: opensteerErrorSchema,\n trace: traceRecordSchema(),\n artifacts: arraySchema(opensteerArtifactSchema),\n capabilities: opensteerCapabilitySetSchema,\n },\n {\n title: \"OpensteerErrorEnvelope\",\n required: [\"protocol\", \"version\", \"requestId\", \"operation\", \"status\", \"receivedAt\", \"error\"],\n },\n );\n}\n\nexport const opensteerErrorEnvelopeSchema: JsonSchema = errorEnvelopeSchema();\n\nexport function responseEnvelopeSchema(dataSchema: JsonSchema, operation?: string): JsonSchema {\n return oneOfSchema(\n [successEnvelopeSchema(dataSchema, operation), errorEnvelopeSchema(operation)],\n {\n title: \"OpensteerResponseEnvelope\",\n },\n );\n}\n","import type { PageRef } from \"./identity.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport type { OpensteerProtocolVersion } from \"./version.js\";\n\nexport const opensteerSessionGrantKinds = [\"automation\", \"view\", \"cdp\"] as const;\n\nexport type OpensteerSessionGrantKind = (typeof opensteerSessionGrantKinds)[number];\nexport type OpensteerProviderMode = \"local\" | \"cloud\";\nexport type OpensteerSessionOwnership = \"owned\" | \"attached\" | \"managed\";\n\nexport interface OpensteerProviderDescriptor {\n readonly mode: OpensteerProviderMode;\n readonly ownership: OpensteerSessionOwnership;\n readonly engine?: string;\n readonly baseUrl?: string;\n readonly region?: string;\n}\n\nexport interface OpensteerSessionCapabilities {\n readonly semanticOperations: readonly OpensteerSemanticOperationName[];\n readonly protocolCapabilities?: readonly OpensteerCapability[];\n readonly sessionGrants?: readonly OpensteerSessionGrantKind[];\n readonly instrumentation: {\n readonly route: boolean;\n readonly interceptScript: boolean;\n readonly networkStream: boolean;\n };\n}\n\nexport interface OpensteerSessionGrant {\n readonly kind: OpensteerSessionGrantKind;\n readonly wsUrl: string;\n readonly token: string;\n readonly expiresAt: number;\n}\n\nexport interface OpensteerSessionAccessGrantResponse {\n readonly sessionId: string;\n readonly expiresAt: number;\n readonly grants: Partial<Record<OpensteerSessionGrantKind, OpensteerSessionGrant>>;\n}\n\nexport interface OpensteerRuntimeVersionInfo {\n readonly protocolVersion: OpensteerProtocolVersion;\n readonly runtimeCoreVersion?: string;\n readonly packages?: Readonly<Record<string, string>>;\n}\n\nexport interface OpensteerSessionInfo {\n readonly provider: OpensteerProviderDescriptor;\n readonly workspace?: string;\n readonly sessionId?: string;\n readonly activePageRef?: PageRef;\n readonly reconnectable: boolean;\n readonly capabilities: OpensteerSessionCapabilities;\n readonly grants?: readonly OpensteerSessionGrant[];\n readonly runtime?: OpensteerRuntimeVersionInfo;\n}\n","import type { OpensteerError } from \"./errors.js\";\nimport type { OpensteerSessionGrantKind, OpensteerSessionInfo } from \"./session-info.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\nimport type { OpensteerProtocolVersion } from \"./version.js\";\nimport { OPENSTEER_PROTOCOL_NAME } from \"./version.js\";\n\nexport const opensteerAutomationOperationNames = [\n \"route.register\",\n \"route.unregister\",\n \"route.resolve\",\n \"session.info\",\n \"network.stream.subscribe\",\n \"network.stream.unsubscribe\",\n] as const;\n\nexport type OpensteerAutomationOperationName =\n | OpensteerSemanticOperationName\n | (typeof opensteerAutomationOperationNames)[number];\n\nexport interface OpensteerAutomationHelloMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"hello\";\n readonly sessionId: string;\n readonly grantKind: OpensteerSessionGrantKind;\n}\n\nexport interface OpensteerAutomationResumeMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"resume\";\n readonly sessionId: string;\n}\n\nexport interface OpensteerAutomationInvokeMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"invoke\";\n readonly requestId: string;\n readonly operation: OpensteerAutomationOperationName;\n readonly sentAt: number;\n readonly input?: unknown;\n}\n\nexport interface OpensteerAutomationCancelMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"cancel\";\n readonly requestId: string;\n readonly sentAt: number;\n}\n\nexport interface OpensteerAutomationResultMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"result\";\n readonly requestId: string;\n readonly operation: OpensteerAutomationOperationName;\n readonly receivedAt: number;\n readonly data: unknown;\n}\n\nexport interface OpensteerAutomationErrorMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"error\";\n readonly requestId?: string;\n readonly operation?: OpensteerAutomationOperationName;\n readonly receivedAt: number;\n readonly error: OpensteerError;\n}\n\nexport interface OpensteerAutomationEventMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"event\";\n readonly event: string;\n readonly emittedAt: number;\n readonly data: unknown;\n}\n\nexport interface OpensteerAutomationPingMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"ping\";\n readonly sentAt: number;\n}\n\nexport interface OpensteerAutomationPongMessage {\n readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;\n readonly version: OpensteerProtocolVersion;\n readonly kind: \"pong\";\n readonly sentAt: number;\n}\n\nexport type OpensteerAutomationClientMessage =\n | OpensteerAutomationHelloMessage\n | OpensteerAutomationResumeMessage\n | OpensteerAutomationInvokeMessage\n | OpensteerAutomationCancelMessage\n | OpensteerAutomationPingMessage;\n\nexport type OpensteerAutomationServerMessage =\n | OpensteerAutomationResultMessage\n | OpensteerAutomationErrorMessage\n | OpensteerAutomationEventMessage\n | OpensteerAutomationPongMessage;\n\nexport interface OpensteerSessionInfoResult {\n readonly session: OpensteerSessionInfo;\n}\n","import type { OpensteerCapability } from \"./capabilities.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n stringSchema,\n type JsonSchema,\n} from \"./json.js\";\nimport type { CoordinateSpace, Point, Rect, ViewportMetrics } from \"./geometry.js\";\nimport {\n coordinateSpaceSchema,\n pointSchema,\n rectSchema,\n viewportMetricsSchema,\n} from \"./geometry.js\";\nimport type { DocumentRef, FrameRef, NodeLocator, PageRef, SessionRef } from \"./identity.js\";\nimport {\n frameRefSchema,\n nodeLocatorSchema,\n documentRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type { FrameInfo, PageInfo } from \"./metadata.js\";\nimport { frameInfoSchema, pageInfoSchema } from \"./metadata.js\";\nimport type { BodyPayload, HeaderEntry, NetworkRecord, NetworkResourceType } from \"./network.js\";\nimport {\n bodyPayloadSchema,\n headerEntrySchema,\n networkRecordSchema,\n networkResourceTypeSchema,\n} from \"./network.js\";\nimport type { CookieRecord, StorageSnapshot } from \"./storage.js\";\nimport { cookieRecordSchema, storageSnapshotSchema } from \"./storage.js\";\nimport type {\n DomSnapshot,\n HitTestResult,\n HtmlSnapshot,\n ScreenshotArtifact,\n ScreenshotFormat,\n} from \"./snapshots.js\";\nimport {\n domSnapshotSchema,\n hitTestResultSchema,\n htmlSnapshotSchema,\n screenshotArtifactSchema,\n screenshotFormatSchema,\n} from \"./snapshots.js\";\n\nexport type MouseButton = \"left\" | \"middle\" | \"right\";\nexport type KeyModifier = \"Shift\" | \"Control\" | \"Alt\" | \"Meta\";\n\nexport interface SessionTransportRequest {\n readonly method: string;\n readonly url: string;\n readonly headers?: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly timeoutMs?: number;\n readonly followRedirects?: boolean;\n}\n\nexport interface SessionTransportResponse {\n readonly url: string;\n readonly status: number;\n readonly statusText: string;\n readonly headers: readonly HeaderEntry[];\n readonly body?: BodyPayload;\n readonly redirected: boolean;\n}\n\nexport interface CreateSessionInput {}\nexport interface CreateSessionOutput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface CloseSessionInput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface CloseSessionOutput {\n readonly closed: true;\n readonly sessionRef: SessionRef;\n}\n\nexport interface CreatePageInput {\n readonly sessionRef: SessionRef;\n readonly openerPageRef?: PageRef;\n readonly url?: string;\n}\n\nexport interface CreatePageOutput {\n readonly pageInfo: PageInfo;\n readonly mainFrame: FrameInfo;\n}\n\nexport interface ClosePageInput {\n readonly pageRef: PageRef;\n}\n\nexport interface ClosePageOutput {\n readonly closed: true;\n readonly pageRef: PageRef;\n}\n\nexport interface ActivatePageInput {\n readonly pageRef: PageRef;\n}\n\nexport interface NavigatePageInput {\n readonly pageRef: PageRef;\n readonly url: string;\n readonly referrer?: string;\n readonly timeoutMs?: number;\n}\n\nexport interface NavigatePageOutput {\n readonly pageInfo: PageInfo;\n readonly mainFrame: FrameInfo;\n}\n\nexport interface ReloadPageInput {\n readonly pageRef: PageRef;\n readonly timeoutMs?: number;\n}\n\nexport interface HistoryNavigationInput {\n readonly pageRef: PageRef;\n}\n\nexport interface HistoryNavigationOutput {\n readonly navigated: boolean;\n}\n\nexport interface StopLoadingInput {\n readonly pageRef: PageRef;\n}\n\nexport interface StopLoadingOutput {\n readonly stopped: true;\n}\n\nexport interface MouseMoveInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n}\n\nexport interface MouseMoveOutput {\n readonly moved: true;\n}\n\nexport interface MouseClickInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly button?: MouseButton;\n readonly clickCount?: number;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface MouseClickOutput {\n readonly hitTest?: HitTestResult;\n}\n\nexport interface MouseScrollInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly delta: Point;\n}\n\nexport interface MouseScrollOutput {\n readonly scrolled: true;\n}\n\nexport interface KeyPressInput {\n readonly pageRef: PageRef;\n readonly key: string;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface KeyPressOutput {\n readonly pressed: true;\n}\n\nexport interface TextInputInput {\n readonly pageRef: PageRef;\n readonly text: string;\n}\n\nexport interface TextInputOutput {\n readonly typed: true;\n}\n\nexport interface CaptureScreenshotInput {\n readonly pageRef: PageRef;\n readonly format?: ScreenshotFormat;\n readonly clip?: Rect;\n readonly clipSpace?: CoordinateSpace;\n readonly fullPage?: boolean;\n readonly includeCursor?: boolean;\n}\n\nexport interface SetExecutionStateInput {\n readonly pageRef: PageRef;\n readonly paused?: boolean;\n readonly frozen?: boolean;\n}\n\nexport interface SetExecutionStateOutput {\n readonly paused: boolean;\n readonly frozen: boolean;\n}\n\nexport interface ListPagesInput {\n readonly sessionRef: SessionRef;\n}\n\nexport interface ListPagesOutput {\n readonly pages: readonly PageInfo[];\n}\n\nexport interface ListFramesInput {\n readonly pageRef: PageRef;\n}\n\nexport interface ListFramesOutput {\n readonly frames: readonly FrameInfo[];\n}\n\nexport interface GetPageInfoInput {\n readonly pageRef: PageRef;\n}\n\nexport interface GetFrameInfoInput {\n readonly frameRef: FrameRef;\n}\n\nexport type DocumentTargetInput =\n | {\n readonly frameRef: FrameRef;\n readonly documentRef?: never;\n }\n | {\n readonly documentRef: DocumentRef;\n readonly frameRef?: never;\n };\n\nexport type GetHtmlSnapshotInput = DocumentTargetInput;\n\nexport type GetDomSnapshotInput = DocumentTargetInput;\n\nexport interface ReadTextInput extends NodeLocator {}\n\nexport interface ReadTextOutput {\n readonly text: string | null;\n}\n\nexport interface ReadAttributesInput extends NodeLocator {}\n\nexport interface AttributeEntry {\n readonly name: string;\n readonly value: string;\n}\n\nexport interface ReadAttributesOutput {\n readonly attributes: readonly AttributeEntry[];\n}\n\nexport interface HitTestInput {\n readonly pageRef: PageRef;\n readonly point: Point;\n readonly coordinateSpace: CoordinateSpace;\n readonly ignorePointerEventsNone?: boolean;\n readonly includeUserAgentShadowDom?: boolean;\n}\n\nexport interface GetViewportMetricsInput {\n readonly pageRef: PageRef;\n}\n\nexport interface GetNetworkRecordsInput {\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n readonly requestIds?: readonly string[];\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: NetworkResourceType;\n readonly includeBodies?: boolean;\n}\n\nexport interface GetNetworkRecordsOutput {\n readonly records: readonly NetworkRecord[];\n}\n\nexport interface GetCookiesInput {\n readonly sessionRef: SessionRef;\n readonly urls?: readonly string[];\n}\n\nexport interface GetCookiesOutput {\n readonly cookies: readonly CookieRecord[];\n}\n\nexport interface GetStorageSnapshotInput {\n readonly sessionRef: SessionRef;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n}\n\nexport interface ExecuteSessionRequestInput {\n readonly sessionRef: SessionRef;\n readonly request: SessionTransportRequest;\n}\n\nexport const opensteerOperationNames = [\n \"session.create\",\n \"session.close\",\n \"page.create\",\n \"page.close\",\n \"page.activate\",\n \"page.navigate\",\n \"page.reload\",\n \"page.go-back\",\n \"page.go-forward\",\n \"page.stop-loading\",\n \"input.mouse-move\",\n \"input.mouse-click\",\n \"input.mouse-scroll\",\n \"input.key-press\",\n \"input.text-input\",\n \"artifact.capture-screenshot\",\n \"execution.set-state\",\n \"inspect.list-pages\",\n \"inspect.list-frames\",\n \"inspect.get-page-info\",\n \"inspect.get-frame-info\",\n \"inspect.get-html-snapshot\",\n \"inspect.get-dom-snapshot\",\n \"inspect.read-text\",\n \"inspect.read-attributes\",\n \"inspect.hit-test\",\n \"inspect.get-viewport-metrics\",\n \"inspect.get-network-records\",\n \"inspect.get-cookies\",\n \"inspect.get-storage-snapshot\",\n \"transport.execute-session-request\",\n] as const;\n\nexport type OpensteerOperationName = (typeof opensteerOperationNames)[number];\n\nexport interface OpensteerOperationSpec<TInput = unknown, TOutput = unknown> {\n readonly name: OpensteerOperationName;\n readonly description: string;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly requiredCapabilities: readonly OpensteerCapability[];\n resolveRequiredCapabilities?(input: TInput): readonly OpensteerCapability[];\n}\n\nfunction defineOperationSpec<TInput, TOutput>(\n spec: OpensteerOperationSpec<TInput, TOutput>,\n): OpensteerOperationSpec<TInput, TOutput> {\n return spec;\n}\n\nconst mouseButtonSchema: JsonSchema = enumSchema([\"left\", \"middle\", \"right\"] as const, {\n title: \"MouseButton\",\n});\n\nconst keyModifierSchema: JsonSchema = enumSchema([\"Shift\", \"Control\", \"Alt\", \"Meta\"] as const, {\n title: \"KeyModifier\",\n});\n\nconst emptyObjectSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"EmptyObject\",\n required: [],\n },\n);\n\nconst sessionTransportRequestSchema: JsonSchema = objectSchema(\n {\n method: stringSchema(),\n url: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n timeoutMs: integerSchema({ minimum: 0 }),\n followRedirects: {\n type: \"boolean\",\n },\n },\n {\n title: \"SessionTransportRequest\",\n required: [\"method\", \"url\"],\n },\n);\n\nconst sessionTransportResponseSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n status: integerSchema({ minimum: 0 }),\n statusText: stringSchema(),\n headers: arraySchema(headerEntrySchema),\n body: bodyPayloadSchema,\n redirected: {\n type: \"boolean\",\n },\n },\n {\n title: \"SessionTransportResponse\",\n required: [\"url\", \"status\", \"statusText\", \"headers\", \"redirected\"],\n },\n);\n\nconst pageOperationResultSchema: JsonSchema = objectSchema(\n {\n pageInfo: pageInfoSchema,\n mainFrame: frameInfoSchema,\n },\n {\n title: \"PageOperationResult\",\n required: [\"pageInfo\", \"mainFrame\"],\n },\n);\n\nconst attributeEntrySchema: JsonSchema = objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"AttributeEntry\",\n required: [\"name\", \"value\"],\n },\n);\n\nconst createSessionInputSchema: JsonSchema = emptyObjectSchema;\nconst createSessionOutputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CreateSessionOutput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closeSessionInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CloseSessionInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closeSessionOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n sessionRef: sessionRefSchema,\n },\n {\n title: \"CloseSessionOutput\",\n required: [\"closed\", \"sessionRef\"],\n },\n);\n\nconst createPageInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n openerPageRef: pageRefSchema,\n url: stringSchema(),\n },\n {\n title: \"CreatePageInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst closePageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"ClosePageInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst closePageOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n pageRef: pageRefSchema,\n },\n {\n title: \"ClosePageOutput\",\n required: [\"closed\", \"pageRef\"],\n },\n);\n\nconst pageRefInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"PageRefInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst navigatePageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n url: stringSchema(),\n referrer: stringSchema(),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"NavigatePageInput\",\n required: [\"pageRef\", \"url\"],\n },\n);\n\nconst reloadPageInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"ReloadPageInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst historyNavigationOutputSchema: JsonSchema = objectSchema(\n {\n navigated: {\n type: \"boolean\",\n },\n },\n {\n title: \"HistoryNavigationOutput\",\n required: [\"navigated\"],\n },\n);\n\nconst stopLoadingOutputSchema: JsonSchema = objectSchema(\n {\n stopped: literalSchema(true),\n },\n {\n title: \"StopLoadingOutput\",\n required: [\"stopped\"],\n },\n);\n\nconst mouseMoveInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n },\n {\n title: \"MouseMoveInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst mouseMoveOutputSchema: JsonSchema = objectSchema(\n {\n moved: literalSchema(true),\n },\n {\n title: \"MouseMoveOutput\",\n required: [\"moved\"],\n },\n);\n\nconst mouseClickInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n button: mouseButtonSchema,\n clickCount: integerSchema({ minimum: 1 }),\n modifiers: arraySchema(keyModifierSchema, { uniqueItems: true }),\n },\n {\n title: \"MouseClickInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst mouseClickOutputSchema: JsonSchema = objectSchema(\n {\n hitTest: hitTestResultSchema,\n },\n {\n title: \"MouseClickOutput\",\n },\n);\n\nconst mouseScrollInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n delta: pointSchema,\n },\n {\n title: \"MouseScrollInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\", \"delta\"],\n },\n);\n\nconst mouseScrollOutputSchema: JsonSchema = objectSchema(\n {\n scrolled: literalSchema(true),\n },\n {\n title: \"MouseScrollOutput\",\n required: [\"scrolled\"],\n },\n);\n\nconst keyPressInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n key: stringSchema(),\n modifiers: arraySchema(keyModifierSchema, { uniqueItems: true }),\n },\n {\n title: \"KeyPressInput\",\n required: [\"pageRef\", \"key\"],\n },\n);\n\nconst keyPressOutputSchema: JsonSchema = objectSchema(\n {\n pressed: literalSchema(true),\n },\n {\n title: \"KeyPressOutput\",\n required: [\"pressed\"],\n },\n);\n\nconst textInputInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n text: stringSchema(),\n },\n {\n title: \"TextInputInput\",\n required: [\"pageRef\", \"text\"],\n },\n);\n\nconst textInputOutputSchema: JsonSchema = objectSchema(\n {\n typed: literalSchema(true),\n },\n {\n title: \"TextInputOutput\",\n required: [\"typed\"],\n },\n);\n\nconst captureScreenshotInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n format: screenshotFormatSchema,\n clip: rectSchema,\n clipSpace: coordinateSpaceSchema,\n fullPage: {\n type: \"boolean\",\n },\n includeCursor: {\n type: \"boolean\",\n },\n },\n {\n title: \"CaptureScreenshotInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst setExecutionStateInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n paused: {\n type: \"boolean\",\n },\n frozen: {\n type: \"boolean\",\n },\n },\n {\n title: \"SetExecutionStateInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst setExecutionStateOutputSchema: JsonSchema = objectSchema(\n {\n paused: {\n type: \"boolean\",\n },\n frozen: {\n type: \"boolean\",\n },\n },\n {\n title: \"SetExecutionStateOutput\",\n required: [\"paused\", \"frozen\"],\n },\n);\n\nconst listPagesInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n },\n {\n title: \"ListPagesInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst listPagesOutputSchema: JsonSchema = objectSchema(\n {\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"ListPagesOutput\",\n required: [\"pages\"],\n },\n);\n\nconst listFramesOutputSchema: JsonSchema = objectSchema(\n {\n frames: arraySchema(frameInfoSchema),\n },\n {\n title: \"ListFramesOutput\",\n required: [\"frames\"],\n },\n);\n\nconst frameRefInputSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n },\n {\n title: \"FrameRefInput\",\n required: [\"frameRef\"],\n },\n);\n\nconst frameDocumentTargetSchema: JsonSchema = objectSchema(\n {\n frameRef: frameRefSchema,\n },\n {\n title: \"FrameDocumentTarget\",\n required: [\"frameRef\"],\n },\n);\n\nconst concreteDocumentTargetSchema: JsonSchema = objectSchema(\n {\n documentRef: documentRefSchema,\n },\n {\n title: \"ConcreteDocumentTarget\",\n required: [\"documentRef\"],\n },\n);\n\nconst documentTargetSchema: JsonSchema = oneOfSchema(\n [frameDocumentTargetSchema, concreteDocumentTargetSchema],\n {\n title: \"DocumentTarget\",\n },\n);\n\nconst readTextOutputSchema: JsonSchema = objectSchema(\n {\n text: {\n type: [\"string\", \"null\"],\n },\n },\n {\n title: \"ReadTextOutput\",\n required: [\"text\"],\n },\n);\n\nconst readAttributesOutputSchema: JsonSchema = objectSchema(\n {\n attributes: arraySchema(attributeEntrySchema),\n },\n {\n title: \"ReadAttributesOutput\",\n required: [\"attributes\"],\n },\n);\n\nconst hitTestInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n point: pointSchema,\n coordinateSpace: coordinateSpaceSchema,\n ignorePointerEventsNone: {\n type: \"boolean\",\n },\n includeUserAgentShadowDom: {\n type: \"boolean\",\n },\n },\n {\n title: \"HitTestInput\",\n required: [\"pageRef\", \"point\", \"coordinateSpace\"],\n },\n);\n\nconst getNetworkRecordsInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n requestIds: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: networkResourceTypeSchema,\n includeBodies: {\n type: \"boolean\",\n },\n },\n {\n title: \"GetNetworkRecordsInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst getNetworkRecordsOutputSchema: JsonSchema = objectSchema(\n {\n records: arraySchema(networkRecordSchema),\n },\n {\n title: \"GetNetworkRecordsOutput\",\n required: [\"records\"],\n },\n);\n\nconst getCookiesInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n urls: arraySchema(stringSchema()),\n },\n {\n title: \"GetCookiesInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst getCookiesOutputSchema: JsonSchema = objectSchema(\n {\n cookies: arraySchema(cookieRecordSchema),\n },\n {\n title: \"GetCookiesOutput\",\n required: [\"cookies\"],\n },\n);\n\nconst getStorageSnapshotInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n includeSessionStorage: {\n type: \"boolean\",\n },\n includeIndexedDb: {\n type: \"boolean\",\n },\n },\n {\n title: \"GetStorageSnapshotInput\",\n required: [\"sessionRef\"],\n },\n);\n\nconst executeSessionRequestInputSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n request: sessionTransportRequestSchema,\n },\n {\n title: \"ExecuteSessionRequestInput\",\n required: [\"sessionRef\", \"request\"],\n },\n);\n\nexport function resolveRequiredCapabilities<TInput>(\n spec: Pick<\n OpensteerOperationSpec<TInput, unknown>,\n \"requiredCapabilities\" | \"resolveRequiredCapabilities\"\n >,\n input: TInput,\n): readonly OpensteerCapability[] {\n return spec.resolveRequiredCapabilities?.(input) ?? spec.requiredCapabilities;\n}\n\nexport const opensteerOperationSpecifications = [\n defineOperationSpec<CreateSessionInput, CreateSessionOutput>({\n name: \"session.create\",\n description: \"Create a new isolated session boundary.\",\n inputSchema: createSessionInputSchema,\n outputSchema: createSessionOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n defineOperationSpec<CloseSessionInput, CloseSessionOutput>({\n name: \"session.close\",\n description: \"Close a session and release all associated pages.\",\n inputSchema: closeSessionInputSchema,\n outputSchema: closeSessionOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n defineOperationSpec<CreatePageInput, CreatePageOutput>({\n name: \"page.create\",\n description: \"Create a top-level browsing context within a session.\",\n inputSchema: createPageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<ClosePageInput, ClosePageOutput>({\n name: \"page.close\",\n description: \"Close an existing top-level browsing context.\",\n inputSchema: closePageInputSchema,\n outputSchema: closePageOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<ActivatePageInput, PageInfo>({\n name: \"page.activate\",\n description: \"Make a page the active top-level browsing context.\",\n inputSchema: pageRefInputSchema,\n outputSchema: pageInfoSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineOperationSpec<NavigatePageInput, NavigatePageOutput>({\n name: \"page.navigate\",\n description: \"Navigate a page to a new URL.\",\n inputSchema: navigatePageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<ReloadPageInput, NavigatePageOutput>({\n name: \"page.reload\",\n description: \"Reload the current main frame document.\",\n inputSchema: reloadPageInputSchema,\n outputSchema: pageOperationResultSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<HistoryNavigationInput, HistoryNavigationOutput>({\n name: \"page.go-back\",\n description: \"Navigate backwards in page history.\",\n inputSchema: pageRefInputSchema,\n outputSchema: historyNavigationOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<HistoryNavigationInput, HistoryNavigationOutput>({\n name: \"page.go-forward\",\n description: \"Navigate forwards in page history.\",\n inputSchema: pageRefInputSchema,\n outputSchema: historyNavigationOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<StopLoadingInput, StopLoadingOutput>({\n name: \"page.stop-loading\",\n description: \"Stop the current navigation or resource load.\",\n inputSchema: pageRefInputSchema,\n outputSchema: stopLoadingOutputSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineOperationSpec<MouseMoveInput, MouseMoveOutput>({\n name: \"input.mouse-move\",\n description: \"Move the mouse pointer in the requested coordinate space.\",\n inputSchema: mouseMoveInputSchema,\n outputSchema: mouseMoveOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n }),\n defineOperationSpec<MouseClickInput, MouseClickOutput>({\n name: \"input.mouse-click\",\n description: \"Dispatch a pointer click and optionally return the resolved target.\",\n inputSchema: mouseClickInputSchema,\n outputSchema: mouseClickOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n resolveRequiredCapabilities: (input) =>\n (input.modifiers?.length ?? 0) > 0 ? [\"input.pointer\", \"input.keyboard\"] : [\"input.pointer\"],\n }),\n defineOperationSpec<MouseScrollInput, MouseScrollOutput>({\n name: \"input.mouse-scroll\",\n description: \"Dispatch a wheel scroll at the given coordinate.\",\n inputSchema: mouseScrollInputSchema,\n outputSchema: mouseScrollOutputSchema,\n requiredCapabilities: [\"input.pointer\"],\n }),\n defineOperationSpec<KeyPressInput, KeyPressOutput>({\n name: \"input.key-press\",\n description: \"Dispatch a key press with optional modifier keys.\",\n inputSchema: keyPressInputSchema,\n outputSchema: keyPressOutputSchema,\n requiredCapabilities: [\"input.keyboard\"],\n }),\n defineOperationSpec<TextInputInput, TextInputOutput>({\n name: \"input.text-input\",\n description: \"Insert raw text into the focused page target.\",\n inputSchema: textInputInputSchema,\n outputSchema: textInputOutputSchema,\n requiredCapabilities: [\"input.keyboard\"],\n }),\n defineOperationSpec<CaptureScreenshotInput, ScreenshotArtifact>({\n name: \"artifact.capture-screenshot\",\n description: \"Capture a screenshot artifact from the current page view.\",\n inputSchema: captureScreenshotInputSchema,\n outputSchema: screenshotArtifactSchema,\n requiredCapabilities: [\"artifacts.screenshot\"],\n }),\n defineOperationSpec<SetExecutionStateInput, SetExecutionStateOutput>({\n name: \"execution.set-state\",\n description: \"Pause, resume, or freeze page execution state.\",\n inputSchema: setExecutionStateInputSchema,\n outputSchema: setExecutionStateOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) => {\n const required: OpensteerCapability[] = [];\n\n if (input.paused === true) {\n required.push(\"execution.pause\");\n } else if (input.paused === false) {\n required.push(\"execution.resume\");\n }\n\n if (input.frozen !== undefined) {\n required.push(\"execution.freeze\");\n }\n\n return required;\n },\n }),\n defineOperationSpec<ListPagesInput, ListPagesOutput>({\n name: \"inspect.list-pages\",\n description: \"List all pages in the current session.\",\n inputSchema: listPagesInputSchema,\n outputSchema: listPagesOutputSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineOperationSpec<ListFramesInput, ListFramesOutput>({\n name: \"inspect.list-frames\",\n description: \"List all frames within a page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: listFramesOutputSchema,\n requiredCapabilities: [\"inspect.frames\"],\n }),\n defineOperationSpec<GetPageInfoInput, PageInfo>({\n name: \"inspect.get-page-info\",\n description: \"Read metadata for a specific page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: pageInfoSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineOperationSpec<GetFrameInfoInput, FrameInfo>({\n name: \"inspect.get-frame-info\",\n description: \"Read metadata for a specific frame.\",\n inputSchema: frameRefInputSchema,\n outputSchema: frameInfoSchema,\n requiredCapabilities: [\"inspect.frames\"],\n }),\n defineOperationSpec<GetHtmlSnapshotInput, HtmlSnapshot>({\n name: \"inspect.get-html-snapshot\",\n description: \"Read raw HTML for a frame or concrete document.\",\n inputSchema: documentTargetSchema,\n outputSchema: htmlSnapshotSchema,\n requiredCapabilities: [\"inspect.html\"],\n }),\n defineOperationSpec<GetDomSnapshotInput, DomSnapshot>({\n name: \"inspect.get-dom-snapshot\",\n description: \"Read a structured DOM snapshot for a frame or concrete document.\",\n inputSchema: documentTargetSchema,\n outputSchema: domSnapshotSchema,\n requiredCapabilities: [\"inspect.domSnapshot\"],\n }),\n defineOperationSpec<ReadTextInput, ReadTextOutput>({\n name: \"inspect.read-text\",\n description: \"Read text content for a node locator.\",\n inputSchema: nodeLocatorSchema,\n outputSchema: readTextOutputSchema,\n requiredCapabilities: [\"inspect.text\"],\n }),\n defineOperationSpec<ReadAttributesInput, ReadAttributesOutput>({\n name: \"inspect.read-attributes\",\n description: \"Read ordered attributes for a node locator.\",\n inputSchema: nodeLocatorSchema,\n outputSchema: readAttributesOutputSchema,\n requiredCapabilities: [\"inspect.attributes\"],\n }),\n defineOperationSpec<HitTestInput, HitTestResult>({\n name: \"inspect.hit-test\",\n description: \"Resolve a point into the current DOM target at that coordinate.\",\n inputSchema: hitTestInputSchema,\n outputSchema: hitTestResultSchema,\n requiredCapabilities: [\"inspect.hitTest\"],\n }),\n defineOperationSpec<GetViewportMetricsInput, ViewportMetrics>({\n name: \"inspect.get-viewport-metrics\",\n description: \"Read layout, visual viewport, and scroll metrics for a page.\",\n inputSchema: pageRefInputSchema,\n outputSchema: viewportMetricsSchema,\n requiredCapabilities: [\"inspect.viewportMetrics\"],\n }),\n defineOperationSpec<GetNetworkRecordsInput, GetNetworkRecordsOutput>({\n name: \"inspect.get-network-records\",\n description: \"Read normalized network records for a session or page.\",\n inputSchema: getNetworkRecordsInputSchema,\n outputSchema: getNetworkRecordsOutputSchema,\n requiredCapabilities: [\"inspect.network\"],\n resolveRequiredCapabilities: (input) =>\n input.includeBodies === true\n ? [\"inspect.network\", \"inspect.networkBodies\"]\n : [\"inspect.network\"],\n }),\n defineOperationSpec<GetCookiesInput, GetCookiesOutput>({\n name: \"inspect.get-cookies\",\n description: \"Read cookie state filtered by URL semantics when requested.\",\n inputSchema: getCookiesInputSchema,\n outputSchema: getCookiesOutputSchema,\n requiredCapabilities: [\"inspect.cookies\"],\n }),\n defineOperationSpec<GetStorageSnapshotInput, StorageSnapshot>({\n name: \"inspect.get-storage-snapshot\",\n description: \"Read storage state for origins reachable in the session boundary.\",\n inputSchema: getStorageSnapshotInputSchema,\n outputSchema: storageSnapshotSchema,\n requiredCapabilities: [\"inspect.localStorage\"],\n resolveRequiredCapabilities: (input) => {\n const required: OpensteerCapability[] = [\"inspect.localStorage\"];\n\n if (input.includeSessionStorage ?? true) {\n required.push(\"inspect.sessionStorage\");\n }\n if (input.includeIndexedDb ?? true) {\n required.push(\"inspect.indexedDb\");\n }\n\n return required;\n },\n }),\n defineOperationSpec<ExecuteSessionRequestInput, SessionTransportResponse>({\n name: \"transport.execute-session-request\",\n description: \"Execute an HTTP request within the active browser session boundary.\",\n inputSchema: executeSessionRequestInputSchema,\n outputSchema: sessionTransportResponseSchema,\n requiredCapabilities: [\"transport.sessionHttp\"],\n }),\n] as const satisfies readonly OpensteerOperationSpec[];\n\nexport const opensteerOperationSpecificationMap = Object.fromEntries(\n opensteerOperationSpecifications.map((spec) => [spec.name, spec]),\n) as Record<OpensteerOperationName, OpensteerOperationSpec>;\n","import type { JsonSchema } from \"./json.js\";\nimport { OPENSTEER_PROTOCOL_MEDIA_TYPE, OPENSTEER_PROTOCOL_REST_BASE_PATH } from \"./version.js\";\nimport { requestEnvelopeSchema, responseEnvelopeSchema } from \"./envelopes.js\";\nimport { opensteerOperationSpecifications, type OpensteerOperationName } from \"./operations.js\";\n\nexport type OpensteerHttpMethod = \"POST\";\n\nexport interface OpensteerRestEndpointDescriptor {\n readonly name: OpensteerOperationName;\n readonly method: OpensteerHttpMethod;\n readonly path: string;\n readonly description: string;\n readonly mediaType: string;\n readonly requestSchema: JsonSchema;\n readonly responseSchema: JsonSchema;\n}\n\nexport const opensteerRestEndpoints: readonly OpensteerRestEndpointDescriptor[] =\n opensteerOperationSpecifications.map((spec) => ({\n name: spec.name,\n method: \"POST\",\n path: `${OPENSTEER_PROTOCOL_REST_BASE_PATH}/operations/${spec.name.replaceAll(\".\", \"/\")}`,\n description: spec.description,\n mediaType: OPENSTEER_PROTOCOL_MEDIA_TYPE,\n requestSchema: requestEnvelopeSchema(spec.inputSchema, spec.name),\n responseSchema: responseEnvelopeSchema(spec.outputSchema, spec.name),\n }));\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, numberSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport type NetworkDiffFieldKind = \"added\" | \"removed\" | \"changed\" | \"unchanged\";\n\nexport interface NetworkDiffEntropy {\n readonly left?: number;\n readonly right?: number;\n readonly likelyEncrypted: boolean;\n}\n\nexport interface NetworkDiffField {\n readonly path: string;\n readonly kind: NetworkDiffFieldKind;\n readonly leftValue?: string;\n readonly rightValue?: string;\n readonly entropy?: NetworkDiffEntropy;\n}\n\nexport interface OpensteerNetworkDiffInput {\n readonly leftRecordId: string;\n readonly rightRecordId: string;\n readonly includeUnchanged?: boolean;\n readonly scope?: \"headers\" | \"body\" | \"all\";\n}\n\nexport interface OpensteerNetworkDiffOutput {\n readonly summary: {\n readonly added: number;\n readonly removed: number;\n readonly changed: number;\n readonly unchanged: number;\n readonly likelyEncryptedFields: number;\n };\n readonly requestDiffs: readonly NetworkDiffField[];\n readonly responseDiffs: readonly NetworkDiffField[];\n}\n\nexport const networkDiffFieldKindSchema: JsonSchema = enumSchema(\n [\"added\", \"removed\", \"changed\", \"unchanged\"] as const,\n {\n title: \"NetworkDiffFieldKind\",\n },\n);\n\nexport const networkDiffEntropySchema: JsonSchema = objectSchema(\n {\n left: numberSchema({ minimum: 0 }),\n right: numberSchema({ minimum: 0 }),\n likelyEncrypted: { type: \"boolean\" },\n },\n {\n title: \"NetworkDiffEntropy\",\n required: [\"likelyEncrypted\"],\n },\n);\n\nexport const networkDiffFieldSchema: JsonSchema = objectSchema(\n {\n path: stringSchema({ minLength: 1 }),\n kind: networkDiffFieldKindSchema,\n leftValue: stringSchema(),\n rightValue: stringSchema(),\n entropy: networkDiffEntropySchema,\n },\n {\n title: \"NetworkDiffField\",\n required: [\"path\", \"kind\"],\n },\n);\n\nexport const opensteerNetworkDiffInputSchema: JsonSchema = objectSchema(\n {\n leftRecordId: stringSchema({ minLength: 1 }),\n rightRecordId: stringSchema({ minLength: 1 }),\n includeUnchanged: { type: \"boolean\" },\n scope: enumSchema([\"headers\", \"body\", \"all\"] as const),\n },\n {\n title: \"OpensteerNetworkDiffInput\",\n required: [\"leftRecordId\", \"rightRecordId\"],\n },\n);\n\nexport const opensteerNetworkDiffOutputSchema: JsonSchema = objectSchema(\n {\n summary: objectSchema(\n {\n added: numberSchema({ minimum: 0 }),\n removed: numberSchema({ minimum: 0 }),\n changed: numberSchema({ minimum: 0 }),\n unchanged: numberSchema({ minimum: 0 }),\n likelyEncryptedFields: numberSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerNetworkDiffSummary\",\n required: [\"added\", \"removed\", \"changed\", \"unchanged\", \"likelyEncryptedFields\"],\n },\n ),\n requestDiffs: arraySchema(networkDiffFieldSchema),\n responseDiffs: arraySchema(networkDiffFieldSchema),\n },\n {\n title: \"OpensteerNetworkDiffOutput\",\n required: [\"summary\", \"requestDiffs\", \"responseDiffs\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\nimport type { TransportKind, OpensteerWriteRequestPlanInput } from \"./requests.js\";\nimport { transportKindSchema, opensteerWriteRequestPlanInputSchema } from \"./requests.js\";\n\nexport type MinimizationFieldClassification = \"required\" | \"optional\" | \"untested\";\n\nexport interface MinimizationFieldResult {\n readonly name: string;\n readonly location: \"header\" | \"cookie\" | \"query\" | \"body-field\";\n readonly classification: MinimizationFieldClassification;\n readonly originalValue?: string;\n}\n\nexport interface OpensteerNetworkMinimizeSuccessPolicy {\n readonly statusCodes?: readonly number[];\n readonly responseBodyIncludes?: readonly string[];\n readonly responseStructureMatch?: boolean;\n}\n\nexport interface OpensteerNetworkMinimizeInput {\n readonly recordId: string;\n readonly transport?: TransportKind;\n readonly successPolicy?: OpensteerNetworkMinimizeSuccessPolicy;\n readonly maxTrials?: number;\n readonly preserve?: readonly string[];\n}\n\nexport interface OpensteerNetworkMinimizeOutput {\n readonly recordId: string;\n readonly totalTrials: number;\n readonly fields: readonly MinimizationFieldResult[];\n readonly minimizedPlan?: OpensteerWriteRequestPlanInput;\n}\n\nexport const minimizationFieldClassificationSchema: JsonSchema = enumSchema(\n [\"required\", \"optional\", \"untested\"] as const,\n {\n title: \"MinimizationFieldClassification\",\n },\n);\n\nexport const minimizationFieldResultSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n location: enumSchema([\"header\", \"cookie\", \"query\", \"body-field\"] as const),\n classification: minimizationFieldClassificationSchema,\n originalValue: stringSchema(),\n },\n {\n title: \"MinimizationFieldResult\",\n required: [\"name\", \"location\", \"classification\"],\n },\n);\n\nexport const opensteerNetworkMinimizeSuccessPolicySchema: JsonSchema = objectSchema(\n {\n statusCodes: arraySchema(integerSchema({ minimum: 100, maximum: 599 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseBodyIncludes: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n responseStructureMatch: { type: \"boolean\" },\n },\n {\n title: \"OpensteerNetworkMinimizeSuccessPolicy\",\n },\n);\n\nexport const opensteerNetworkMinimizeInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n successPolicy: opensteerNetworkMinimizeSuccessPolicySchema,\n maxTrials: integerSchema({ minimum: 1 }),\n preserve: arraySchema(stringSchema({ minLength: 1 }), {\n minItems: 1,\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerNetworkMinimizeInput\",\n required: [\"recordId\"],\n },\n);\n\nexport const opensteerNetworkMinimizeOutputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n totalTrials: integerSchema({ minimum: 0 }),\n fields: arraySchema(minimizationFieldResultSchema),\n minimizedPlan: opensteerWriteRequestPlanInputSchema,\n },\n {\n title: \"OpensteerNetworkMinimizeOutput\",\n required: [\"recordId\", \"totalTrials\", \"fields\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport { arraySchema, enumSchema, integerSchema, objectSchema, stringSchema } from \"./json.js\";\n\nexport type TransportProbeLevel =\n | \"direct-http\"\n | \"matched-tls\"\n | \"context-http\"\n | \"page-http\"\n | \"session-http\";\n\nexport interface OpensteerTransportProbeInput {\n readonly recordId: string;\n}\n\nexport interface TransportProbeResult {\n readonly transport: TransportProbeLevel;\n readonly status: number | null;\n readonly success: boolean;\n readonly durationMs: number;\n readonly error?: string;\n}\n\nexport interface OpensteerTransportProbeOutput {\n readonly results: readonly TransportProbeResult[];\n readonly recommendation: TransportProbeLevel;\n}\n\nexport const transportProbeLevelSchema: JsonSchema = enumSchema(\n [\"direct-http\", \"matched-tls\", \"context-http\", \"page-http\", \"session-http\"] as const,\n {\n title: \"TransportProbeLevel\",\n },\n);\n\nexport const opensteerTransportProbeInputSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerTransportProbeInput\",\n required: [\"recordId\"],\n },\n);\n\nexport const transportProbeResultSchema: JsonSchema = objectSchema(\n {\n transport: transportProbeLevelSchema,\n status: {\n type: [\"integer\", \"null\"],\n minimum: 100,\n maximum: 599,\n },\n success: { type: \"boolean\" },\n durationMs: integerSchema({ minimum: 0 }),\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"TransportProbeResult\",\n required: [\"transport\", \"status\", \"success\", \"durationMs\"],\n },\n);\n\nexport const opensteerTransportProbeOutputSchema: JsonSchema = objectSchema(\n {\n results: arraySchema(transportProbeResultSchema),\n recommendation: transportProbeLevelSchema,\n },\n {\n title: \"OpensteerTransportProbeOutput\",\n required: [\"results\", \"recommendation\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n enumSchema,\n integerSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n} from \"./json.js\";\n\nexport interface OpensteerScriptBeautifyInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerScriptBeautifyOutput {\n readonly content: string;\n readonly artifactId?: string;\n readonly bytesBefore: number;\n readonly bytesAfter: number;\n}\n\nexport interface OpensteerScriptDeobfuscateInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerScriptDeobfuscateOutput {\n readonly content: string;\n readonly artifactId?: string;\n readonly transforms: readonly string[];\n readonly bytesBefore: number;\n readonly bytesAfter: number;\n}\n\nexport type SandboxFidelity = \"minimal\" | \"standard\" | \"full\";\nexport type SandboxAjaxMode = \"passthrough\" | \"capture\" | \"mock\";\n\nexport interface SandboxAjaxRoute {\n readonly urlPattern: string;\n readonly mode: SandboxAjaxMode;\n readonly mockResponse?: {\n readonly status: number;\n readonly headers?: Readonly<Record<string, string>>;\n readonly body?: string;\n };\n}\n\nexport interface OpensteerScriptSandboxInput {\n readonly artifactId?: string;\n readonly content?: string;\n readonly fidelity?: SandboxFidelity;\n readonly ajaxRoutes?: readonly SandboxAjaxRoute[];\n readonly cookies?: Readonly<Record<string, string>>;\n readonly globals?: Readonly<Record<string, unknown>>;\n readonly timeoutMs?: number;\n readonly clockMode?: \"real\" | \"manual\";\n}\n\nexport interface SandboxCapturedAjaxCall {\n readonly method: string;\n readonly url: string;\n readonly headers: Readonly<Record<string, string>>;\n readonly body?: string;\n readonly timestamp: number;\n}\n\nexport interface OpensteerScriptSandboxOutput {\n readonly result?: unknown;\n readonly capturedAjax: readonly SandboxCapturedAjaxCall[];\n readonly errors: readonly string[];\n readonly durationMs: number;\n}\n\nconst scriptTransformInputSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n content: stringSchema(),\n persist: { type: \"boolean\" },\n },\n {\n title: \"OpensteerScriptTransformInput\",\n },\n);\n\nconst scriptTransformOutputSchema = objectSchema(\n {\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n bytesBefore: integerSchema({ minimum: 0 }),\n bytesAfter: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptTransformOutput\",\n required: [\"content\", \"bytesBefore\", \"bytesAfter\"],\n },\n);\n\nexport const opensteerScriptBeautifyInputSchema: JsonSchema = scriptTransformInputSchema;\n\nexport const opensteerScriptBeautifyOutputSchema: JsonSchema = scriptTransformOutputSchema;\n\nexport const opensteerScriptDeobfuscateInputSchema: JsonSchema = scriptTransformInputSchema;\n\nexport const opensteerScriptDeobfuscateOutputSchema: JsonSchema = objectSchema(\n {\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n transforms: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n bytesBefore: integerSchema({ minimum: 0 }),\n bytesAfter: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptDeobfuscateOutput\",\n required: [\"content\", \"transforms\", \"bytesBefore\", \"bytesAfter\"],\n },\n);\n\nexport const sandboxFidelitySchema: JsonSchema = enumSchema(\n [\"minimal\", \"standard\", \"full\"] as const,\n {\n title: \"SandboxFidelity\",\n },\n);\n\nexport const sandboxAjaxModeSchema: JsonSchema = enumSchema(\n [\"passthrough\", \"capture\", \"mock\"] as const,\n {\n title: \"SandboxAjaxMode\",\n },\n);\n\nexport const sandboxAjaxRouteSchema: JsonSchema = objectSchema(\n {\n urlPattern: stringSchema({ minLength: 1 }),\n mode: sandboxAjaxModeSchema,\n mockResponse: objectSchema(\n {\n status: integerSchema({ minimum: 100, maximum: 599 }),\n headers: recordSchema(stringSchema(), {\n title: \"SandboxAjaxMockHeaders\",\n }),\n body: stringSchema(),\n },\n {\n title: \"SandboxAjaxMockResponse\",\n required: [\"status\"],\n },\n ),\n },\n {\n title: \"SandboxAjaxRoute\",\n required: [\"urlPattern\", \"mode\"],\n },\n);\n\nexport const opensteerScriptSandboxInputSchema: JsonSchema = objectSchema(\n {\n artifactId: stringSchema({ minLength: 1 }),\n content: stringSchema(),\n fidelity: sandboxFidelitySchema,\n ajaxRoutes: arraySchema(sandboxAjaxRouteSchema),\n cookies: recordSchema(stringSchema(), {\n title: \"SandboxCookies\",\n }),\n globals: objectSchema(\n {},\n {\n title: \"SandboxGlobals\",\n additionalProperties: true,\n },\n ),\n timeoutMs: integerSchema({ minimum: 1 }),\n clockMode: enumSchema([\"real\", \"manual\"] as const),\n },\n {\n title: \"OpensteerScriptSandboxInput\",\n },\n);\n\nexport const sandboxCapturedAjaxCallSchema: JsonSchema = objectSchema(\n {\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n headers: recordSchema(stringSchema(), {\n title: \"SandboxCapturedAjaxHeaders\",\n }),\n body: stringSchema(),\n timestamp: integerSchema({ minimum: 0 }),\n },\n {\n title: \"SandboxCapturedAjaxCall\",\n required: [\"method\", \"url\", \"headers\", \"timestamp\"],\n },\n);\n\nexport const opensteerScriptSandboxOutputSchema: JsonSchema = objectSchema(\n {\n result: oneOfSchema(\n [\n objectSchema({}, { additionalProperties: true }),\n arraySchema({}),\n stringSchema(),\n { type: \"number\" },\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"SandboxResult\",\n },\n ),\n capturedAjax: arraySchema(sandboxCapturedAjaxCallSchema),\n errors: arraySchema(stringSchema({ minLength: 1 })),\n durationMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerScriptSandboxOutput\",\n required: [\"capturedAjax\", \"errors\", \"durationMs\"],\n },\n);\n","import type { JsonSchema, JsonValue } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n numberSchema,\n objectSchema,\n recordSchema,\n stringSchema,\n oneOfSchema,\n} from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport { networkRecordKindSchema } from \"./network.js\";\nimport {\n opensteerRegistryProvenanceSchema,\n opensteerRequestPlanRecordSchema,\n transportKindSchema,\n type OpensteerRegistryProvenance,\n type OpensteerRequestPlanRecord,\n type TransportKind,\n} from \"./requests.js\";\nimport { storageSnapshotSchema, type StorageSnapshot } from \"./storage.js\";\nimport type { OpensteerSemanticOperationName } from \"./semantic.js\";\n\nexport type OpensteerStateSourceKind = \"temporary\" | \"persistent\" | \"attach\";\n\nexport type OpensteerReverseCaseStatus = \"capturing\" | \"analyzing\" | \"ready\" | \"attention\";\n\nexport type OpensteerReverseChannelKind = \"http\" | \"event-stream\" | \"websocket\";\n\nexport type OpensteerReverseManualCalibrationMode = \"allow\" | \"avoid\" | \"require\";\n\nexport type OpensteerReverseCandidateBoundary = \"first-party\" | \"same-site\" | \"third-party\";\n\nexport type OpensteerReverseAdvisoryTag =\n | \"data\"\n | \"facet\"\n | \"telemetry\"\n | \"subscription\"\n | \"navigation\"\n | \"document\"\n | \"route-data\"\n | \"search\"\n | \"tracking\"\n | \"unknown\";\n\nexport type OpensteerReverseConstraintKind =\n | \"requires-browser\"\n | \"requires-cookie\"\n | \"requires-storage\"\n | \"requires-script\"\n | \"requires-guard\"\n | \"requires-live-state\"\n | \"opaque-body\"\n | \"unsupported\";\n\nexport type OpensteerRequestInputLocation = \"path\" | \"query\" | \"header\" | \"cookie\" | \"body-field\";\n\nexport type OpensteerRequestInputRequiredness = \"required\" | \"optional\" | \"unknown\";\n\nexport type OpensteerRequestInputClassification = \"managed\" | \"static\" | \"contextual\" | \"volatile\";\n\nexport type OpensteerRequestInputSource =\n | \"literal\"\n | \"cookie\"\n | \"storage\"\n | \"prior-response\"\n | \"page\"\n | \"script\"\n | \"guard-output\"\n | \"runtime-managed\"\n | \"unknown\";\n\nexport type OpensteerRequestInputMaterializationPolicy = \"copy\" | \"omit\" | \"recompute\" | \"resolve\";\n\nexport type OpensteerRequestInputExportPolicy = \"portable\" | \"browser-bound\" | \"blocked\";\n\nexport type OpensteerReverseQueryView = \"records\" | \"clusters\" | \"candidates\";\n\nexport type OpensteerReverseSortKey =\n | \"observed-at\"\n | \"advisory-rank\"\n | \"target-hint-matches\"\n | \"response-richness\"\n | \"portability\"\n | \"boundary\"\n | \"success\";\n\nexport type OpensteerReverseSortPreset =\n | \"advisory-rank\"\n | \"observed-at\"\n | \"portability\"\n | \"first-party\"\n | \"hint-match\"\n | \"response-richness\";\n\nexport type OpensteerReverseSortDirection = \"asc\" | \"desc\";\n\nexport type OpensteerObservationClusterRelationshipKind =\n | \"seed\"\n | \"preflight\"\n | \"redirect\"\n | \"retry\"\n | \"duplicate\"\n | \"follow-on\";\n\nexport type OpensteerReversePackageKind = \"portable-http\" | \"browser-workflow\";\n\nexport type OpensteerReversePackageReadiness = \"runnable\" | \"draft\" | \"unsupported\";\n\nexport type OpensteerReverseReportKind = \"discovery\" | \"package\";\n\nexport type OpensteerBodyCodecKind =\n | \"json\"\n | \"form-urlencoded\"\n | \"multipart\"\n | \"graphql\"\n | \"persisted-graphql\"\n | \"text\"\n | \"opaque-binary\"\n | \"sse\"\n | \"websocket-json\"\n | \"websocket-text\"\n | \"unknown\";\n\nexport type OpensteerExecutableResolverKind =\n | \"literal\"\n | \"cookie\"\n | \"storage\"\n | \"prior-record\"\n | \"binding\"\n | \"candidate\"\n | \"case\"\n | \"state-snapshot\"\n | \"artifact\"\n | \"manual\"\n | \"runtime-managed\";\n\nexport type OpensteerValueReferenceKind =\n | \"literal\"\n | \"resolver\"\n | \"binding\"\n | \"candidate\"\n | \"case\"\n | \"record\"\n | \"artifact\"\n | \"state-snapshot\"\n | \"runtime\"\n | \"manual\";\n\nexport type OpensteerRuntimeValueKey =\n | \"pageRef\"\n | \"packageId\"\n | \"caseId\"\n | \"candidateId\"\n | \"objective\";\n\nexport type OpensteerValidationRuleKind =\n | \"status\"\n | \"json-structure\"\n | \"text-includes\"\n | \"stream-first-chunk\"\n | \"websocket-open\"\n | \"message-count-at-least\";\n\nexport type OpensteerReverseWorkflowStepKind = \"operation\" | \"await-record\" | \"assert\";\n\nexport type OpensteerReverseRequirementKind =\n | \"resolver\"\n | \"guard\"\n | \"workflow-step\"\n | \"state\"\n | \"channel\"\n | \"unsupported\";\n\nexport type OpensteerReverseRequirementStatus = \"required\" | \"recommended\";\n\nexport type OpensteerReverseSuggestedEditKind =\n | \"set-resolver\"\n | \"attach-trace\"\n | \"replace-workflow\"\n | \"patch-step-input\"\n | \"switch-state-source\"\n | \"inspect-evidence\"\n | \"mark-unsupported\";\n\nexport interface OpensteerValueReference {\n readonly kind: OpensteerValueReferenceKind;\n readonly pointer?: string;\n readonly resolverId?: string;\n readonly binding?: string;\n readonly recordId?: string;\n readonly artifactId?: string;\n readonly stateSnapshotId?: string;\n readonly runtimeKey?: OpensteerRuntimeValueKey;\n readonly value?: JsonValue;\n readonly placeholder?: string;\n}\n\nexport interface OpensteerValueReferenceEnvelope {\n readonly $ref: OpensteerValueReference;\n}\n\nexport interface OpensteerValueTemplateObject {\n readonly [key: string]: OpensteerValueTemplate;\n}\n\nexport type OpensteerValueTemplate =\n | JsonValue\n | OpensteerValueReferenceEnvelope\n | OpensteerValueTemplateObject\n | readonly OpensteerValueTemplate[];\n\nexport interface OpensteerReverseTargetHints {\n readonly hosts?: readonly string[];\n readonly paths?: readonly string[];\n readonly operationNames?: readonly string[];\n readonly channels?: readonly OpensteerReverseChannelKind[];\n}\n\nexport interface OpensteerBodyCodecDescriptor {\n readonly kind: OpensteerBodyCodecKind;\n readonly contentType?: string;\n readonly operationName?: string;\n readonly fieldPaths: readonly string[];\n}\n\nexport interface OpensteerObservationCluster {\n readonly id: string;\n readonly observationId: string;\n readonly label: string;\n readonly channel: OpensteerReverseChannelKind;\n readonly method?: string;\n readonly url: string;\n readonly matchedTargetHints: readonly string[];\n readonly members: readonly OpensteerObservationClusterMember[];\n}\n\nexport interface OpensteerObservationClusterMember {\n readonly recordId: string;\n readonly observedAt?: number;\n readonly resourceType?: string;\n readonly status?: number;\n readonly relation: OpensteerObservationClusterRelationshipKind;\n readonly relatedRecordId?: string;\n readonly matchedTargetHints: readonly string[];\n}\n\nexport interface OpensteerStateSnapshot {\n readonly id: string;\n readonly capturedAt: number;\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly cookies?: readonly {\n readonly name: string;\n readonly value: string;\n readonly domain: string;\n readonly path: string;\n readonly secure: boolean;\n readonly httpOnly: boolean;\n readonly sameSite?: \"strict\" | \"lax\" | \"none\";\n readonly priority?: \"low\" | \"medium\" | \"high\";\n readonly partitionKey?: string;\n readonly session: boolean;\n readonly expiresAt?: number | null;\n }[];\n readonly storage?: StorageSnapshot;\n readonly hiddenFields?: readonly {\n readonly path: string;\n readonly name: string;\n readonly value: string;\n }[];\n readonly globals?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerStateDelta {\n readonly beforeStateId?: string;\n readonly afterStateId?: string;\n readonly cookiesChanged: readonly string[];\n readonly storageChanged: readonly string[];\n readonly hiddenFieldsChanged: readonly string[];\n readonly globalsChanged: readonly string[];\n}\n\nexport interface OpensteerRequestInputDescriptor {\n readonly name: string;\n readonly location: OpensteerRequestInputLocation;\n readonly path?: string;\n readonly wireName?: string;\n readonly requiredness: OpensteerRequestInputRequiredness;\n readonly classification: OpensteerRequestInputClassification;\n readonly source: OpensteerRequestInputSource;\n readonly materializationPolicy: OpensteerRequestInputMaterializationPolicy;\n readonly exportPolicy: OpensteerRequestInputExportPolicy;\n readonly originalValue?: string;\n readonly provenance?: {\n readonly recordId?: string;\n readonly observationId?: string;\n readonly sourcePointer?: string;\n readonly notes?: string;\n };\n readonly unlockedByGuardIds?: readonly string[];\n}\n\nexport interface OpensteerExecutableResolver {\n readonly id: string;\n readonly kind: OpensteerExecutableResolverKind;\n readonly label: string;\n readonly status: \"ready\" | \"missing\";\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly description?: string;\n readonly inputNames?: readonly string[];\n readonly guardId?: string;\n readonly traceId?: string;\n readonly valueRef?: OpensteerValueReference;\n}\n\nexport interface OpensteerReverseAdvisorySignals {\n readonly advisoryRank: number;\n readonly observedAt?: number;\n readonly targetHintMatches: number;\n readonly responseRichness: number;\n readonly portabilityWeight: number;\n readonly boundaryWeight: number;\n readonly successfulStatus: boolean;\n readonly fetchLike: boolean;\n readonly hasResponseBody: boolean;\n readonly dataPathMatch: boolean;\n readonly cookieInputCount: number;\n readonly storageInputCount: number;\n readonly volatileInputCount: number;\n readonly guardCount: number;\n}\n\nexport interface OpensteerValidationRule {\n readonly id: string;\n readonly kind: OpensteerValidationRuleKind;\n readonly label: string;\n readonly required: boolean;\n readonly expectedStatus?: number;\n readonly structureHash?: string;\n readonly textIncludes?: string;\n readonly minimumCount?: number;\n}\n\nexport interface OpensteerReverseOperationWorkflowStep {\n readonly id: string;\n readonly kind: \"operation\";\n readonly label: string;\n readonly operation: OpensteerSemanticOperationName | string;\n readonly input: OpensteerValueTemplate;\n readonly bindAs?: string;\n}\n\nexport interface OpensteerReverseAwaitRecordMatch {\n readonly recordId?: string;\n readonly host?: string;\n readonly path?: string;\n readonly method?: string;\n readonly channel?: OpensteerReverseChannelKind;\n readonly status?: number;\n readonly text?: string;\n}\n\nexport interface OpensteerReverseAwaitRecordWorkflowStep {\n readonly id: string;\n readonly kind: \"await-record\";\n readonly label: string;\n readonly channel: OpensteerChannelDescriptor;\n readonly recordId?: string;\n readonly match?: OpensteerReverseAwaitRecordMatch;\n readonly validationRuleIds?: readonly string[];\n readonly timeoutMs?: number;\n readonly bindAs?: string;\n}\n\nexport interface OpensteerReverseAssertWorkflowStep {\n readonly id: string;\n readonly kind: \"assert\";\n readonly label: string;\n readonly validationRuleIds: readonly string[];\n readonly binding?: string;\n}\n\nexport type OpensteerReverseWorkflowStep =\n | OpensteerReverseOperationWorkflowStep\n | OpensteerReverseAwaitRecordWorkflowStep\n | OpensteerReverseAssertWorkflowStep;\n\nexport interface OpensteerReversePackageRequirements {\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly manualCalibration: \"not-needed\" | \"recommended\" | \"required\";\n readonly stateSources: readonly OpensteerStateSourceKind[];\n}\n\nexport interface OpensteerChannelDescriptor {\n readonly kind: OpensteerReverseChannelKind;\n readonly recordKind: \"http\" | \"event-stream\" | \"websocket\";\n readonly method?: string;\n readonly url: string;\n readonly subprotocol?: string;\n}\n\nexport interface OpensteerReverseAdvisoryTemplate {\n readonly id: string;\n readonly label: string;\n readonly channel: OpensteerReverseChannelKind;\n readonly execution: \"transport\" | \"page-observation\";\n readonly stateSource: OpensteerStateSourceKind;\n readonly observationId?: string;\n readonly transport?: TransportKind;\n readonly guardIds: readonly string[];\n readonly resolverIds: readonly string[];\n readonly requiresBrowser: boolean;\n readonly requiresLiveState: boolean;\n readonly viability: \"ready\" | \"draft\" | \"unsupported\";\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseGuardRecord {\n readonly id: string;\n readonly kind: \"interaction\" | \"state\" | \"script\" | \"manual\";\n readonly label: string;\n readonly status: \"required\" | \"satisfied\" | \"unresolved\";\n readonly interactionTraceId?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseObservationRecord {\n readonly id: string;\n readonly capturedAt: number;\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly stateSource: OpensteerStateSourceKind;\n readonly networkRecordIds: readonly string[];\n readonly scriptArtifactIds: readonly string[];\n readonly interactionTraceIds: readonly string[];\n readonly stateSnapshotIds: readonly string[];\n readonly notes?: string;\n}\n\nexport interface OpensteerReverseCandidateRecord {\n readonly id: string;\n readonly observationId: string;\n readonly clusterId: string;\n readonly recordId: string;\n readonly channel: OpensteerChannelDescriptor;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly boundary: OpensteerReverseCandidateBoundary;\n readonly summary: string;\n readonly matchedTargetHints: readonly string[];\n readonly advisoryTags: readonly OpensteerReverseAdvisoryTag[];\n readonly constraints: readonly OpensteerReverseConstraintKind[];\n readonly signals: OpensteerReverseAdvisorySignals;\n readonly inputs: readonly OpensteerRequestInputDescriptor[];\n readonly resolvers: readonly OpensteerExecutableResolver[];\n readonly guardIds: readonly string[];\n readonly scriptArtifactIds: readonly string[];\n readonly advisoryTemplates: readonly OpensteerReverseAdvisoryTemplate[];\n}\n\nexport interface OpensteerReverseReplayValidation {\n readonly statusMatches?: boolean;\n readonly structureMatches?: boolean;\n readonly opened?: boolean;\n readonly firstChunkObserved?: boolean;\n readonly firstChunkMatches?: boolean;\n readonly messageObserved?: boolean;\n readonly messageCount?: number;\n}\n\nexport interface OpensteerReverseReplayRunRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly packageId: string;\n readonly success: boolean;\n readonly channel?: OpensteerReverseChannelKind;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly transport?: TransportKind;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly executedStepIds: readonly string[];\n readonly failedStepId?: string;\n readonly bindings?: Readonly<Record<string, JsonValue>>;\n readonly recordId?: string;\n readonly status?: number;\n readonly validation: OpensteerReverseReplayValidation;\n readonly error?: string;\n}\n\nexport interface OpensteerReverseExperimentRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly kind: \"replay-attempt\" | \"field-variation\";\n readonly hypothesis: string;\n readonly success: boolean;\n readonly status?: number;\n readonly notes?: string;\n readonly validation?: OpensteerReverseReplayValidation;\n}\n\nexport interface OpensteerReverseRequirement {\n readonly id: string;\n readonly kind: OpensteerReverseRequirementKind;\n readonly status: OpensteerReverseRequirementStatus;\n readonly label: string;\n readonly description?: string;\n readonly blocking: boolean;\n readonly resolverId?: string;\n readonly guardId?: string;\n readonly stepId?: string;\n readonly inputNames?: readonly string[];\n readonly traceId?: string;\n readonly artifactId?: string;\n readonly recordId?: string;\n}\n\nexport interface OpensteerReverseSuggestedEdit {\n readonly id: string;\n readonly kind: OpensteerReverseSuggestedEditKind;\n readonly label: string;\n readonly description?: string;\n readonly resolverId?: string;\n readonly guardId?: string;\n readonly stepId?: string;\n readonly traceId?: string;\n readonly artifactId?: string;\n readonly recordId?: string;\n readonly payload?: JsonValue;\n}\n\nexport interface OpensteerReverseExportRecord {\n readonly id: string;\n readonly createdAt: number;\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly packageId: string;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly requestPlanId?: string;\n}\n\nexport interface OpensteerReverseCasePayload {\n readonly objective: string;\n readonly notes?: string;\n readonly status: OpensteerReverseCaseStatus;\n readonly stateSource: OpensteerStateSourceKind;\n readonly observations: readonly OpensteerReverseObservationRecord[];\n readonly observationClusters: readonly OpensteerObservationCluster[];\n readonly observedRecords: readonly OpensteerReverseObservedRecord[];\n readonly candidates: readonly OpensteerReverseCandidateRecord[];\n readonly guards: readonly OpensteerReverseGuardRecord[];\n readonly stateSnapshots: readonly OpensteerStateSnapshot[];\n readonly stateDeltas: readonly OpensteerStateDelta[];\n readonly experiments: readonly OpensteerReverseExperimentRecord[];\n readonly replayRuns: readonly OpensteerReverseReplayRunRecord[];\n readonly exports: readonly OpensteerReverseExportRecord[];\n}\n\nexport interface OpensteerReverseCaseRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReverseCasePayload;\n}\n\nexport interface OpensteerReversePackagePayload {\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly caseId: string;\n readonly objective: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly sourceRecordId: string;\n readonly candidateId?: string;\n readonly candidate?: OpensteerReverseCandidateRecord;\n readonly templateId?: string;\n readonly template?: OpensteerReverseAdvisoryTemplate;\n readonly channel?: OpensteerChannelDescriptor;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly observationId?: string;\n readonly transport?: TransportKind;\n readonly guardIds: readonly string[];\n readonly workflow: readonly OpensteerReverseWorkflowStep[];\n readonly resolvers: readonly OpensteerExecutableResolver[];\n readonly validators: readonly OpensteerValidationRule[];\n readonly stateSnapshots: readonly OpensteerStateSnapshot[];\n readonly requirements: OpensteerReversePackageRequirements;\n readonly requestPlanId?: string;\n readonly unresolvedRequirements: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits: readonly OpensteerReverseSuggestedEdit[];\n readonly attachedTraceIds: readonly string[];\n readonly attachedArtifactIds: readonly string[];\n readonly attachedRecordIds: readonly string[];\n readonly notes?: string;\n readonly parentPackageId?: string;\n}\n\nexport interface OpensteerReversePackageRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReversePackagePayload;\n}\n\nexport interface OpensteerReverseCandidateAdvisoryItem {\n readonly candidateId: string;\n readonly clusterId: string;\n readonly advisoryRank: number;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly summary: string;\n readonly advisoryTags: readonly OpensteerReverseAdvisoryTag[];\n readonly constraints: readonly OpensteerReverseConstraintKind[];\n readonly signals: OpensteerReverseAdvisorySignals;\n readonly reasons: readonly string[];\n}\n\nexport interface OpensteerReverseDiscoverySummaryCounts {\n readonly hosts: Readonly<Record<string, number>>;\n readonly channels: Readonly<Record<string, number>>;\n readonly resourceTypes: Readonly<Record<string, number>>;\n readonly advisoryTags: Readonly<Record<string, number>>;\n readonly constraints: Readonly<Record<string, number>>;\n readonly relationKinds: Readonly<Record<string, number>>;\n}\n\nexport interface OpensteerReverseReportPayload {\n readonly kind: OpensteerReverseReportKind;\n readonly caseId: string;\n readonly objective: string;\n readonly observations: readonly OpensteerReverseObservationRecord[];\n readonly observationClusters: readonly OpensteerObservationCluster[];\n readonly observedRecords: readonly OpensteerReverseObservedRecord[];\n readonly guards: readonly OpensteerReverseGuardRecord[];\n readonly stateDeltas: readonly OpensteerStateDelta[];\n readonly summaryCounts: OpensteerReverseDiscoverySummaryCounts;\n readonly candidateAdvisories: readonly OpensteerReverseCandidateAdvisoryItem[];\n readonly query?: OpensteerReverseQuerySnapshot;\n readonly experiments: readonly OpensteerReverseExperimentRecord[];\n readonly replayRuns: readonly OpensteerReverseReplayRunRecord[];\n readonly linkedNetworkRecordIds: readonly string[];\n readonly linkedInteractionTraceIds: readonly string[];\n readonly linkedArtifactIds: readonly string[];\n readonly linkedStateSnapshotIds: readonly string[];\n readonly packageId?: string;\n readonly packageKind?: OpensteerReversePackageKind;\n readonly packageReadiness?: OpensteerReversePackageReadiness;\n readonly unresolvedRequirements?: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits?: readonly OpensteerReverseSuggestedEdit[];\n readonly package?: OpensteerReversePackageRecord;\n}\n\nexport interface OpensteerReverseReportRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerReverseReportPayload;\n}\n\nexport interface OpensteerReverseObservedRecord {\n readonly recordId: string;\n readonly observationId: string;\n readonly clusterId: string;\n readonly observedAt?: number;\n readonly channel: OpensteerChannelDescriptor;\n readonly bodyCodec: OpensteerBodyCodecDescriptor;\n readonly resourceType?: string;\n readonly status?: number;\n readonly matchedTargetHints: readonly string[];\n readonly relationKinds: readonly OpensteerObservationClusterRelationshipKind[];\n}\n\nexport interface OpensteerReverseQueryFilters {\n readonly recordId?: string;\n readonly clusterId?: string;\n readonly candidateId?: string;\n readonly host?: string;\n readonly path?: string;\n readonly method?: string;\n readonly status?: string;\n readonly resourceType?: string;\n readonly channel?: OpensteerReverseChannelKind;\n readonly boundary?: OpensteerReverseCandidateBoundary;\n readonly advisoryTag?: OpensteerReverseAdvisoryTag;\n readonly constraint?: OpensteerReverseConstraintKind;\n readonly bodyCodec?: OpensteerBodyCodecKind;\n readonly relationKind?: OpensteerObservationClusterRelationshipKind;\n readonly hasGuards?: boolean;\n readonly hasResolvers?: boolean;\n readonly artifactId?: string;\n readonly stateSnapshotId?: string;\n readonly traceId?: string;\n readonly evidenceRef?: string;\n readonly text?: string;\n}\n\nexport interface OpensteerReverseSortTerm {\n readonly key: OpensteerReverseSortKey;\n readonly direction?: OpensteerReverseSortDirection;\n}\n\nexport interface OpensteerReverseQuerySort {\n readonly preset?: OpensteerReverseSortPreset;\n readonly keys?: readonly OpensteerReverseSortTerm[];\n}\n\nexport interface OpensteerReverseQuerySnapshot {\n readonly view: OpensteerReverseQueryView;\n readonly filters?: OpensteerReverseQueryFilters;\n readonly sort: OpensteerReverseQuerySort;\n readonly limit: number;\n readonly totalCount: number;\n readonly nextCursor?: string;\n readonly resultIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryRecordItem {\n readonly record: OpensteerReverseObservedRecord;\n readonly candidateIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryClusterItem {\n readonly cluster: OpensteerObservationCluster;\n readonly candidateIds: readonly string[];\n}\n\nexport interface OpensteerReverseQueryCandidateItem {\n readonly candidate: OpensteerReverseCandidateRecord;\n readonly reasons: readonly string[];\n}\n\nexport interface OpensteerReverseDiscoverInput {\n readonly caseId?: string;\n readonly key?: string;\n readonly objective?: string;\n readonly notes?: string;\n readonly tags?: readonly string[];\n readonly pageRef?: PageRef;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly network?: {\n readonly url?: string;\n readonly hostname?: string;\n readonly path?: string;\n readonly method?: string;\n readonly resourceType?: string;\n readonly includeBodies?: boolean;\n };\n readonly includeScripts?: boolean;\n readonly includeStorage?: boolean;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n readonly interactionTraceIds?: readonly string[];\n readonly targetHints?: OpensteerReverseTargetHints;\n readonly captureWindowMs?: number;\n readonly manualCalibration?: OpensteerReverseManualCalibrationMode;\n}\n\nexport interface OpensteerReverseDiscoverOutput {\n readonly caseId: string;\n readonly reportId: string;\n readonly summary: {\n readonly observationIds: readonly string[];\n readonly recordCount: number;\n readonly clusterCount: number;\n readonly candidateCount: number;\n };\n readonly index: {\n readonly views: readonly OpensteerReverseQueryView[];\n readonly sortableKeys: readonly OpensteerReverseSortKey[];\n readonly channels: readonly OpensteerReverseChannelKind[];\n readonly hosts: readonly string[];\n readonly relationKinds: readonly OpensteerObservationClusterRelationshipKind[];\n };\n}\n\nexport interface OpensteerReverseQueryInput {\n readonly caseId: string;\n readonly view?: OpensteerReverseQueryView;\n readonly filters?: OpensteerReverseQueryFilters;\n readonly sort?: OpensteerReverseQuerySort;\n readonly limit?: number;\n readonly cursor?: string;\n}\n\nexport interface OpensteerReverseQueryOutput {\n readonly caseId: string;\n readonly view: OpensteerReverseQueryView;\n readonly query: OpensteerReverseQuerySnapshot;\n readonly totalCount: number;\n readonly nextCursor?: string;\n readonly records?: readonly OpensteerReverseQueryRecordItem[];\n readonly clusters?: readonly OpensteerReverseQueryClusterItem[];\n readonly candidates?: readonly OpensteerReverseQueryCandidateItem[];\n}\n\nexport interface OpensteerReversePackageCreateInput {\n readonly caseId: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly templateId?: string;\n readonly key?: string;\n readonly version?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerReversePackageCreateOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport interface OpensteerReversePackageRunInput {\n readonly packageId: string;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerReversePackageRunOutput {\n readonly packageId: string;\n readonly caseId?: string;\n readonly source: {\n readonly kind: \"record\" | \"candidate\";\n readonly id: string;\n };\n readonly candidateId?: string;\n readonly templateId?: string;\n readonly success: boolean;\n readonly kind: OpensteerReversePackageKind;\n readonly readiness: OpensteerReversePackageReadiness;\n readonly channel?: OpensteerReverseChannelKind;\n readonly transport?: TransportKind;\n readonly stateSource?: OpensteerStateSourceKind;\n readonly recordId?: string;\n readonly status?: number;\n readonly validation: OpensteerReverseReplayValidation;\n readonly executedStepIds: readonly string[];\n readonly failedStepId?: string;\n readonly bindings: Readonly<Record<string, JsonValue>>;\n readonly replayRunId?: string;\n readonly unresolvedRequirements: readonly OpensteerReverseRequirement[];\n readonly suggestedEdits: readonly OpensteerReverseSuggestedEdit[];\n readonly error?: string;\n}\n\nexport interface OpensteerReverseExportInput {\n readonly packageId: string;\n readonly key?: string;\n readonly version?: string;\n}\n\nexport interface OpensteerReverseExportOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly requestPlan?: OpensteerRequestPlanRecord;\n}\n\nexport interface OpensteerReverseReportInput {\n readonly caseId?: string;\n readonly packageId?: string;\n readonly reportId?: string;\n readonly kind?: OpensteerReverseReportKind;\n}\n\nexport interface OpensteerReverseReportOutput {\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport interface OpensteerReversePackageGetInput {\n readonly packageId: string;\n}\n\nexport interface OpensteerReversePackageGetOutput {\n readonly package: OpensteerReversePackageRecord;\n}\n\nexport interface OpensteerReversePackageListInput {\n readonly caseId?: string;\n readonly key?: string;\n readonly kind?: OpensteerReversePackageKind;\n readonly readiness?: OpensteerReversePackageReadiness;\n}\n\nexport interface OpensteerReversePackageListOutput {\n readonly packages: readonly OpensteerReversePackageRecord[];\n}\n\nexport interface OpensteerReversePackagePatchInput {\n readonly packageId: string;\n readonly key?: string;\n readonly version?: string;\n readonly notes?: string;\n readonly workflow?: readonly OpensteerReverseWorkflowStep[];\n readonly resolvers?: readonly OpensteerExecutableResolver[];\n readonly validators?: readonly OpensteerValidationRule[];\n readonly attachedTraceIds?: readonly string[];\n readonly attachedArtifactIds?: readonly string[];\n readonly attachedRecordIds?: readonly string[];\n readonly stateSnapshotIds?: readonly string[];\n}\n\nexport interface OpensteerReversePackagePatchOutput {\n readonly package: OpensteerReversePackageRecord;\n readonly report: OpensteerReverseReportRecord;\n}\n\nexport const opensteerStateSourceKindSchema: JsonSchema = enumSchema(\n [\"temporary\", \"persistent\", \"attach\"] as const,\n { title: \"OpensteerStateSourceKind\" },\n);\n\nexport const opensteerReverseCaseStatusSchema: JsonSchema = enumSchema(\n [\"capturing\", \"analyzing\", \"ready\", \"attention\"] as const,\n { title: \"OpensteerReverseCaseStatus\" },\n);\n\nexport const opensteerReverseChannelKindSchema: JsonSchema = enumSchema(\n [\"http\", \"event-stream\", \"websocket\"] as const,\n { title: \"OpensteerReverseChannelKind\" },\n);\n\nexport const opensteerReverseManualCalibrationModeSchema: JsonSchema = enumSchema(\n [\"allow\", \"avoid\", \"require\"] as const,\n { title: \"OpensteerReverseManualCalibrationMode\" },\n);\n\nexport const opensteerReverseCandidateBoundarySchema: JsonSchema = enumSchema(\n [\"first-party\", \"same-site\", \"third-party\"] as const,\n { title: \"OpensteerReverseCandidateBoundary\" },\n);\n\nexport const opensteerReverseAdvisoryTagSchema: JsonSchema = enumSchema(\n [\n \"data\",\n \"facet\",\n \"telemetry\",\n \"subscription\",\n \"navigation\",\n \"document\",\n \"route-data\",\n \"search\",\n \"tracking\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerReverseAdvisoryTag\" },\n);\n\nexport const opensteerReverseConstraintKindSchema: JsonSchema = enumSchema(\n [\n \"requires-browser\",\n \"requires-cookie\",\n \"requires-storage\",\n \"requires-script\",\n \"requires-guard\",\n \"requires-live-state\",\n \"opaque-body\",\n \"unsupported\",\n ] as const,\n { title: \"OpensteerReverseConstraintKind\" },\n);\n\nexport const opensteerRequestInputLocationSchema: JsonSchema = enumSchema(\n [\"path\", \"query\", \"header\", \"cookie\", \"body-field\"] as const,\n { title: \"OpensteerRequestInputLocation\" },\n);\n\nexport const opensteerRequestInputRequirednessSchema: JsonSchema = enumSchema(\n [\"required\", \"optional\", \"unknown\"] as const,\n { title: \"OpensteerRequestInputRequiredness\" },\n);\n\nexport const opensteerRequestInputClassificationSchema: JsonSchema = enumSchema(\n [\"managed\", \"static\", \"contextual\", \"volatile\"] as const,\n { title: \"OpensteerRequestInputClassification\" },\n);\n\nexport const opensteerRequestInputSourceSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"cookie\",\n \"storage\",\n \"prior-response\",\n \"page\",\n \"script\",\n \"guard-output\",\n \"runtime-managed\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerRequestInputSource\" },\n);\n\nexport const opensteerRequestInputMaterializationPolicySchema: JsonSchema = enumSchema(\n [\"copy\", \"omit\", \"recompute\", \"resolve\"] as const,\n { title: \"OpensteerRequestInputMaterializationPolicy\" },\n);\n\nexport const opensteerRequestInputExportPolicySchema: JsonSchema = enumSchema(\n [\"portable\", \"browser-bound\", \"blocked\"] as const,\n { title: \"OpensteerRequestInputExportPolicy\" },\n);\n\nexport const opensteerReverseQueryViewSchema: JsonSchema = enumSchema(\n [\"records\", \"clusters\", \"candidates\"] as const,\n { title: \"OpensteerReverseQueryView\" },\n);\n\nexport const opensteerReverseSortKeySchema: JsonSchema = enumSchema(\n [\n \"observed-at\",\n \"advisory-rank\",\n \"target-hint-matches\",\n \"response-richness\",\n \"portability\",\n \"boundary\",\n \"success\",\n ] as const,\n { title: \"OpensteerReverseSortKey\" },\n);\n\nexport const opensteerReverseSortPresetSchema: JsonSchema = enumSchema(\n [\n \"advisory-rank\",\n \"observed-at\",\n \"portability\",\n \"first-party\",\n \"hint-match\",\n \"response-richness\",\n ] as const,\n { title: \"OpensteerReverseSortPreset\" },\n);\n\nexport const opensteerReverseSortDirectionSchema: JsonSchema = enumSchema(\n [\"asc\", \"desc\"] as const,\n {\n title: \"OpensteerReverseSortDirection\",\n },\n);\n\nexport const opensteerObservationClusterRelationshipKindSchema: JsonSchema = enumSchema(\n [\"seed\", \"preflight\", \"redirect\", \"retry\", \"duplicate\", \"follow-on\"] as const,\n { title: \"OpensteerObservationClusterRelationshipKind\" },\n);\n\nexport const opensteerReverseReportKindSchema: JsonSchema = enumSchema(\n [\"discovery\", \"package\"] as const,\n { title: \"OpensteerReverseReportKind\" },\n);\n\nexport const opensteerReversePackageKindSchema: JsonSchema = enumSchema(\n [\"portable-http\", \"browser-workflow\"] as const,\n { title: \"OpensteerReversePackageKind\" },\n);\n\nexport const opensteerReversePackageReadinessSchema: JsonSchema = enumSchema(\n [\"runnable\", \"draft\", \"unsupported\"] as const,\n { title: \"OpensteerReversePackageReadiness\" },\n);\n\nexport const opensteerBodyCodecKindSchema: JsonSchema = enumSchema(\n [\n \"json\",\n \"form-urlencoded\",\n \"multipart\",\n \"graphql\",\n \"persisted-graphql\",\n \"text\",\n \"opaque-binary\",\n \"sse\",\n \"websocket-json\",\n \"websocket-text\",\n \"unknown\",\n ] as const,\n { title: \"OpensteerBodyCodecKind\" },\n);\n\nexport const opensteerExecutableResolverKindSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"cookie\",\n \"storage\",\n \"prior-record\",\n \"binding\",\n \"candidate\",\n \"case\",\n \"state-snapshot\",\n \"artifact\",\n \"manual\",\n \"runtime-managed\",\n ] as const,\n { title: \"OpensteerExecutableResolverKind\" },\n);\n\nexport const opensteerValueReferenceKindSchema: JsonSchema = enumSchema(\n [\n \"literal\",\n \"resolver\",\n \"binding\",\n \"candidate\",\n \"case\",\n \"record\",\n \"artifact\",\n \"state-snapshot\",\n \"runtime\",\n \"manual\",\n ] as const,\n { title: \"OpensteerValueReferenceKind\" },\n);\n\nexport const opensteerRuntimeValueKeySchema: JsonSchema = enumSchema(\n [\"pageRef\", \"packageId\", \"caseId\", \"candidateId\", \"objective\"] as const,\n { title: \"OpensteerRuntimeValueKey\" },\n);\n\nexport const opensteerValidationRuleKindSchema: JsonSchema = enumSchema(\n [\n \"status\",\n \"json-structure\",\n \"text-includes\",\n \"stream-first-chunk\",\n \"websocket-open\",\n \"message-count-at-least\",\n ] as const,\n { title: \"OpensteerValidationRuleKind\" },\n);\n\nexport const opensteerReverseWorkflowStepKindSchema: JsonSchema = enumSchema(\n [\"operation\", \"await-record\", \"assert\"] as const,\n { title: \"OpensteerReverseWorkflowStepKind\" },\n);\n\nexport const opensteerReverseRequirementKindSchema: JsonSchema = enumSchema(\n [\"resolver\", \"guard\", \"workflow-step\", \"state\", \"channel\", \"unsupported\"] as const,\n { title: \"OpensteerReverseRequirementKind\" },\n);\n\nexport const opensteerReverseRequirementStatusSchema: JsonSchema = enumSchema(\n [\"required\", \"recommended\"] as const,\n { title: \"OpensteerReverseRequirementStatus\" },\n);\n\nexport const opensteerReverseSuggestedEditKindSchema: JsonSchema = enumSchema(\n [\n \"set-resolver\",\n \"attach-trace\",\n \"replace-workflow\",\n \"patch-step-input\",\n \"switch-state-source\",\n \"inspect-evidence\",\n \"mark-unsupported\",\n ] as const,\n { title: \"OpensteerReverseSuggestedEditKind\" },\n);\n\nconst jsonValueSchema: JsonSchema = defineSchema({\n title: \"JsonValue\",\n});\n\nexport const opensteerValueReferenceSchema: JsonSchema = objectSchema(\n {\n kind: opensteerValueReferenceKindSchema,\n pointer: stringSchema({ minLength: 1 }),\n resolverId: stringSchema({ minLength: 1 }),\n binding: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n runtimeKey: opensteerRuntimeValueKeySchema,\n value: jsonValueSchema,\n placeholder: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerValueReference\",\n required: [\"kind\"],\n },\n);\n\nexport const opensteerValueTemplateSchema: JsonSchema = defineSchema({\n title: \"OpensteerValueTemplate\",\n});\n\nexport const opensteerReverseTargetHintsSchema: JsonSchema = objectSchema(\n {\n hosts: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n paths: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n operationNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n channels: arraySchema(opensteerReverseChannelKindSchema, { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseTargetHints\",\n },\n);\n\nexport const opensteerBodyCodecDescriptorSchema: JsonSchema = objectSchema(\n {\n kind: opensteerBodyCodecKindSchema,\n contentType: stringSchema({ minLength: 1 }),\n operationName: stringSchema({ minLength: 1 }),\n fieldPaths: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerBodyCodecDescriptor\",\n required: [\"kind\", \"fieldPaths\"],\n },\n);\n\nexport const opensteerObservationClusterSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n members: arraySchema(\n objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observedAt: integerSchema({ minimum: 0 }),\n resourceType: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n relation: opensteerObservationClusterRelationshipKindSchema,\n relatedRecordId: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerObservationClusterMember\",\n required: [\"recordId\", \"relation\", \"matchedTargetHints\"],\n },\n ),\n ),\n },\n {\n title: \"OpensteerObservationCluster\",\n required: [\"id\", \"observationId\", \"label\", \"channel\", \"url\", \"matchedTargetHints\", \"members\"],\n },\n);\n\nconst opensteerStateSnapshotCookieSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n domain: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n secure: { type: \"boolean\" },\n httpOnly: { type: \"boolean\" },\n sameSite: enumSchema([\"strict\", \"lax\", \"none\"] as const),\n priority: enumSchema([\"low\", \"medium\", \"high\"] as const),\n partitionKey: stringSchema({ minLength: 1 }),\n session: { type: \"boolean\" },\n expiresAt: oneOfSchema([integerSchema({ minimum: 0 }), { type: \"null\" }]),\n },\n {\n title: \"OpensteerStateSnapshotCookie\",\n required: [\"name\", \"value\", \"domain\", \"path\", \"secure\", \"httpOnly\", \"session\"],\n },\n);\n\nexport const opensteerStateSnapshotSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n cookies: arraySchema(opensteerStateSnapshotCookieSchema),\n storage: storageSnapshotSchema,\n hiddenFields: arraySchema(\n objectSchema(\n {\n path: stringSchema({ minLength: 1 }),\n name: stringSchema({ minLength: 1 }),\n value: stringSchema(),\n },\n {\n title: \"OpensteerStateSnapshotHiddenField\",\n required: [\"path\", \"name\", \"value\"],\n },\n ),\n ),\n globals: recordSchema({}, { title: \"OpensteerStateSnapshotGlobals\" }),\n },\n {\n title: \"OpensteerStateSnapshot\",\n required: [\"id\", \"capturedAt\"],\n },\n);\n\nexport const opensteerStateDeltaSchema: JsonSchema = objectSchema(\n {\n beforeStateId: stringSchema({ minLength: 1 }),\n afterStateId: stringSchema({ minLength: 1 }),\n cookiesChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n storageChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n hiddenFieldsChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n globalsChanged: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerStateDelta\",\n required: [\"cookiesChanged\", \"storageChanged\", \"hiddenFieldsChanged\", \"globalsChanged\"],\n },\n);\n\nexport const opensteerRequestInputDescriptorSchema: JsonSchema = objectSchema(\n {\n name: stringSchema({ minLength: 1 }),\n location: opensteerRequestInputLocationSchema,\n path: stringSchema({ minLength: 1 }),\n wireName: stringSchema({ minLength: 1 }),\n requiredness: opensteerRequestInputRequirednessSchema,\n classification: opensteerRequestInputClassificationSchema,\n source: opensteerRequestInputSourceSchema,\n materializationPolicy: opensteerRequestInputMaterializationPolicySchema,\n exportPolicy: opensteerRequestInputExportPolicySchema,\n originalValue: stringSchema(),\n provenance: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n sourcePointer: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerRequestInputDescriptorProvenance\",\n },\n ),\n unlockedByGuardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerRequestInputDescriptor\",\n required: [\n \"name\",\n \"location\",\n \"requiredness\",\n \"classification\",\n \"source\",\n \"materializationPolicy\",\n \"exportPolicy\",\n ],\n },\n);\n\nexport const opensteerExecutableResolverSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerExecutableResolverKindSchema,\n label: stringSchema({ minLength: 1 }),\n status: enumSchema([\"ready\", \"missing\"] as const),\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n description: stringSchema({ minLength: 1 }),\n inputNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n guardId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n valueRef: opensteerValueReferenceSchema,\n },\n {\n title: \"OpensteerExecutableResolver\",\n required: [\"id\", \"kind\", \"label\", \"status\", \"requiresBrowser\", \"requiresLiveState\"],\n },\n);\n\nexport const opensteerReverseAdvisorySignalsSchema: JsonSchema = objectSchema(\n {\n advisoryRank: numberSchema(),\n observedAt: integerSchema({ minimum: 0 }),\n targetHintMatches: integerSchema({ minimum: 0 }),\n responseRichness: integerSchema({ minimum: 0 }),\n portabilityWeight: integerSchema({ minimum: 0 }),\n boundaryWeight: integerSchema({ minimum: 0 }),\n successfulStatus: { type: \"boolean\" },\n fetchLike: { type: \"boolean\" },\n hasResponseBody: { type: \"boolean\" },\n dataPathMatch: { type: \"boolean\" },\n cookieInputCount: integerSchema({ minimum: 0 }),\n storageInputCount: integerSchema({ minimum: 0 }),\n volatileInputCount: integerSchema({ minimum: 0 }),\n guardCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseAdvisorySignals\",\n required: [\n \"advisoryRank\",\n \"targetHintMatches\",\n \"responseRichness\",\n \"portabilityWeight\",\n \"boundaryWeight\",\n \"successfulStatus\",\n \"fetchLike\",\n \"hasResponseBody\",\n \"dataPathMatch\",\n \"cookieInputCount\",\n \"storageInputCount\",\n \"volatileInputCount\",\n \"guardCount\",\n ],\n },\n);\n\nexport const opensteerValidationRuleSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerValidationRuleKindSchema,\n label: stringSchema({ minLength: 1 }),\n required: { type: \"boolean\" },\n expectedStatus: integerSchema({ minimum: 0 }),\n structureHash: stringSchema({ minLength: 1 }),\n textIncludes: stringSchema({ minLength: 1 }),\n minimumCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerValidationRule\",\n required: [\"id\", \"kind\", \"label\", \"required\"],\n },\n);\n\nconst opensteerChannelDescriptorSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReverseChannelKindSchema,\n recordKind: networkRecordKindSchema,\n method: stringSchema({ minLength: 1 }),\n url: stringSchema({ minLength: 1 }),\n subprotocol: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerChannelDescriptor\",\n required: [\"kind\", \"recordKind\", \"url\"],\n },\n);\n\nconst opensteerReverseOperationWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"operation\"] as const),\n label: stringSchema({ minLength: 1 }),\n operation: stringSchema({ minLength: 1 }),\n input: opensteerValueTemplateSchema,\n bindAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseOperationWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"operation\", \"input\"],\n },\n);\n\nconst opensteerReverseAwaitRecordWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"await-record\"] as const),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerChannelDescriptorSchema,\n recordId: stringSchema({ minLength: 1 }),\n match: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n status: integerSchema({ minimum: 0 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAwaitRecordMatch\",\n },\n ),\n validationRuleIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n timeoutMs: integerSchema({ minimum: 0 }),\n bindAs: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAwaitRecordWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"channel\"],\n },\n);\n\nconst opensteerReverseAssertWorkflowStepSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"assert\"] as const),\n label: stringSchema({ minLength: 1 }),\n validationRuleIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n binding: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAssertWorkflowStep\",\n required: [\"id\", \"kind\", \"label\", \"validationRuleIds\"],\n },\n);\n\nexport const opensteerReverseWorkflowStepSchema: JsonSchema = oneOfSchema(\n [\n opensteerReverseOperationWorkflowStepSchema,\n opensteerReverseAwaitRecordWorkflowStepSchema,\n opensteerReverseAssertWorkflowStepSchema,\n ],\n {\n title: \"OpensteerReverseWorkflowStep\",\n },\n);\n\nexport const opensteerReversePackageRequirementsSchema: JsonSchema = objectSchema(\n {\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n manualCalibration: enumSchema([\"not-needed\", \"recommended\", \"required\"] as const),\n stateSources: arraySchema(opensteerStateSourceKindSchema, { uniqueItems: true }),\n },\n {\n title: \"OpensteerReversePackageRequirements\",\n required: [\"requiresBrowser\", \"requiresLiveState\", \"manualCalibration\", \"stateSources\"],\n },\n);\n\nexport const opensteerReverseAdvisoryTemplateSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n label: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n execution: enumSchema([\"transport\", \"page-observation\"] as const),\n stateSource: opensteerStateSourceKindSchema,\n observationId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n resolverIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n requiresBrowser: { type: \"boolean\" },\n requiresLiveState: { type: \"boolean\" },\n viability: enumSchema([\"ready\", \"draft\", \"unsupported\"] as const),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseAdvisoryTemplate\",\n required: [\n \"id\",\n \"label\",\n \"channel\",\n \"execution\",\n \"stateSource\",\n \"guardIds\",\n \"resolverIds\",\n \"requiresBrowser\",\n \"requiresLiveState\",\n \"viability\",\n ],\n },\n);\n\nexport const opensteerReverseGuardRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"interaction\", \"state\", \"script\", \"manual\"] as const),\n label: stringSchema({ minLength: 1 }),\n status: enumSchema([\"required\", \"satisfied\", \"unresolved\"] as const),\n interactionTraceId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseGuardRecord\",\n required: [\"id\", \"kind\", \"label\", \"status\"],\n },\n);\n\nexport const opensteerReverseObservationRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n capturedAt: integerSchema({ minimum: 0 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n stateSource: opensteerStateSourceKindSchema,\n networkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n scriptArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n interactionTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n stateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseObservationRecord\",\n required: [\n \"id\",\n \"capturedAt\",\n \"stateSource\",\n \"networkRecordIds\",\n \"scriptArtifactIds\",\n \"interactionTraceIds\",\n \"stateSnapshotIds\",\n ],\n },\n);\n\nexport const opensteerReverseObservedRecordSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n observedAt: integerSchema({ minimum: 0 }),\n channel: opensteerChannelDescriptorSchema,\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n resourceType: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n relationKinds: arraySchema(opensteerObservationClusterRelationshipKindSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerReverseObservedRecord\",\n required: [\n \"recordId\",\n \"observationId\",\n \"clusterId\",\n \"channel\",\n \"bodyCodec\",\n \"matchedTargetHints\",\n \"relationKinds\",\n ],\n },\n);\n\nexport const opensteerReverseCandidateRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n observationId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n channel: opensteerChannelDescriptorSchema,\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n summary: stringSchema({ minLength: 1 }),\n matchedTargetHints: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n advisoryTags: arraySchema(opensteerReverseAdvisoryTagSchema, { uniqueItems: true }),\n constraints: arraySchema(opensteerReverseConstraintKindSchema, { uniqueItems: true }),\n signals: opensteerReverseAdvisorySignalsSchema,\n inputs: arraySchema(opensteerRequestInputDescriptorSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n scriptArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n advisoryTemplates: arraySchema(opensteerReverseAdvisoryTemplateSchema),\n },\n {\n title: \"OpensteerReverseCandidateRecord\",\n required: [\n \"id\",\n \"observationId\",\n \"clusterId\",\n \"recordId\",\n \"channel\",\n \"bodyCodec\",\n \"boundary\",\n \"summary\",\n \"matchedTargetHints\",\n \"advisoryTags\",\n \"constraints\",\n \"signals\",\n \"inputs\",\n \"resolvers\",\n \"guardIds\",\n \"scriptArtifactIds\",\n \"advisoryTemplates\",\n ],\n },\n);\n\nexport const opensteerReverseReplayValidationSchema: JsonSchema = objectSchema(\n {\n statusMatches: { type: \"boolean\" },\n structureMatches: { type: \"boolean\" },\n opened: { type: \"boolean\" },\n firstChunkObserved: { type: \"boolean\" },\n firstChunkMatches: { type: \"boolean\" },\n messageObserved: { type: \"boolean\" },\n messageCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseReplayValidation\",\n },\n);\n\nexport const opensteerReverseReplayRunRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n channel: opensteerReverseChannelKindSchema,\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n transport: transportKindSchema,\n stateSource: opensteerStateSourceKindSchema,\n executedStepIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n failedStepId: stringSchema({ minLength: 1 }),\n bindings: recordSchema({}, { title: \"OpensteerReverseReplayRunBindings\" }),\n recordId: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n validation: opensteerReverseReplayValidationSchema,\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseReplayRunRecord\",\n required: [\n \"id\",\n \"createdAt\",\n \"packageId\",\n \"success\",\n \"kind\",\n \"readiness\",\n \"executedStepIds\",\n \"validation\",\n ],\n },\n);\n\nexport const opensteerReverseExperimentRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n kind: enumSchema([\"replay-attempt\", \"field-variation\"] as const),\n hypothesis: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n status: integerSchema({ minimum: 0 }),\n notes: stringSchema({ minLength: 1 }),\n validation: opensteerReverseReplayValidationSchema,\n },\n {\n title: \"OpensteerReverseExperimentRecord\",\n required: [\"id\", \"createdAt\", \"kind\", \"hypothesis\", \"success\"],\n },\n);\n\nexport const opensteerReverseRequirementSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerReverseRequirementKindSchema,\n status: opensteerReverseRequirementStatusSchema,\n label: stringSchema({ minLength: 1 }),\n description: stringSchema({ minLength: 1 }),\n blocking: { type: \"boolean\" },\n resolverId: stringSchema({ minLength: 1 }),\n guardId: stringSchema({ minLength: 1 }),\n stepId: stringSchema({ minLength: 1 }),\n inputNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n traceId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseRequirement\",\n required: [\"id\", \"kind\", \"status\", \"label\", \"blocking\"],\n },\n);\n\nexport const opensteerReverseSuggestedEditSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n kind: opensteerReverseSuggestedEditKindSchema,\n label: stringSchema({ minLength: 1 }),\n description: stringSchema({ minLength: 1 }),\n resolverId: stringSchema({ minLength: 1 }),\n guardId: stringSchema({ minLength: 1 }),\n stepId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n artifactId: stringSchema({ minLength: 1 }),\n recordId: stringSchema({ minLength: 1 }),\n payload: jsonValueSchema,\n },\n {\n title: \"OpensteerReverseSuggestedEdit\",\n required: [\"id\", \"kind\", \"label\"],\n },\n);\n\nexport const opensteerReverseExportRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n requestPlanId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseExportRecord\",\n required: [\"id\", \"createdAt\", \"packageId\", \"kind\", \"readiness\"],\n },\n);\n\nexport const opensteerReverseCasePayloadSchema: JsonSchema = objectSchema(\n {\n objective: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n status: opensteerReverseCaseStatusSchema,\n stateSource: opensteerStateSourceKindSchema,\n observations: arraySchema(opensteerReverseObservationRecordSchema),\n observationClusters: arraySchema(opensteerObservationClusterSchema),\n observedRecords: arraySchema(opensteerReverseObservedRecordSchema),\n candidates: arraySchema(opensteerReverseCandidateRecordSchema),\n guards: arraySchema(opensteerReverseGuardRecordSchema),\n stateSnapshots: arraySchema(opensteerStateSnapshotSchema),\n stateDeltas: arraySchema(opensteerStateDeltaSchema),\n experiments: arraySchema(opensteerReverseExperimentRecordSchema),\n replayRuns: arraySchema(opensteerReverseReplayRunRecordSchema),\n exports: arraySchema(opensteerReverseExportRecordSchema),\n },\n {\n title: \"OpensteerReverseCasePayload\",\n required: [\n \"objective\",\n \"status\",\n \"stateSource\",\n \"observations\",\n \"observationClusters\",\n \"observedRecords\",\n \"candidates\",\n \"guards\",\n \"stateSnapshots\",\n \"stateDeltas\",\n \"experiments\",\n \"replayRuns\",\n \"exports\",\n ],\n },\n);\n\nexport const opensteerReverseCaseRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReverseCasePayloadSchema,\n },\n {\n title: \"OpensteerReverseCaseRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerReversePackagePayloadSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n caseId: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n sourceRecordId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n candidate: opensteerReverseCandidateRecordSchema,\n templateId: stringSchema({ minLength: 1 }),\n template: opensteerReverseAdvisoryTemplateSchema,\n channel: opensteerChannelDescriptorSchema,\n stateSource: opensteerStateSourceKindSchema,\n observationId: stringSchema({ minLength: 1 }),\n transport: transportKindSchema,\n guardIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n workflow: arraySchema(opensteerReverseWorkflowStepSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n validators: arraySchema(opensteerValidationRuleSchema),\n stateSnapshots: arraySchema(opensteerStateSnapshotSchema),\n requirements: opensteerReversePackageRequirementsSchema,\n requestPlanId: stringSchema({ minLength: 1 }),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n attachedTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n notes: stringSchema({ minLength: 1 }),\n parentPackageId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackagePayload\",\n required: [\n \"kind\",\n \"readiness\",\n \"caseId\",\n \"objective\",\n \"source\",\n \"sourceRecordId\",\n \"guardIds\",\n \"workflow\",\n \"resolvers\",\n \"validators\",\n \"stateSnapshots\",\n \"requirements\",\n \"unresolvedRequirements\",\n \"suggestedEdits\",\n \"attachedTraceIds\",\n \"attachedArtifactIds\",\n \"attachedRecordIds\",\n ],\n },\n);\n\nexport const opensteerReversePackageRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReversePackagePayloadSchema,\n },\n {\n title: \"OpensteerReversePackageRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nexport const opensteerReverseCandidateReportItemSchema: JsonSchema = objectSchema(\n {\n candidateId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n advisoryRank: numberSchema(),\n bodyCodec: opensteerBodyCodecDescriptorSchema,\n summary: stringSchema({ minLength: 1 }),\n advisoryTags: arraySchema(opensteerReverseAdvisoryTagSchema, { uniqueItems: true }),\n constraints: arraySchema(opensteerReverseConstraintKindSchema, { uniqueItems: true }),\n signals: opensteerReverseAdvisorySignalsSchema,\n reasons: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerReverseCandidateAdvisoryItem\",\n required: [\n \"candidateId\",\n \"clusterId\",\n \"advisoryRank\",\n \"bodyCodec\",\n \"summary\",\n \"advisoryTags\",\n \"constraints\",\n \"signals\",\n \"reasons\",\n ],\n },\n);\n\nconst opensteerReverseDiscoverySummaryCountsSchema: JsonSchema = objectSchema(\n {\n hosts: recordSchema(integerSchema({ minimum: 0 }), { title: \"OpensteerReverseSummaryHosts\" }),\n channels: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryChannels\",\n }),\n resourceTypes: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryResourceTypes\",\n }),\n advisoryTags: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryAdvisoryTags\",\n }),\n constraints: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryConstraints\",\n }),\n relationKinds: recordSchema(integerSchema({ minimum: 0 }), {\n title: \"OpensteerReverseSummaryRelationKinds\",\n }),\n },\n {\n title: \"OpensteerReverseDiscoverySummaryCounts\",\n required: [\n \"hosts\",\n \"channels\",\n \"resourceTypes\",\n \"advisoryTags\",\n \"constraints\",\n \"relationKinds\",\n ],\n },\n);\n\nexport const opensteerReverseReportPayloadSchema: JsonSchema = objectSchema(\n {\n kind: opensteerReverseReportKindSchema,\n caseId: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n packageKind: opensteerReversePackageKindSchema,\n packageReadiness: opensteerReversePackageReadinessSchema,\n observations: arraySchema(opensteerReverseObservationRecordSchema),\n observationClusters: arraySchema(opensteerObservationClusterSchema),\n observedRecords: arraySchema(opensteerReverseObservedRecordSchema),\n guards: arraySchema(opensteerReverseGuardRecordSchema),\n stateDeltas: arraySchema(opensteerStateDeltaSchema),\n summaryCounts: opensteerReverseDiscoverySummaryCountsSchema,\n candidateAdvisories: arraySchema(opensteerReverseCandidateReportItemSchema),\n query: objectSchema(\n {\n view: opensteerReverseQueryViewSchema,\n filters: objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n advisoryTag: opensteerReverseAdvisoryTagSchema,\n constraint: opensteerReverseConstraintKindSchema,\n bodyCodec: opensteerBodyCodecKindSchema,\n relationKind: opensteerObservationClusterRelationshipKindSchema,\n hasGuards: { type: \"boolean\" },\n hasResolvers: { type: \"boolean\" },\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n evidenceRef: stringSchema({ minLength: 1 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseReportQueryFilters\",\n },\n ),\n sort: objectSchema(\n {\n preset: opensteerReverseSortPresetSchema,\n keys: arraySchema(\n objectSchema(\n {\n key: opensteerReverseSortKeySchema,\n direction: opensteerReverseSortDirectionSchema,\n },\n {\n title: \"OpensteerReverseReportQuerySortTerm\",\n required: [\"key\"],\n },\n ),\n { minItems: 1 },\n ),\n },\n {\n title: \"OpensteerReverseReportQuerySort\",\n },\n ),\n limit: integerSchema({ minimum: 1 }),\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n resultIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQuerySnapshot\",\n required: [\"view\", \"sort\", \"limit\", \"totalCount\", \"resultIds\"],\n },\n ),\n experiments: arraySchema(opensteerReverseExperimentRecordSchema),\n replayRuns: arraySchema(opensteerReverseReplayRunRecordSchema),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n linkedNetworkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n linkedInteractionTraceIds: arraySchema(stringSchema({ minLength: 1 }), {\n uniqueItems: true,\n }),\n linkedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n linkedStateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n package: opensteerReversePackageRecordSchema,\n },\n {\n title: \"OpensteerReverseReportPayload\",\n required: [\n \"kind\",\n \"caseId\",\n \"objective\",\n \"observations\",\n \"observationClusters\",\n \"observedRecords\",\n \"guards\",\n \"stateDeltas\",\n \"summaryCounts\",\n \"candidateAdvisories\",\n \"experiments\",\n \"replayRuns\",\n \"linkedNetworkRecordIds\",\n \"linkedInteractionTraceIds\",\n \"linkedArtifactIds\",\n \"linkedStateSnapshotIds\",\n ],\n },\n);\n\nexport const opensteerReverseReportRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerReverseReportPayloadSchema,\n },\n {\n title: \"OpensteerReverseReportRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst opensteerReverseNetworkFilterSchema: JsonSchema = objectSchema(\n {\n url: stringSchema({ minLength: 1 }),\n hostname: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n includeBodies: { type: \"boolean\" },\n },\n {\n title: \"OpensteerReverseCaptureNetworkFilter\",\n },\n);\n\nconst opensteerReverseQueryFiltersSchema: JsonSchema = objectSchema(\n {\n recordId: stringSchema({ minLength: 1 }),\n clusterId: stringSchema({ minLength: 1 }),\n candidateId: stringSchema({ minLength: 1 }),\n host: stringSchema({ minLength: 1 }),\n path: stringSchema({ minLength: 1 }),\n method: stringSchema({ minLength: 1 }),\n status: stringSchema({ minLength: 1 }),\n resourceType: stringSchema({ minLength: 1 }),\n channel: opensteerReverseChannelKindSchema,\n boundary: opensteerReverseCandidateBoundarySchema,\n advisoryTag: opensteerReverseAdvisoryTagSchema,\n constraint: opensteerReverseConstraintKindSchema,\n bodyCodec: opensteerBodyCodecKindSchema,\n relationKind: opensteerObservationClusterRelationshipKindSchema,\n hasGuards: { type: \"boolean\" },\n hasResolvers: { type: \"boolean\" },\n artifactId: stringSchema({ minLength: 1 }),\n stateSnapshotId: stringSchema({ minLength: 1 }),\n traceId: stringSchema({ minLength: 1 }),\n evidenceRef: stringSchema({ minLength: 1 }),\n text: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseQueryFilters\",\n },\n);\n\nconst opensteerReverseQuerySortSchema: JsonSchema = objectSchema(\n {\n preset: opensteerReverseSortPresetSchema,\n keys: arraySchema(\n objectSchema(\n {\n key: opensteerReverseSortKeySchema,\n direction: opensteerReverseSortDirectionSchema,\n },\n {\n title: \"OpensteerReverseSortTerm\",\n required: [\"key\"],\n },\n ),\n { minItems: 1 },\n ),\n },\n {\n title: \"OpensteerReverseQuerySort\",\n },\n);\n\nconst opensteerReverseQuerySnapshotSchema: JsonSchema = objectSchema(\n {\n view: opensteerReverseQueryViewSchema,\n filters: opensteerReverseQueryFiltersSchema,\n sort: opensteerReverseQuerySortSchema,\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n resultIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQuerySnapshot\",\n required: [\"view\", \"sort\", \"limit\", \"totalCount\", \"resultIds\"],\n },\n);\n\nconst opensteerReverseQueryRecordItemSchema: JsonSchema = objectSchema(\n {\n record: opensteerReverseObservedRecordSchema,\n candidateIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQueryRecordItem\",\n required: [\"record\", \"candidateIds\"],\n },\n);\n\nconst opensteerReverseQueryClusterItemSchema: JsonSchema = objectSchema(\n {\n cluster: opensteerObservationClusterSchema,\n candidateIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReverseQueryClusterItem\",\n required: [\"cluster\", \"candidateIds\"],\n },\n);\n\nconst opensteerReverseQueryCandidateItemSchema: JsonSchema = objectSchema(\n {\n candidate: opensteerReverseCandidateRecordSchema,\n reasons: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerReverseQueryCandidateItem\",\n required: [\"candidate\", \"reasons\"],\n },\n);\n\nexport const opensteerReverseDiscoverInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n objective: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n pageRef: pageRefSchema,\n stateSource: opensteerStateSourceKindSchema,\n network: opensteerReverseNetworkFilterSchema,\n includeScripts: { type: \"boolean\" },\n includeStorage: { type: \"boolean\" },\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n interactionTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n targetHints: opensteerReverseTargetHintsSchema,\n captureWindowMs: integerSchema({ minimum: 0 }),\n manualCalibration: opensteerReverseManualCalibrationModeSchema,\n },\n {\n title: \"OpensteerReverseDiscoverInput\",\n },\n);\n\nexport const opensteerReverseDiscoverOutputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n reportId: stringSchema({ minLength: 1 }),\n summary: objectSchema(\n {\n observationIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n recordCount: integerSchema({ minimum: 0 }),\n clusterCount: integerSchema({ minimum: 0 }),\n candidateCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerReverseDiscoverSummary\",\n required: [\"observationIds\", \"recordCount\", \"clusterCount\", \"candidateCount\"],\n },\n ),\n index: objectSchema(\n {\n views: arraySchema(opensteerReverseQueryViewSchema, { uniqueItems: true }),\n sortableKeys: arraySchema(opensteerReverseSortKeySchema, { uniqueItems: true }),\n channels: arraySchema(opensteerReverseChannelKindSchema, { uniqueItems: true }),\n hosts: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n relationKinds: arraySchema(opensteerObservationClusterRelationshipKindSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerReverseDiscoverIndex\",\n required: [\"views\", \"sortableKeys\", \"channels\", \"hosts\", \"relationKinds\"],\n },\n ),\n },\n {\n title: \"OpensteerReverseDiscoverOutput\",\n required: [\"caseId\", \"reportId\", \"summary\", \"index\"],\n },\n);\n\nexport const opensteerReverseQueryInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n view: opensteerReverseQueryViewSchema,\n filters: opensteerReverseQueryFiltersSchema,\n sort: opensteerReverseQuerySortSchema,\n limit: integerSchema({ minimum: 1, maximum: 200 }),\n cursor: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseQueryInput\",\n required: [\"caseId\"],\n },\n);\n\nexport const opensteerReverseQueryOutputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n view: opensteerReverseQueryViewSchema,\n query: opensteerReverseQuerySnapshotSchema,\n totalCount: integerSchema({ minimum: 0 }),\n nextCursor: stringSchema({ minLength: 1 }),\n records: arraySchema(opensteerReverseQueryRecordItemSchema),\n clusters: arraySchema(opensteerReverseQueryClusterItemSchema),\n candidates: arraySchema(opensteerReverseQueryCandidateItemSchema),\n },\n {\n title: \"OpensteerReverseQueryOutput\",\n required: [\"caseId\", \"view\", \"query\", \"totalCount\"],\n },\n);\n\nexport const opensteerReversePackageCreateInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageCreateSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n templateId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageCreateInput\",\n required: [\"caseId\", \"source\"],\n },\n);\n\nexport const opensteerReversePackageCreateOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReversePackageCreateOutput\",\n required: [\"package\", \"report\"],\n },\n);\n\nexport const opensteerReversePackageRunInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerReversePackageRunInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackageRunOutputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n caseId: stringSchema({ minLength: 1 }),\n source: objectSchema(\n {\n kind: enumSchema([\"record\", \"candidate\"] as const),\n id: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageRunSource\",\n required: [\"kind\", \"id\"],\n },\n ),\n candidateId: stringSchema({ minLength: 1 }),\n templateId: stringSchema({ minLength: 1 }),\n success: { type: \"boolean\" },\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n channel: opensteerReverseChannelKindSchema,\n transport: transportKindSchema,\n stateSource: opensteerStateSourceKindSchema,\n recordId: stringSchema({ minLength: 1 }),\n status: integerSchema({ minimum: 0 }),\n validation: opensteerReverseReplayValidationSchema,\n executedStepIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n failedStepId: stringSchema({ minLength: 1 }),\n bindings: recordSchema({}, { title: \"OpensteerReversePackageRunBindings\" }),\n replayRunId: stringSchema({ minLength: 1 }),\n unresolvedRequirements: arraySchema(opensteerReverseRequirementSchema),\n suggestedEdits: arraySchema(opensteerReverseSuggestedEditSchema),\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageRunOutput\",\n required: [\n \"packageId\",\n \"source\",\n \"success\",\n \"kind\",\n \"readiness\",\n \"validation\",\n \"executedStepIds\",\n \"bindings\",\n \"unresolvedRequirements\",\n \"suggestedEdits\",\n ],\n },\n);\n\nexport const opensteerReverseExportInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReverseExportInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReverseExportOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n requestPlan: opensteerRequestPlanRecordSchema,\n },\n {\n title: \"OpensteerReverseExportOutput\",\n required: [\"package\"],\n },\n);\n\nexport const opensteerReverseReportInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n packageId: stringSchema({ minLength: 1 }),\n reportId: stringSchema({ minLength: 1 }),\n kind: opensteerReverseReportKindSchema,\n },\n {\n title: \"OpensteerReverseReportInput\",\n },\n);\n\nexport const opensteerReverseReportOutputSchema: JsonSchema = objectSchema(\n {\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReverseReportOutput\",\n required: [\"report\"],\n },\n);\n\nexport const opensteerReversePackageGetInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerReversePackageGetInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackageGetOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n },\n {\n title: \"OpensteerReversePackageGetOutput\",\n required: [\"package\"],\n },\n);\n\nexport const opensteerReversePackageListInputSchema: JsonSchema = objectSchema(\n {\n caseId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n kind: opensteerReversePackageKindSchema,\n readiness: opensteerReversePackageReadinessSchema,\n },\n {\n title: \"OpensteerReversePackageListInput\",\n },\n);\n\nexport const opensteerReversePackageListOutputSchema: JsonSchema = objectSchema(\n {\n packages: arraySchema(opensteerReversePackageRecordSchema),\n },\n {\n title: \"OpensteerReversePackageListOutput\",\n required: [\"packages\"],\n },\n);\n\nexport const opensteerReversePackagePatchInputSchema: JsonSchema = objectSchema(\n {\n packageId: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n workflow: arraySchema(opensteerReverseWorkflowStepSchema),\n resolvers: arraySchema(opensteerExecutableResolverSchema),\n validators: arraySchema(opensteerValidationRuleSchema),\n attachedTraceIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedArtifactIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n attachedRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n stateSnapshotIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerReversePackagePatchInput\",\n required: [\"packageId\"],\n },\n);\n\nexport const opensteerReversePackagePatchOutputSchema: JsonSchema = objectSchema(\n {\n package: opensteerReversePackageRecordSchema,\n report: opensteerReverseReportRecordSchema,\n },\n {\n title: \"OpensteerReversePackagePatchOutput\",\n required: [\"package\", \"report\"],\n },\n);\n","import type { JsonSchema } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n integerSchema,\n objectSchema,\n recordSchema,\n stringSchema,\n enumSchema,\n oneOfSchema,\n} from \"./json.js\";\nimport { pageRefSchema, type PageRef } from \"./identity.js\";\nimport { opensteerRegistryProvenanceSchema, type OpensteerRegistryProvenance } from \"./requests.js\";\nimport {\n opensteerStateDeltaSchema,\n opensteerStateSnapshotSchema,\n type OpensteerStateDelta,\n type OpensteerStateSnapshot,\n} from \"./reverse.js\";\nimport type { JsonValue } from \"./json.js\";\nimport type { OpensteerTargetInput } from \"./semantic.js\";\n\nexport type OpensteerInteractionCaptureStep =\n | {\n readonly kind: \"goto\";\n readonly url: string;\n }\n | {\n readonly kind: \"click\";\n readonly target: OpensteerTargetInput;\n }\n | {\n readonly kind: \"hover\";\n readonly target: OpensteerTargetInput;\n }\n | {\n readonly kind: \"input\";\n readonly target: OpensteerTargetInput;\n readonly text: string;\n readonly pressEnter?: boolean;\n }\n | {\n readonly kind: \"scroll\";\n readonly target: OpensteerTargetInput;\n readonly direction: \"up\" | \"down\" | \"left\" | \"right\";\n readonly amount: number;\n }\n | {\n readonly kind: \"wait\";\n readonly durationMs: number;\n };\n\nexport interface OpensteerInteractionEventRecord {\n readonly type: string;\n readonly timestamp: number;\n readonly targetPath?: string;\n readonly properties: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerInteractionTracePayload {\n readonly mode: \"manual\" | \"automated\";\n readonly pageRef?: PageRef;\n readonly url?: string;\n readonly startedAt: number;\n readonly completedAt: number;\n readonly beforeState?: OpensteerStateSnapshot;\n readonly afterState?: OpensteerStateSnapshot;\n readonly stateDelta?: OpensteerStateDelta;\n readonly events: readonly OpensteerInteractionEventRecord[];\n readonly networkRecordIds: readonly string[];\n readonly caseId?: string;\n readonly notes?: string;\n}\n\nexport interface OpensteerInteractionTraceRecord {\n readonly id: string;\n readonly key: string;\n readonly version: string;\n readonly createdAt: number;\n readonly updatedAt: number;\n readonly contentHash: string;\n readonly tags: readonly string[];\n readonly provenance?: OpensteerRegistryProvenance;\n readonly payload: OpensteerInteractionTracePayload;\n}\n\nexport interface OpensteerInteractionCaptureInput {\n readonly key?: string;\n readonly pageRef?: PageRef;\n readonly durationMs?: number;\n readonly script?: string;\n readonly args?: readonly JsonValue[];\n readonly steps?: readonly OpensteerInteractionCaptureStep[];\n readonly includeStorage?: boolean;\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n readonly globalNames?: readonly string[];\n readonly caseId?: string;\n readonly notes?: string;\n readonly tags?: readonly string[];\n}\n\nexport interface OpensteerInteractionCaptureOutput {\n readonly trace: OpensteerInteractionTraceRecord;\n}\n\nexport interface OpensteerInteractionGetInput {\n readonly traceId: string;\n}\n\nexport interface OpensteerInteractionGetOutput {\n readonly trace: OpensteerInteractionTraceRecord;\n}\n\nexport interface OpensteerInteractionDiffInput {\n readonly leftTraceId: string;\n readonly rightTraceId: string;\n}\n\nexport interface OpensteerInteractionDiffOutput {\n readonly summary: {\n readonly eventCountDelta: number;\n readonly propertyMismatchCount: number;\n readonly stateMismatchCount: number;\n readonly downstreamRequestMismatchCount: number;\n };\n readonly eventSequenceMismatches: readonly string[];\n readonly eventPropertyMismatches: readonly string[];\n readonly stateMismatches: readonly string[];\n readonly downstreamRequestMismatches: readonly string[];\n}\n\nexport interface OpensteerInteractionReplayInput {\n readonly traceId: string;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerInteractionReplayOutput {\n readonly traceId: string;\n readonly replayedEventCount: number;\n readonly success: boolean;\n readonly error?: string;\n}\n\nexport const opensteerInteractionEventRecordSchema: JsonSchema = objectSchema(\n {\n type: stringSchema({ minLength: 1 }),\n timestamp: integerSchema({ minimum: 0 }),\n targetPath: stringSchema({ minLength: 1 }),\n properties: objectSchema(\n {},\n {\n title: \"OpensteerInteractionEventProperties\",\n additionalProperties: true,\n },\n ),\n },\n {\n title: \"OpensteerInteractionEventRecord\",\n required: [\"type\", \"timestamp\", \"properties\"],\n },\n);\n\nexport const opensteerInteractionTracePayloadSchema: JsonSchema = objectSchema(\n {\n mode: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n url: stringSchema({ minLength: 1 }),\n startedAt: integerSchema({ minimum: 0 }),\n completedAt: integerSchema({ minimum: 0 }),\n beforeState: opensteerStateSnapshotSchema,\n afterState: opensteerStateSnapshotSchema,\n stateDelta: opensteerStateDeltaSchema,\n events: arraySchema(opensteerInteractionEventRecordSchema),\n networkRecordIds: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n caseId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionTracePayload\",\n required: [\"mode\", \"startedAt\", \"completedAt\", \"events\", \"networkRecordIds\"],\n },\n);\n\nexport const opensteerInteractionTraceRecordSchema: JsonSchema = objectSchema(\n {\n id: stringSchema({ minLength: 1 }),\n key: stringSchema({ minLength: 1 }),\n version: stringSchema({ minLength: 1 }),\n createdAt: integerSchema({ minimum: 0 }),\n updatedAt: integerSchema({ minimum: 0 }),\n contentHash: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n provenance: opensteerRegistryProvenanceSchema,\n payload: opensteerInteractionTracePayloadSchema,\n },\n {\n title: \"OpensteerInteractionTraceRecord\",\n required: [\"id\", \"key\", \"version\", \"createdAt\", \"updatedAt\", \"contentHash\", \"tags\", \"payload\"],\n },\n);\n\nconst targetByElementSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"element\"] as const),\n element: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionTargetByElement\",\n required: [\"kind\", \"element\"],\n },\n);\n\nconst targetByDescriptionSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"description\"] as const),\n description: stringSchema(),\n },\n {\n title: \"OpensteerInteractionTargetByDescription\",\n required: [\"kind\", \"description\"],\n },\n);\n\nconst targetBySelectorSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"selector\"] as const),\n selector: stringSchema(),\n },\n {\n title: \"OpensteerInteractionTargetBySelector\",\n required: [\"kind\", \"selector\"],\n },\n);\n\nconst opensteerInteractionTargetInputSchema: JsonSchema = oneOfSchema(\n [targetByElementSchema, targetByDescriptionSchema, targetBySelectorSchema],\n {\n title: \"OpensteerInteractionTargetInput\",\n },\n);\n\nconst opensteerInteractionCaptureStepSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n kind: enumSchema([\"goto\"] as const),\n url: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureGotoStep\",\n required: [\"kind\", \"url\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"click\"] as const),\n target: opensteerInteractionTargetInputSchema,\n },\n {\n title: \"OpensteerInteractionCaptureClickStep\",\n required: [\"kind\", \"target\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"hover\"] as const),\n target: opensteerInteractionTargetInputSchema,\n },\n {\n title: \"OpensteerInteractionCaptureHoverStep\",\n required: [\"kind\", \"target\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"input\"] as const),\n target: opensteerInteractionTargetInputSchema,\n text: stringSchema(),\n pressEnter: { type: \"boolean\" },\n },\n {\n title: \"OpensteerInteractionCaptureInputStep\",\n required: [\"kind\", \"target\", \"text\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"scroll\"] as const),\n target: opensteerInteractionTargetInputSchema,\n direction: enumSchema([\"up\", \"down\", \"left\", \"right\"] as const),\n amount: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureScrollStep\",\n required: [\"kind\", \"target\", \"direction\", \"amount\"],\n },\n ),\n objectSchema(\n {\n kind: enumSchema([\"wait\"] as const),\n durationMs: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerInteractionCaptureWaitStep\",\n required: [\"kind\", \"durationMs\"],\n },\n ),\n ],\n {\n title: \"OpensteerInteractionCaptureStep\",\n },\n);\n\nexport const opensteerInteractionCaptureInputSchema: JsonSchema = objectSchema(\n {\n key: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n durationMs: integerSchema({ minimum: 1 }),\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(defineSchema({ title: \"OpensteerInteractionCaptureArg\" })),\n steps: arraySchema(opensteerInteractionCaptureStepSchema, { minItems: 1 }),\n includeStorage: { type: \"boolean\" },\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n globalNames: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n caseId: stringSchema({ minLength: 1 }),\n notes: stringSchema({ minLength: 1 }),\n tags: arraySchema(stringSchema({ minLength: 1 }), { uniqueItems: true }),\n },\n {\n title: \"OpensteerInteractionCaptureInput\",\n },\n);\n\nexport const opensteerInteractionCaptureOutputSchema: JsonSchema = objectSchema(\n {\n trace: opensteerInteractionTraceRecordSchema,\n },\n {\n title: \"OpensteerInteractionCaptureOutput\",\n required: [\"trace\"],\n },\n);\n\nexport const opensteerInteractionGetInputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionGetInput\",\n required: [\"traceId\"],\n },\n);\n\nexport const opensteerInteractionGetOutputSchema: JsonSchema = objectSchema(\n {\n trace: opensteerInteractionTraceRecordSchema,\n },\n {\n title: \"OpensteerInteractionGetOutput\",\n required: [\"trace\"],\n },\n);\n\nexport const opensteerInteractionDiffInputSchema: JsonSchema = objectSchema(\n {\n leftTraceId: stringSchema({ minLength: 1 }),\n rightTraceId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionDiffInput\",\n required: [\"leftTraceId\", \"rightTraceId\"],\n },\n);\n\nexport const opensteerInteractionDiffOutputSchema: JsonSchema = objectSchema(\n {\n summary: objectSchema(\n {\n eventCountDelta: integerSchema({ minimum: 0 }),\n propertyMismatchCount: integerSchema({ minimum: 0 }),\n stateMismatchCount: integerSchema({ minimum: 0 }),\n downstreamRequestMismatchCount: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerInteractionDiffSummary\",\n required: [\n \"eventCountDelta\",\n \"propertyMismatchCount\",\n \"stateMismatchCount\",\n \"downstreamRequestMismatchCount\",\n ],\n },\n ),\n eventSequenceMismatches: arraySchema(stringSchema({ minLength: 1 })),\n eventPropertyMismatches: arraySchema(stringSchema({ minLength: 1 })),\n stateMismatches: arraySchema(stringSchema({ minLength: 1 })),\n downstreamRequestMismatches: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerInteractionDiffOutput\",\n required: [\n \"summary\",\n \"eventSequenceMismatches\",\n \"eventPropertyMismatches\",\n \"stateMismatches\",\n \"downstreamRequestMismatches\",\n ],\n },\n);\n\nexport const opensteerInteractionReplayInputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerInteractionReplayInput\",\n required: [\"traceId\"],\n },\n);\n\nexport const opensteerInteractionReplayOutputSchema: JsonSchema = objectSchema(\n {\n traceId: stringSchema({ minLength: 1 }),\n replayedEventCount: integerSchema({ minimum: 0 }),\n success: { type: \"boolean\" },\n error: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerInteractionReplayOutput\",\n required: [\"traceId\", \"replayedEventCount\", \"success\"],\n },\n);\n","import type { JsonSchema, JsonValue } from \"./json.js\";\nimport {\n arraySchema,\n defineSchema,\n enumSchema,\n integerSchema,\n literalSchema,\n objectSchema,\n oneOfSchema,\n recordSchema,\n stringSchema,\n numberSchema,\n} from \"./json.js\";\nimport { OpensteerProtocolError } from \"./errors.js\";\nimport type { OpensteerCapability } from \"./capabilities.js\";\nimport {\n documentEpochSchema,\n documentRefSchema,\n frameRefSchema,\n nodeRefSchema,\n pageRefSchema,\n sessionRefSchema,\n} from \"./identity.js\";\nimport type {\n DocumentEpoch,\n DocumentRef,\n FrameRef,\n NodeRef,\n PageRef,\n SessionRef,\n} from \"./identity.js\";\nimport { pointSchema, viewportMetricsSchema } from \"./geometry.js\";\nimport type { Point, ViewportMetrics } from \"./geometry.js\";\nimport { pageInfoSchema } from \"./metadata.js\";\nimport { opensteerEventSchema, type OpensteerEvent } from \"./events.js\";\nimport { requestEnvelopeSchema, responseEnvelopeSchema } from \"./envelopes.js\";\nimport {\n hitTestResultSchema,\n screenshotArtifactSchema,\n type HitTestResult,\n type ScreenshotArtifact,\n type ScreenshotFormat,\n} from \"./snapshots.js\";\nimport {\n cookieRecordSchema,\n storageSnapshotSchema,\n type CookieRecord,\n type StorageSnapshot,\n} from \"./storage.js\";\nimport type {\n OpensteerArtifactReadInput,\n OpensteerArtifactReadOutput,\n ScriptSourceArtifactData,\n} from \"./artifacts.js\";\nimport {\n opensteerArtifactReadInputSchema,\n opensteerArtifactReadOutputSchema,\n} from \"./artifacts.js\";\nimport {\n opensteerGetAuthRecipeInputSchema,\n opensteerListAuthRecipesInputSchema,\n opensteerListAuthRecipesOutputSchema,\n opensteerGetRequestPlanInputSchema,\n opensteerRunAuthRecipeInputSchema,\n opensteerRunAuthRecipeOutputSchema,\n opensteerListRequestPlansInputSchema,\n opensteerListRequestPlansOutputSchema,\n opensteerNetworkClearInputSchema,\n opensteerNetworkClearOutputSchema,\n opensteerNetworkQueryInputSchema,\n opensteerNetworkQueryOutputSchema,\n opensteerNetworkTagInputSchema,\n opensteerNetworkTagOutputSchema,\n opensteerInferRequestPlanInputSchema,\n opensteerRawRequestInputSchema,\n opensteerRawRequestOutputSchema,\n opensteerRequestExecuteInputSchema,\n opensteerRequestExecuteOutputSchema,\n opensteerAuthRecipeRecordSchema,\n opensteerRequestPlanRecordSchema,\n opensteerWriteAuthRecipeInputSchema,\n opensteerWriteRequestPlanInputSchema,\n type OpensteerGetAuthRecipeInput,\n type OpensteerGetRequestPlanInput,\n type OpensteerListAuthRecipesInput,\n type OpensteerListAuthRecipesOutput,\n type OpensteerListRequestPlansInput,\n type OpensteerListRequestPlansOutput,\n type OpensteerInferRequestPlanInput,\n type OpensteerNetworkClearInput,\n type OpensteerNetworkClearOutput,\n type OpensteerNetworkQueryInput,\n type OpensteerNetworkQueryOutput,\n type OpensteerNetworkTagInput,\n type OpensteerNetworkTagOutput,\n type OpensteerRawRequestInput,\n type OpensteerRawRequestOutput,\n type OpensteerRequestExecuteInput,\n type OpensteerRequestExecuteOutput,\n type OpensteerAuthRecipeRecord,\n type OpensteerRunAuthRecipeInput,\n type OpensteerRunAuthRecipeOutput,\n type OpensteerRequestPlanRecord,\n type TransportKind,\n type OpensteerWriteAuthRecipeInput,\n type OpensteerWriteRequestPlanInput,\n} from \"./requests.js\";\nimport {\n opensteerNetworkDiffInputSchema,\n opensteerNetworkDiffOutputSchema,\n type OpensteerNetworkDiffInput,\n type OpensteerNetworkDiffOutput,\n} from \"./diff.js\";\nimport {\n opensteerNetworkMinimizeInputSchema,\n opensteerNetworkMinimizeOutputSchema,\n type OpensteerNetworkMinimizeInput,\n type OpensteerNetworkMinimizeOutput,\n} from \"./minimize.js\";\nimport {\n opensteerTransportProbeInputSchema,\n opensteerTransportProbeOutputSchema,\n type OpensteerTransportProbeInput,\n type OpensteerTransportProbeOutput,\n} from \"./probe.js\";\nimport {\n opensteerScriptBeautifyInputSchema,\n opensteerScriptBeautifyOutputSchema,\n opensteerScriptDeobfuscateInputSchema,\n opensteerScriptDeobfuscateOutputSchema,\n opensteerScriptSandboxInputSchema,\n opensteerScriptSandboxOutputSchema,\n type OpensteerScriptBeautifyInput,\n type OpensteerScriptBeautifyOutput,\n type OpensteerScriptDeobfuscateInput,\n type OpensteerScriptDeobfuscateOutput,\n type OpensteerScriptSandboxInput,\n type OpensteerScriptSandboxOutput,\n} from \"./scripts.js\";\nimport {\n opensteerCaptchaSolveInputSchema,\n opensteerCaptchaSolveOutputSchema,\n type OpensteerCaptchaSolveInput,\n type OpensteerCaptchaSolveOutput,\n} from \"./captcha.js\";\nimport {\n opensteerReverseExportInputSchema,\n opensteerReverseExportOutputSchema,\n opensteerReverseDiscoverInputSchema,\n opensteerReverseDiscoverOutputSchema,\n opensteerReverseQueryInputSchema,\n opensteerReverseQueryOutputSchema,\n opensteerReversePackageCreateInputSchema,\n opensteerReversePackageCreateOutputSchema,\n opensteerReversePackageGetInputSchema,\n opensteerReversePackageGetOutputSchema,\n opensteerReversePackageListInputSchema,\n opensteerReversePackageListOutputSchema,\n opensteerReversePackagePatchInputSchema,\n opensteerReversePackagePatchOutputSchema,\n opensteerReversePackageRunInputSchema,\n opensteerReversePackageRunOutputSchema,\n opensteerReverseReportInputSchema,\n opensteerReverseReportOutputSchema,\n type OpensteerReverseDiscoverInput,\n type OpensteerReverseDiscoverOutput,\n type OpensteerReverseQueryInput,\n type OpensteerReverseQueryOutput,\n type OpensteerReversePackageCreateInput,\n type OpensteerReversePackageCreateOutput,\n type OpensteerReverseExportInput,\n type OpensteerReverseExportOutput,\n type OpensteerReversePackageGetInput,\n type OpensteerReversePackageGetOutput,\n type OpensteerReversePackageListInput,\n type OpensteerReversePackageListOutput,\n type OpensteerReversePackagePatchInput,\n type OpensteerReversePackagePatchOutput,\n type OpensteerReversePackageRunInput,\n type OpensteerReversePackageRunOutput,\n type OpensteerReverseReportInput,\n type OpensteerReverseReportOutput,\n} from \"./reverse.js\";\nimport {\n opensteerInteractionCaptureInputSchema,\n opensteerInteractionCaptureOutputSchema,\n opensteerInteractionDiffInputSchema,\n opensteerInteractionDiffOutputSchema,\n opensteerInteractionGetInputSchema,\n opensteerInteractionGetOutputSchema,\n opensteerInteractionReplayInputSchema,\n opensteerInteractionReplayOutputSchema,\n type OpensteerInteractionCaptureInput,\n type OpensteerInteractionCaptureOutput,\n type OpensteerInteractionDiffInput,\n type OpensteerInteractionDiffOutput,\n type OpensteerInteractionGetInput,\n type OpensteerInteractionGetOutput,\n type OpensteerInteractionReplayInput,\n type OpensteerInteractionReplayOutput,\n} from \"./interaction.js\";\nimport { validateJsonSchema } from \"./validation.js\";\nimport { OPENSTEER_PROTOCOL_REST_BASE_PATH } from \"./version.js\";\n\nexport type OpensteerSnapshotMode = \"action\" | \"extraction\";\n\nexport interface OpensteerBrowserLaunchOptions {\n readonly headless?: boolean;\n readonly executablePath?: string;\n readonly args?: readonly string[];\n readonly timeoutMs?: number;\n}\n\nexport interface OpensteerAttachBrowserOptions {\n readonly mode: \"attach\";\n readonly endpoint?: string;\n readonly headers?: Readonly<Record<string, string>>;\n readonly freshTab?: boolean;\n}\n\nexport type OpensteerBrowserMode = \"temporary\" | \"persistent\";\n\nexport type OpensteerBrowserOptions = OpensteerBrowserMode | OpensteerAttachBrowserOptions;\n\nexport interface OpensteerBrowserContextOptions {\n readonly ignoreHTTPSErrors?: boolean;\n readonly locale?: string;\n readonly timezoneId?: string;\n readonly userAgent?: string;\n readonly viewport?: {\n readonly width: number;\n readonly height: number;\n } | null;\n readonly javaScriptEnabled?: boolean;\n readonly bypassCSP?: boolean;\n readonly reducedMotion?: \"reduce\" | \"no-preference\";\n readonly colorScheme?: \"light\" | \"dark\" | \"no-preference\";\n readonly stealthProfile?: OpensteerStealthProfileInput;\n}\n\nexport interface OpensteerStealthProfileInput {\n readonly id?: string;\n readonly platform?: \"macos\" | \"windows\" | \"linux\";\n readonly browserBrand?: \"chrome\" | \"edge\";\n readonly browserVersion?: string;\n readonly userAgent?: string;\n readonly viewport?: {\n readonly width: number;\n readonly height: number;\n };\n readonly screenResolution?: {\n readonly width: number;\n readonly height: number;\n };\n readonly devicePixelRatio?: number;\n readonly maxTouchPoints?: number;\n readonly webglVendor?: string;\n readonly webglRenderer?: string;\n readonly fonts?: readonly string[];\n readonly canvasNoiseSeed?: number;\n readonly audioNoiseSeed?: number;\n readonly locale?: string;\n readonly timezoneId?: string;\n}\n\nexport interface OpensteerTargetByElement {\n readonly kind: \"element\";\n readonly element: number;\n}\n\nexport interface OpensteerTargetByDescription {\n readonly kind: \"description\";\n readonly description: string;\n}\n\nexport interface OpensteerTargetBySelector {\n readonly kind: \"selector\";\n readonly selector: string;\n}\n\nexport type OpensteerTargetInput =\n | OpensteerTargetByElement\n | OpensteerTargetByDescription\n | OpensteerTargetBySelector;\n\nexport interface OpensteerResolvedTarget {\n readonly pageRef: PageRef;\n readonly frameRef: FrameRef;\n readonly documentRef: DocumentRef;\n readonly documentEpoch: DocumentEpoch;\n readonly nodeRef: NodeRef;\n readonly tagName: string;\n readonly pathHint: string;\n readonly description?: string;\n readonly selectorUsed?: string;\n}\n\nexport interface OpensteerActionResult {\n readonly target: OpensteerResolvedTarget;\n readonly point?: {\n readonly x: number;\n readonly y: number;\n };\n readonly persistedDescription?: string;\n}\n\nexport interface OpensteerSnapshotCounter {\n readonly element: number;\n readonly pageRef: PageRef;\n readonly frameRef: FrameRef;\n readonly documentRef: DocumentRef;\n readonly documentEpoch: DocumentEpoch;\n readonly nodeRef?: NodeRef;\n readonly tagName: string;\n readonly pathHint: string;\n readonly text?: string;\n readonly attributes?: readonly {\n readonly name: string;\n readonly value: string;\n }[];\n readonly iframeDepth: number;\n readonly shadowDepth: number;\n readonly interactive: boolean;\n}\n\nexport interface OpensteerSessionState {\n readonly sessionRef: SessionRef;\n readonly pageRef: PageRef;\n readonly url: string;\n readonly title: string;\n}\n\nexport interface OpensteerOpenInput {\n readonly url?: string;\n readonly workspace?: string;\n readonly browser?: OpensteerBrowserOptions;\n readonly launch?: OpensteerBrowserLaunchOptions;\n readonly context?: OpensteerBrowserContextOptions;\n}\n\nexport interface OpensteerOpenOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageListInput {}\n\nexport interface OpensteerPageListOutput {\n readonly activePageRef?: PageRef;\n readonly pages: readonly import(\"./metadata.js\").PageInfo[];\n}\n\nexport interface OpensteerPageNewInput {\n readonly url?: string;\n readonly openerPageRef?: PageRef;\n}\n\nexport interface OpensteerPageNewOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageActivateInput {\n readonly pageRef: PageRef;\n}\n\nexport interface OpensteerPageActivateOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageCloseInput {\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerPageCloseOutput {\n readonly closedPageRef: PageRef;\n readonly activePageRef?: PageRef;\n readonly pages: readonly import(\"./metadata.js\").PageInfo[];\n}\n\nexport interface OpensteerPageGotoInput {\n readonly url: string;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerPageGotoOutput extends OpensteerSessionState {}\n\nexport interface OpensteerPageEvaluateInput {\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerPageEvaluateOutput {\n readonly pageRef: PageRef;\n readonly value: JsonValue;\n}\n\nexport interface OpensteerAddInitScriptInput {\n readonly script: string;\n readonly args?: readonly JsonValue[];\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerAddInitScriptOutput {\n readonly registrationId: string;\n readonly sessionRef: SessionRef;\n readonly pageRef?: PageRef;\n}\n\nexport interface OpensteerCaptureScriptsInput {\n readonly pageRef?: PageRef;\n readonly includeInline?: boolean;\n readonly includeExternal?: boolean;\n readonly includeDynamic?: boolean;\n readonly includeWorkers?: boolean;\n readonly urlFilter?: string;\n readonly persist?: boolean;\n}\n\nexport interface OpensteerCapturedScript extends ScriptSourceArtifactData {\n readonly artifactId?: string;\n}\n\nexport interface OpensteerCaptureScriptsOutput {\n readonly pageRef: PageRef;\n readonly scripts: readonly OpensteerCapturedScript[];\n}\n\nexport interface OpensteerPageSnapshotInput {\n readonly mode?: OpensteerSnapshotMode;\n}\n\nexport interface OpensteerPageSnapshotOutput {\n readonly url: string;\n readonly title: string;\n readonly mode: OpensteerSnapshotMode;\n readonly html: string;\n readonly counters: readonly OpensteerSnapshotCounter[];\n}\n\nexport interface OpensteerInspectCookiesInput {\n readonly urls?: readonly string[];\n}\n\nexport interface OpensteerInspectStorageInput {\n readonly includeSessionStorage?: boolean;\n readonly includeIndexedDb?: boolean;\n}\n\nexport interface OpensteerDomClickInput {\n readonly target: OpensteerTargetInput;\n readonly persistAsDescription?: string;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerDomHoverInput {\n readonly target: OpensteerTargetInput;\n readonly persistAsDescription?: string;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerDomInputInput {\n readonly target: OpensteerTargetInput;\n readonly text: string;\n readonly pressEnter?: boolean;\n readonly persistAsDescription?: string;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerDomScrollInput {\n readonly target: OpensteerTargetInput;\n readonly direction: \"up\" | \"down\" | \"left\" | \"right\";\n readonly amount: number;\n readonly persistAsDescription?: string;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerDomExtractInput {\n readonly description: string;\n readonly schema?: Readonly<Record<string, unknown>>;\n}\n\nexport interface OpensteerDomExtractOutput {\n readonly data: JsonValue;\n}\n\nexport interface OpensteerSessionCloseInput {}\n\nexport interface OpensteerSessionCloseOutput {\n readonly closed: true;\n}\n\nexport const opensteerComputerAnnotationNames = [\n \"clickable\",\n \"typeable\",\n \"scrollable\",\n \"grid\",\n \"selected\",\n] as const;\n\nexport type OpensteerComputerAnnotation = (typeof opensteerComputerAnnotationNames)[number];\n\nexport type OpensteerComputerMouseButton = \"left\" | \"middle\" | \"right\";\nexport type OpensteerComputerKeyModifier = \"Shift\" | \"Control\" | \"Alt\" | \"Meta\";\n\nexport interface OpensteerComputerClickAction {\n readonly type: \"click\";\n readonly x: number;\n readonly y: number;\n readonly button?: OpensteerComputerMouseButton;\n readonly clickCount?: number;\n readonly modifiers?: readonly OpensteerComputerKeyModifier[];\n}\n\nexport interface OpensteerComputerMoveAction {\n readonly type: \"move\";\n readonly x: number;\n readonly y: number;\n}\n\nexport interface OpensteerComputerScrollAction {\n readonly type: \"scroll\";\n readonly x: number;\n readonly y: number;\n readonly deltaX: number;\n readonly deltaY: number;\n}\n\nexport interface OpensteerComputerTypeAction {\n readonly type: \"type\";\n readonly text: string;\n}\n\nexport interface OpensteerComputerKeyAction {\n readonly type: \"key\";\n readonly key: string;\n readonly modifiers?: readonly OpensteerComputerKeyModifier[];\n}\n\nexport interface OpensteerComputerDragAction {\n readonly type: \"drag\";\n readonly start: Point;\n readonly end: Point;\n readonly steps?: number;\n}\n\nexport interface OpensteerComputerScreenshotAction {\n readonly type: \"screenshot\";\n}\n\nexport interface OpensteerComputerWaitAction {\n readonly type: \"wait\";\n readonly durationMs: number;\n}\n\nexport type OpensteerComputerAction =\n | OpensteerComputerClickAction\n | OpensteerComputerMoveAction\n | OpensteerComputerScrollAction\n | OpensteerComputerTypeAction\n | OpensteerComputerKeyAction\n | OpensteerComputerDragAction\n | OpensteerComputerScreenshotAction\n | OpensteerComputerWaitAction;\n\nexport interface OpensteerComputerScreenshotOptions {\n readonly format?: ScreenshotFormat;\n readonly includeCursor?: boolean;\n readonly disableAnnotations?: readonly OpensteerComputerAnnotation[];\n}\n\nexport interface OpensteerComputerExecuteInput {\n readonly action: OpensteerComputerAction;\n readonly screenshot?: OpensteerComputerScreenshotOptions;\n readonly captureNetwork?: string;\n}\n\nexport interface OpensteerComputerDisplayScale {\n readonly x: number;\n readonly y: number;\n}\n\nexport interface OpensteerComputerTracePoint {\n readonly role: \"point\" | \"start\" | \"end\";\n readonly point: Point;\n readonly hitTest?: HitTestResult;\n readonly target?: OpensteerResolvedTarget;\n}\n\nexport interface OpensteerComputerTraceEnrichment {\n readonly points: readonly OpensteerComputerTracePoint[];\n}\n\nexport interface OpensteerComputerExecuteTiming {\n readonly actionMs: number;\n readonly waitMs: number;\n readonly totalMs: number;\n}\n\nexport interface OpensteerComputerExecuteOutput {\n readonly action: OpensteerComputerAction;\n readonly pageRef: PageRef;\n readonly screenshot: ScreenshotArtifact;\n readonly displayViewport: ViewportMetrics;\n readonly nativeViewport: ViewportMetrics;\n readonly displayScale: OpensteerComputerDisplayScale;\n readonly events: readonly OpensteerEvent[];\n readonly timing: OpensteerComputerExecuteTiming;\n readonly trace?: OpensteerComputerTraceEnrichment;\n}\n\nexport const opensteerSemanticOperationNames = [\n \"session.open\",\n \"page.list\",\n \"page.new\",\n \"page.activate\",\n \"page.close\",\n \"page.goto\",\n \"page.evaluate\",\n \"page.add-init-script\",\n \"page.snapshot\",\n \"dom.click\",\n \"dom.hover\",\n \"dom.input\",\n \"dom.scroll\",\n \"dom.extract\",\n \"network.query\",\n \"network.tag\",\n \"network.clear\",\n \"network.minimize\",\n \"network.diff\",\n \"network.probe\",\n \"reverse.discover\",\n \"reverse.query\",\n \"reverse.package.create\",\n \"reverse.package.run\",\n \"reverse.export\",\n \"reverse.report\",\n \"reverse.package.get\",\n \"reverse.package.list\",\n \"reverse.package.patch\",\n \"interaction.capture\",\n \"interaction.get\",\n \"interaction.diff\",\n \"interaction.replay\",\n \"artifact.read\",\n \"inspect.cookies\",\n \"inspect.storage\",\n \"scripts.capture\",\n \"scripts.beautify\",\n \"scripts.deobfuscate\",\n \"scripts.sandbox\",\n \"captcha.solve\",\n \"request.raw\",\n \"request-plan.infer\",\n \"request-plan.write\",\n \"request-plan.get\",\n \"request-plan.list\",\n \"recipe.write\",\n \"recipe.get\",\n \"recipe.list\",\n \"recipe.run\",\n \"auth-recipe.write\",\n \"auth-recipe.get\",\n \"auth-recipe.list\",\n \"auth-recipe.run\",\n \"request.execute\",\n \"computer.execute\",\n \"session.close\",\n] as const;\n\nexport type OpensteerSemanticOperationName = (typeof opensteerSemanticOperationNames)[number];\n\nexport interface OpensteerSemanticOperationSpec<TInput = unknown, TOutput = unknown> {\n readonly name: OpensteerSemanticOperationName;\n readonly description: string;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly requiredCapabilities: readonly OpensteerCapability[];\n readonly packageRunnable?: boolean;\n resolveRequiredCapabilities?(input: TInput): readonly OpensteerCapability[];\n}\n\nexport interface OpensteerSemanticRestEndpointDescriptor {\n readonly name: OpensteerSemanticOperationName;\n readonly method: \"POST\";\n readonly path: string;\n readonly description: string;\n readonly requestSchema: JsonSchema;\n readonly responseSchema: JsonSchema;\n}\n\nfunction defineSemanticOperationSpec<TInput, TOutput>(\n spec: OpensteerSemanticOperationSpec<TInput, TOutput>,\n): OpensteerSemanticOperationSpec<TInput, TOutput> {\n return spec;\n}\n\nconst opensteerPackageRunnableSemanticOperationNames = new Set<OpensteerSemanticOperationName>([\n \"page.list\",\n \"page.new\",\n \"page.activate\",\n \"page.close\",\n \"page.goto\",\n \"page.evaluate\",\n \"page.add-init-script\",\n \"page.snapshot\",\n \"dom.click\",\n \"dom.hover\",\n \"dom.input\",\n \"dom.scroll\",\n \"dom.extract\",\n \"network.query\",\n \"network.tag\",\n \"network.clear\",\n \"network.minimize\",\n \"network.diff\",\n \"network.probe\",\n \"interaction.capture\",\n \"interaction.get\",\n \"interaction.diff\",\n \"interaction.replay\",\n \"artifact.read\",\n \"inspect.cookies\",\n \"inspect.storage\",\n \"scripts.capture\",\n \"scripts.beautify\",\n \"scripts.deobfuscate\",\n \"scripts.sandbox\",\n \"captcha.solve\",\n \"request.raw\",\n \"request.execute\",\n \"computer.execute\",\n]);\n\nfunction resolveTransportRequiredCapabilities(\n transport: TransportKind | undefined,\n fallback: TransportKind,\n): readonly OpensteerCapability[] {\n switch (transport ?? fallback) {\n case \"direct-http\":\n return [];\n case \"matched-tls\":\n case \"context-http\":\n return [\"inspect.cookies\"];\n case \"page-http\":\n return [\"pages.manage\"];\n case \"session-http\":\n return [\"transport.sessionHttp\"];\n }\n}\n\nconst snapshotModeSchema: JsonSchema = enumSchema([\"action\", \"extraction\"] as const, {\n title: \"OpensteerSnapshotMode\",\n});\n\nconst viewportSchema: JsonSchema = oneOfSchema(\n [\n objectSchema(\n {\n width: integerSchema({ minimum: 1 }),\n height: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerViewport\",\n required: [\"width\", \"height\"],\n },\n ),\n literalSchema(null),\n ],\n {\n title: \"OpensteerViewportOrNull\",\n },\n);\n\nconst opensteerBrowserLaunchOptionsSchema: JsonSchema = objectSchema(\n {\n headless: { type: \"boolean\" },\n executablePath: stringSchema(),\n args: arraySchema(stringSchema()),\n timeoutMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerBrowserLaunchOptions\",\n },\n);\n\nconst attachBrowserOptionsSchema: JsonSchema = objectSchema(\n {\n mode: enumSchema([\"attach\"] as const),\n endpoint: stringSchema(),\n headers: recordSchema(stringSchema(), {\n title: \"OpensteerAttachBrowserHeaders\",\n }),\n freshTab: { type: \"boolean\" },\n },\n {\n title: \"OpensteerAttachBrowserOptions\",\n required: [\"mode\"],\n },\n);\n\nconst opensteerBrowserOptionsSchema: JsonSchema = oneOfSchema(\n [enumSchema([\"temporary\", \"persistent\"] as const), attachBrowserOptionsSchema],\n {\n title: \"OpensteerBrowserOptions\",\n },\n);\n\nconst opensteerBrowserContextOptionsSchema: JsonSchema = objectSchema(\n {\n ignoreHTTPSErrors: { type: \"boolean\" },\n locale: stringSchema(),\n timezoneId: stringSchema(),\n userAgent: stringSchema(),\n viewport: viewportSchema,\n javaScriptEnabled: { type: \"boolean\" },\n bypassCSP: { type: \"boolean\" },\n reducedMotion: enumSchema([\"reduce\", \"no-preference\"] as const),\n colorScheme: enumSchema([\"light\", \"dark\", \"no-preference\"] as const),\n stealthProfile: objectSchema(\n {\n id: stringSchema(),\n platform: enumSchema([\"macos\", \"windows\", \"linux\"] as const),\n browserBrand: enumSchema([\"chrome\", \"edge\"] as const),\n browserVersion: stringSchema(),\n userAgent: stringSchema(),\n viewport: viewportSchema,\n screenResolution: viewportSchema,\n devicePixelRatio: { type: \"number\", minimum: 0.5 },\n maxTouchPoints: integerSchema({ minimum: 0 }),\n webglVendor: stringSchema(),\n webglRenderer: stringSchema(),\n fonts: arraySchema(stringSchema()),\n canvasNoiseSeed: integerSchema({ minimum: 0 }),\n audioNoiseSeed: integerSchema({ minimum: 0 }),\n locale: stringSchema(),\n timezoneId: stringSchema(),\n },\n {\n title: \"OpensteerStealthProfileInput\",\n },\n ),\n },\n {\n title: \"OpensteerBrowserContextOptions\",\n },\n);\n\nconst targetByElementSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"element\"] as const),\n element: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerTargetByElement\",\n required: [\"kind\", \"element\"],\n },\n);\n\nconst targetByDescriptionSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"description\"] as const),\n description: stringSchema(),\n },\n {\n title: \"OpensteerTargetByDescription\",\n required: [\"kind\", \"description\"],\n },\n);\n\nconst targetBySelectorSchema: JsonSchema = objectSchema(\n {\n kind: enumSchema([\"selector\"] as const),\n selector: stringSchema(),\n },\n {\n title: \"OpensteerTargetBySelector\",\n required: [\"kind\", \"selector\"],\n },\n);\n\nconst opensteerTargetInputSchema: JsonSchema = oneOfSchema(\n [targetByElementSchema, targetByDescriptionSchema, targetBySelectorSchema],\n {\n title: \"OpensteerTargetInput\",\n },\n);\n\nconst opensteerResolvedTargetSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n tagName: stringSchema(),\n pathHint: stringSchema(),\n description: stringSchema(),\n selectorUsed: stringSchema(),\n },\n {\n title: \"OpensteerResolvedTarget\",\n required: [\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"nodeRef\",\n \"tagName\",\n \"pathHint\",\n ],\n },\n);\n\nconst opensteerActionResultSchema: JsonSchema = objectSchema(\n {\n target: opensteerResolvedTargetSchema,\n point: pointSchema,\n persistedDescription: stringSchema(),\n },\n {\n title: \"OpensteerActionResult\",\n required: [\"target\"],\n },\n);\n\nconst opensteerSnapshotCounterSchema: JsonSchema = objectSchema(\n {\n element: integerSchema({ minimum: 1 }),\n pageRef: pageRefSchema,\n frameRef: frameRefSchema,\n documentRef: documentRefSchema,\n documentEpoch: documentEpochSchema,\n nodeRef: nodeRefSchema,\n tagName: stringSchema(),\n pathHint: stringSchema(),\n text: stringSchema(),\n attributes: arraySchema(\n objectSchema(\n {\n name: stringSchema(),\n value: stringSchema(),\n },\n {\n title: \"OpensteerSnapshotCounterAttribute\",\n required: [\"name\", \"value\"],\n },\n ),\n ),\n iframeDepth: integerSchema({ minimum: 0 }),\n shadowDepth: integerSchema({ minimum: 0 }),\n interactive: { type: \"boolean\" },\n },\n {\n title: \"OpensteerSnapshotCounter\",\n required: [\n \"element\",\n \"pageRef\",\n \"frameRef\",\n \"documentRef\",\n \"documentEpoch\",\n \"tagName\",\n \"pathHint\",\n \"iframeDepth\",\n \"shadowDepth\",\n \"interactive\",\n ],\n },\n);\n\nconst opensteerSessionStateSchema: JsonSchema = objectSchema(\n {\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n url: stringSchema(),\n title: stringSchema(),\n },\n {\n title: \"OpensteerSessionState\",\n required: [\"sessionRef\", \"pageRef\", \"url\", \"title\"],\n },\n);\n\nconst opensteerOpenInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n workspace: stringSchema(),\n browser: opensteerBrowserOptionsSchema,\n launch: opensteerBrowserLaunchOptionsSchema,\n context: opensteerBrowserContextOptionsSchema,\n },\n {\n title: \"OpensteerOpenInput\",\n },\n);\n\nconst opensteerPageListInputSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerPageListInput\",\n },\n);\n\nconst opensteerPageListOutputSchema: JsonSchema = objectSchema(\n {\n activePageRef: pageRefSchema,\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"OpensteerPageListOutput\",\n required: [\"pages\"],\n },\n);\n\nconst opensteerPageNewInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n openerPageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageNewInput\",\n },\n);\n\nconst opensteerPageActivateInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageActivateInput\",\n required: [\"pageRef\"],\n },\n);\n\nconst opensteerPageCloseInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageCloseInput\",\n },\n);\n\nconst opensteerPageCloseOutputSchema: JsonSchema = objectSchema(\n {\n closedPageRef: pageRefSchema,\n activePageRef: pageRefSchema,\n pages: arraySchema(pageInfoSchema),\n },\n {\n title: \"OpensteerPageCloseOutput\",\n required: [\"closedPageRef\", \"pages\"],\n },\n);\n\nconst opensteerPageGotoInputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerPageGotoInput\",\n required: [\"url\"],\n },\n);\n\nconst opensteerPageEvaluateInputSchema: JsonSchema = objectSchema(\n {\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(\n defineSchema({\n title: \"JsonValue\",\n }),\n ),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerPageEvaluateInput\",\n required: [\"script\"],\n },\n);\n\nconst opensteerPageEvaluateOutputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n value: oneOfSchema(\n [\n defineSchema({\n title: \"JsonValue\",\n }),\n arraySchema({}),\n stringSchema(),\n numberSchema(),\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"OpensteerPageEvaluateValue\",\n },\n ),\n },\n {\n title: \"OpensteerPageEvaluateOutput\",\n required: [\"pageRef\", \"value\"],\n },\n);\n\nconst opensteerAddInitScriptInputSchema: JsonSchema = objectSchema(\n {\n script: stringSchema({ minLength: 1 }),\n args: arraySchema(defineSchema({ title: \"OpensteerInitScriptArg\" })),\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerAddInitScriptInput\",\n required: [\"script\"],\n },\n);\n\nconst opensteerAddInitScriptOutputSchema: JsonSchema = objectSchema(\n {\n registrationId: stringSchema({ minLength: 1 }),\n sessionRef: sessionRefSchema,\n pageRef: pageRefSchema,\n },\n {\n title: \"OpensteerAddInitScriptOutput\",\n required: [\"registrationId\", \"sessionRef\"],\n },\n);\n\nconst opensteerCapturedScriptSchema: JsonSchema = objectSchema(\n {\n source: enumSchema([\"inline\", \"external\", \"dynamic\", \"worker\"] as const),\n url: stringSchema({ minLength: 1 }),\n type: stringSchema({ minLength: 1 }),\n hash: stringSchema({ minLength: 1 }),\n loadOrder: integerSchema({ minimum: 0 }),\n content: stringSchema(),\n artifactId: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerCapturedScript\",\n required: [\"source\", \"hash\", \"loadOrder\", \"content\"],\n },\n);\n\nconst opensteerCaptureScriptsInputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n includeInline: { type: \"boolean\" },\n includeExternal: { type: \"boolean\" },\n includeDynamic: { type: \"boolean\" },\n includeWorkers: { type: \"boolean\" },\n urlFilter: stringSchema({ minLength: 1 }),\n persist: { type: \"boolean\" },\n },\n {\n title: \"OpensteerCaptureScriptsInput\",\n },\n);\n\nconst opensteerCaptureScriptsOutputSchema: JsonSchema = objectSchema(\n {\n pageRef: pageRefSchema,\n scripts: arraySchema(opensteerCapturedScriptSchema),\n },\n {\n title: \"OpensteerCaptureScriptsOutput\",\n required: [\"pageRef\", \"scripts\"],\n },\n);\n\nconst opensteerPageSnapshotInputSchema: JsonSchema = objectSchema(\n {\n mode: snapshotModeSchema,\n },\n {\n title: \"OpensteerPageSnapshotInput\",\n },\n);\n\nconst opensteerPageSnapshotOutputSchema: JsonSchema = objectSchema(\n {\n url: stringSchema(),\n title: stringSchema(),\n mode: snapshotModeSchema,\n html: stringSchema(),\n counters: arraySchema(opensteerSnapshotCounterSchema),\n },\n {\n title: \"OpensteerPageSnapshotOutput\",\n required: [\"url\", \"title\", \"mode\", \"html\", \"counters\"],\n },\n);\n\nconst opensteerInspectCookiesInputSchema: JsonSchema = objectSchema(\n {\n urls: arraySchema(stringSchema({ minLength: 1 })),\n },\n {\n title: \"OpensteerInspectCookiesInput\",\n },\n);\n\nconst opensteerInspectCookiesOutputSchema: JsonSchema = arraySchema(cookieRecordSchema, {\n title: \"OpensteerInspectCookiesOutput\",\n});\n\nconst opensteerInspectStorageInputSchema: JsonSchema = objectSchema(\n {\n includeSessionStorage: { type: \"boolean\" },\n includeIndexedDb: { type: \"boolean\" },\n },\n {\n title: \"OpensteerInspectStorageInput\",\n },\n);\n\nconst opensteerDomClickInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n persistAsDescription: stringSchema(),\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomClickInput\",\n required: [\"target\"],\n },\n);\n\nconst opensteerDomHoverInputSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n persistAsDescription: stringSchema(),\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomHoverInput\",\n required: [\"target\"],\n },\n);\n\nconst opensteerDomInputInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n text: stringSchema(),\n pressEnter: { type: \"boolean\" },\n persistAsDescription: stringSchema(),\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomInputInput\",\n required: [\"target\", \"text\"],\n },\n);\n\nconst opensteerDomScrollInputSchema: JsonSchema = objectSchema(\n {\n target: opensteerTargetInputSchema,\n direction: enumSchema([\"up\", \"down\", \"left\", \"right\"] as const),\n amount: integerSchema({ minimum: 1 }),\n persistAsDescription: stringSchema(),\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerDomScrollInput\",\n required: [\"target\", \"direction\", \"amount\"],\n },\n);\n\nconst opensteerExtractSchemaSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerExtractSchema\",\n additionalProperties: true,\n },\n);\n\nconst opensteerDomExtractInputSchema: JsonSchema = objectSchema(\n {\n description: stringSchema(),\n schema: opensteerExtractSchemaSchema,\n },\n {\n title: \"OpensteerDomExtractInput\",\n required: [\"description\"],\n },\n);\n\nconst jsonValueSchema: JsonSchema = recordSchema({}, { title: \"JsonValueRecord\" });\n\nconst opensteerDomExtractOutputSchema: JsonSchema = objectSchema(\n {\n data: oneOfSchema(\n [\n jsonValueSchema,\n arraySchema({}),\n stringSchema(),\n numberSchema(),\n enumSchema([true, false, null] as const),\n ],\n {\n title: \"OpensteerExtractedJsonValue\",\n },\n ),\n },\n {\n title: \"OpensteerDomExtractOutput\",\n required: [\"data\"],\n },\n);\n\nconst opensteerSessionCloseInputSchema: JsonSchema = objectSchema(\n {},\n {\n title: \"OpensteerSessionCloseInput\",\n required: [],\n },\n);\n\nconst opensteerSessionCloseOutputSchema: JsonSchema = objectSchema(\n {\n closed: literalSchema(true),\n },\n {\n title: \"OpensteerSessionCloseOutput\",\n required: [\"closed\"],\n },\n);\n\nconst opensteerComputerMouseButtonSchema: JsonSchema = enumSchema(\n [\"left\", \"middle\", \"right\"] as const,\n {\n title: \"OpensteerComputerMouseButton\",\n },\n);\n\nconst opensteerComputerKeyModifierSchema: JsonSchema = enumSchema(\n [\"Shift\", \"Control\", \"Alt\", \"Meta\"] as const,\n {\n title: \"OpensteerComputerKeyModifier\",\n },\n);\n\nconst opensteerComputerAnnotationSchema: JsonSchema = enumSchema(opensteerComputerAnnotationNames, {\n title: \"OpensteerComputerAnnotation\",\n});\n\nconst opensteerComputerClickActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"click\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n button: opensteerComputerMouseButtonSchema,\n clickCount: integerSchema({ minimum: 1 }),\n modifiers: arraySchema(opensteerComputerKeyModifierSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerClickAction\",\n required: [\"type\", \"x\", \"y\"],\n },\n);\n\nconst opensteerComputerMoveActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"move\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n },\n {\n title: \"OpensteerComputerMoveAction\",\n required: [\"type\", \"x\", \"y\"],\n },\n);\n\nconst opensteerComputerScrollActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"scroll\"] as const),\n x: numberSchema(),\n y: numberSchema(),\n deltaX: numberSchema(),\n deltaY: numberSchema(),\n },\n {\n title: \"OpensteerComputerScrollAction\",\n required: [\"type\", \"x\", \"y\", \"deltaX\", \"deltaY\"],\n },\n);\n\nconst opensteerComputerTypeActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"type\"] as const),\n text: stringSchema(),\n },\n {\n title: \"OpensteerComputerTypeAction\",\n required: [\"type\", \"text\"],\n },\n);\n\nconst opensteerComputerKeyActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"key\"] as const),\n key: stringSchema(),\n modifiers: arraySchema(opensteerComputerKeyModifierSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerKeyAction\",\n required: [\"type\", \"key\"],\n },\n);\n\nconst opensteerComputerDragActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"drag\"] as const),\n start: pointSchema,\n end: pointSchema,\n steps: integerSchema({ minimum: 1 }),\n },\n {\n title: \"OpensteerComputerDragAction\",\n required: [\"type\", \"start\", \"end\"],\n },\n);\n\nconst opensteerComputerScreenshotActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"screenshot\"] as const),\n },\n {\n title: \"OpensteerComputerScreenshotAction\",\n required: [\"type\"],\n },\n);\n\nconst opensteerComputerWaitActionSchema: JsonSchema = objectSchema(\n {\n type: enumSchema([\"wait\"] as const),\n durationMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerComputerWaitAction\",\n required: [\"type\", \"durationMs\"],\n },\n);\n\nconst opensteerComputerActionSchema: JsonSchema = oneOfSchema(\n [\n opensteerComputerClickActionSchema,\n opensteerComputerMoveActionSchema,\n opensteerComputerScrollActionSchema,\n opensteerComputerTypeActionSchema,\n opensteerComputerKeyActionSchema,\n opensteerComputerDragActionSchema,\n opensteerComputerScreenshotActionSchema,\n opensteerComputerWaitActionSchema,\n ],\n {\n title: \"OpensteerComputerAction\",\n },\n);\n\nconst opensteerComputerScreenshotOptionsSchema: JsonSchema = objectSchema(\n {\n format: enumSchema([\"png\", \"jpeg\", \"webp\"] as const),\n includeCursor: { type: \"boolean\" },\n disableAnnotations: arraySchema(opensteerComputerAnnotationSchema, {\n uniqueItems: true,\n }),\n },\n {\n title: \"OpensteerComputerScreenshotOptions\",\n },\n);\n\nconst opensteerComputerExecuteInputSchema: JsonSchema = objectSchema(\n {\n action: opensteerComputerActionSchema,\n screenshot: opensteerComputerScreenshotOptionsSchema,\n captureNetwork: stringSchema({ minLength: 1 }),\n },\n {\n title: \"OpensteerComputerExecuteInput\",\n required: [\"action\"],\n },\n);\n\nconst opensteerComputerTracePointSchema: JsonSchema = objectSchema(\n {\n role: enumSchema([\"point\", \"start\", \"end\"] as const),\n point: pointSchema,\n hitTest: hitTestResultSchema,\n target: opensteerResolvedTargetSchema,\n },\n {\n title: \"OpensteerComputerTracePoint\",\n required: [\"role\", \"point\"],\n },\n);\n\nconst opensteerComputerTraceEnrichmentSchema: JsonSchema = objectSchema(\n {\n points: arraySchema(opensteerComputerTracePointSchema),\n },\n {\n title: \"OpensteerComputerTraceEnrichment\",\n required: [\"points\"],\n },\n);\n\nconst opensteerComputerExecuteTimingSchema: JsonSchema = objectSchema(\n {\n actionMs: integerSchema({ minimum: 0 }),\n waitMs: integerSchema({ minimum: 0 }),\n totalMs: integerSchema({ minimum: 0 }),\n },\n {\n title: \"OpensteerComputerExecuteTiming\",\n required: [\"actionMs\", \"waitMs\", \"totalMs\"],\n },\n);\n\nconst opensteerComputerDisplayScaleSchema: JsonSchema = objectSchema(\n {\n x: numberSchema({ exclusiveMinimum: 0 }),\n y: numberSchema({ exclusiveMinimum: 0 }),\n },\n {\n title: \"OpensteerComputerDisplayScale\",\n required: [\"x\", \"y\"],\n },\n);\n\nconst opensteerComputerExecuteOutputSchema: JsonSchema = objectSchema(\n {\n action: opensteerComputerActionSchema,\n pageRef: pageRefSchema,\n screenshot: screenshotArtifactSchema,\n displayViewport: viewportMetricsSchema,\n nativeViewport: viewportMetricsSchema,\n displayScale: opensteerComputerDisplayScaleSchema,\n events: arraySchema(opensteerEventSchema),\n timing: opensteerComputerExecuteTimingSchema,\n trace: opensteerComputerTraceEnrichmentSchema,\n },\n {\n title: \"OpensteerComputerExecuteOutput\",\n required: [\n \"action\",\n \"pageRef\",\n \"screenshot\",\n \"displayViewport\",\n \"nativeViewport\",\n \"displayScale\",\n \"events\",\n \"timing\",\n ],\n },\n);\n\nexport function resolveSemanticRequiredCapabilities<TInput>(\n spec: Pick<\n OpensteerSemanticOperationSpec<TInput, unknown>,\n \"requiredCapabilities\" | \"resolveRequiredCapabilities\"\n >,\n input: TInput,\n): readonly OpensteerCapability[] {\n return spec.resolveRequiredCapabilities?.(input) ?? spec.requiredCapabilities;\n}\n\nexport function assertValidSemanticOperationInput(\n name: OpensteerSemanticOperationName,\n input: unknown,\n): void {\n const spec = opensteerSemanticOperationSpecificationMap[name];\n const issues = validateJsonSchema(spec.inputSchema, input);\n if (issues.length === 0) {\n return;\n }\n\n const firstIssue = issues[0]!;\n throw new OpensteerProtocolError(\n \"invalid-request\",\n `invalid ${name} input at ${firstIssue.path}: ${firstIssue.message}`,\n {\n details: {\n operation: name,\n issues,\n },\n },\n );\n}\n\nconst opensteerSemanticOperationSpecificationsBase = [\n defineSemanticOperationSpec<OpensteerOpenInput, OpensteerOpenOutput>({\n name: \"session.open\",\n description: \"Open or resume the current Opensteer session and primary page.\",\n inputSchema: opensteerOpenInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"sessions.manage\", \"pages.manage\"],\n resolveRequiredCapabilities: (input) =>\n input.url === undefined\n ? [\"sessions.manage\", \"pages.manage\"]\n : [\"sessions.manage\", \"pages.manage\", \"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageListInput, OpensteerPageListOutput>({\n name: \"page.list\",\n description: \"List top-level pages for the current Opensteer session.\",\n inputSchema: opensteerPageListInputSchema,\n outputSchema: opensteerPageListOutputSchema,\n requiredCapabilities: [\"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageNewInput, OpensteerPageNewOutput>({\n name: \"page.new\",\n description: \"Create and optionally navigate a new top-level page in the current session.\",\n inputSchema: opensteerPageNewInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.manage\"],\n resolveRequiredCapabilities: (input) =>\n input.url === undefined ? [\"pages.manage\"] : [\"pages.manage\", \"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageActivateInput, OpensteerPageActivateOutput>({\n name: \"page.activate\",\n description: \"Activate an existing top-level page in the current session.\",\n inputSchema: opensteerPageActivateInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageCloseInput, OpensteerPageCloseOutput>({\n name: \"page.close\",\n description: \"Close a top-level page in the current session.\",\n inputSchema: opensteerPageCloseInputSchema,\n outputSchema: opensteerPageCloseOutputSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.pages\"],\n }),\n defineSemanticOperationSpec<OpensteerPageGotoInput, OpensteerPageGotoOutput>({\n name: \"page.goto\",\n description: \"Navigate the current Opensteer page to a new URL.\",\n inputSchema: opensteerPageGotoInputSchema,\n outputSchema: opensteerSessionStateSchema,\n requiredCapabilities: [\"pages.navigate\"],\n }),\n defineSemanticOperationSpec<OpensteerPageEvaluateInput, OpensteerPageEvaluateOutput>({\n name: \"page.evaluate\",\n description: \"Execute JavaScript in the live page context and return a structured result.\",\n inputSchema: opensteerPageEvaluateInputSchema,\n outputSchema: opensteerPageEvaluateOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerAddInitScriptInput, OpensteerAddInitScriptOutput>({\n name: \"page.add-init-script\",\n description: \"Register a script that runs before page scripts in the current browser session.\",\n inputSchema: opensteerAddInitScriptInputSchema,\n outputSchema: opensteerAddInitScriptOutputSchema,\n requiredCapabilities: [\"instrumentation.initScripts\"],\n }),\n defineSemanticOperationSpec<OpensteerPageSnapshotInput, OpensteerPageSnapshotOutput>({\n name: \"page.snapshot\",\n description: \"Compile an HTML-first agent snapshot for the current page.\",\n inputSchema: opensteerPageSnapshotInputSchema,\n outputSchema: opensteerPageSnapshotOutputSchema,\n requiredCapabilities: [\"inspect.pages\", \"inspect.html\", \"inspect.domSnapshot\"],\n }),\n defineSemanticOperationSpec<OpensteerDomClickInput, OpensteerActionResult>({\n name: \"dom.click\",\n description: \"Resolve and click a DOM target using Opensteer semantics.\",\n inputSchema: opensteerDomClickInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomHoverInput, OpensteerActionResult>({\n name: \"dom.hover\",\n description: \"Resolve and hover a DOM target using Opensteer semantics.\",\n inputSchema: opensteerDomHoverInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomInputInput, OpensteerActionResult>({\n name: \"dom.input\",\n description: \"Resolve a DOM target, focus it, and type text through Opensteer semantics.\",\n inputSchema: opensteerDomInputInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\n \"input.pointer\",\n \"input.keyboard\",\n \"inspect.domSnapshot\",\n \"inspect.hitTest\",\n ],\n }),\n defineSemanticOperationSpec<OpensteerDomScrollInput, OpensteerActionResult>({\n name: \"dom.scroll\",\n description:\n \"Resolve a DOM target and dispatch directional scrolling through Opensteer semantics.\",\n inputSchema: opensteerDomScrollInputSchema,\n outputSchema: opensteerActionResultSchema,\n requiredCapabilities: [\"input.pointer\", \"inspect.domSnapshot\", \"inspect.hitTest\"],\n }),\n defineSemanticOperationSpec<OpensteerDomExtractInput, OpensteerDomExtractOutput>({\n name: \"dom.extract\",\n description: \"Run structured DOM extraction with persisted Opensteer extraction descriptors.\",\n inputSchema: opensteerDomExtractInputSchema,\n outputSchema: opensteerDomExtractOutputSchema,\n requiredCapabilities: [\"inspect.domSnapshot\", \"inspect.text\", \"inspect.attributes\"],\n }),\n defineSemanticOperationSpec<OpensteerNetworkQueryInput, OpensteerNetworkQueryOutput>({\n name: \"network.query\",\n description: \"Query persisted network records for reverse engineering workflows.\",\n inputSchema: opensteerNetworkQueryInputSchema,\n outputSchema: opensteerNetworkQueryOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerNetworkTagInput, OpensteerNetworkTagOutput>({\n name: \"network.tag\",\n description: \"Apply a tag to persisted network records matching the provided filters.\",\n inputSchema: opensteerNetworkTagInputSchema,\n outputSchema: opensteerNetworkTagOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerNetworkClearInput, OpensteerNetworkClearOutput>({\n name: \"network.clear\",\n description: \"Clear saved network records globally or for a specific tag.\",\n inputSchema: opensteerNetworkClearInputSchema,\n outputSchema: opensteerNetworkClearOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerNetworkMinimizeInput, OpensteerNetworkMinimizeOutput>({\n name: \"network.minimize\",\n description:\n \"Minimize a saved captured request by identifying the smallest viable header, cookie, query, and body-field set.\",\n inputSchema: opensteerNetworkMinimizeInputSchema,\n outputSchema: opensteerNetworkMinimizeOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) =>\n resolveTransportRequiredCapabilities(input.transport, \"session-http\"),\n }),\n defineSemanticOperationSpec<OpensteerNetworkDiffInput, OpensteerNetworkDiffOutput>({\n name: \"network.diff\",\n description:\n \"Compare two captured requests and responses field-by-field with entropy analysis for likely encrypted values.\",\n inputSchema: opensteerNetworkDiffInputSchema,\n outputSchema: opensteerNetworkDiffOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerTransportProbeInput, OpensteerTransportProbeOutput>({\n name: \"network.probe\",\n description:\n \"Probe a captured request across transport layers and recommend the lightest working execution path.\",\n inputSchema: opensteerTransportProbeInputSchema,\n outputSchema: opensteerTransportProbeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseDiscoverInput, OpensteerReverseDiscoverOutput>({\n name: \"reverse.discover\",\n description:\n \"Capture and index a bounded reverse-engineering observation window, then return the case handle, summary, report id, and query metadata only.\",\n inputSchema: opensteerReverseDiscoverInputSchema,\n outputSchema: opensteerReverseDiscoverOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseQueryInput, OpensteerReverseQueryOutput>({\n name: \"reverse.query\",\n description:\n \"Query a cached reverse case with deterministic filters and explicit sort keys or preset shortcuts over records, clusters, or candidates.\",\n inputSchema: opensteerReverseQueryInputSchema,\n outputSchema: opensteerReverseQueryOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<\n OpensteerReversePackageCreateInput,\n OpensteerReversePackageCreateOutput\n >({\n name: \"reverse.package.create\",\n description:\n \"Create an explicit reverse package draft from a chosen observed record or advisory candidate, with an optional advisory template.\",\n inputSchema: opensteerReversePackageCreateInputSchema,\n outputSchema: opensteerReversePackageCreateOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageRunInput, OpensteerReversePackageRunOutput>({\n name: \"reverse.package.run\",\n description:\n \"Run a reverse package draft through its operation, await-record, and assertion steps, returning executed bindings and first failure details.\",\n inputSchema: opensteerReversePackageRunInputSchema,\n outputSchema: opensteerReversePackageRunOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseExportInput, OpensteerReverseExportOutput>({\n name: \"reverse.export\",\n description:\n \"Export or clone a reverse-engineering package, including a request plan when the package is portable.\",\n inputSchema: opensteerReverseExportInputSchema,\n outputSchema: opensteerReverseExportOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReverseReportInput, OpensteerReverseReportOutput>({\n name: \"reverse.report\",\n description:\n \"Read an evidence-centered discovery report or a draft-centered package report, including linked evidence, replay attempts, and advisory suggestions.\",\n inputSchema: opensteerReverseReportInputSchema,\n outputSchema: opensteerReverseReportOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageGetInput, OpensteerReversePackageGetOutput>({\n name: \"reverse.package.get\",\n description:\n \"Read a standalone reverse-engineering package so an agent can inspect its workflow, resolvers, requirements, and linked evidence.\",\n inputSchema: opensteerReversePackageGetInputSchema,\n outputSchema: opensteerReversePackageGetOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerReversePackageListInput, OpensteerReversePackageListOutput>({\n name: \"reverse.package.list\",\n description: \"List reverse-engineering packages by case, key, kind, or readiness.\",\n inputSchema: opensteerReversePackageListInputSchema,\n outputSchema: opensteerReversePackageListOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<\n OpensteerReversePackagePatchInput,\n OpensteerReversePackagePatchOutput\n >({\n name: \"reverse.package.patch\",\n description:\n \"Write a new immutable reverse-engineering package revision by patching editable workflow, resolver, validator, and evidence sections.\",\n inputSchema: opensteerReversePackagePatchInputSchema,\n outputSchema: opensteerReversePackagePatchOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionCaptureInput, OpensteerInteractionCaptureOutput>({\n name: \"interaction.capture\",\n description:\n \"Capture a guarded interaction window, including event properties, state changes, and downstream network.\",\n inputSchema: opensteerInteractionCaptureInputSchema,\n outputSchema: opensteerInteractionCaptureOutputSchema,\n requiredCapabilities: [\"pages.manage\", \"inspect.cookies\", \"inspect.localStorage\"],\n }),\n defineSemanticOperationSpec<OpensteerInteractionGetInput, OpensteerInteractionGetOutput>({\n name: \"interaction.get\",\n description:\n \"Read a captured interaction trace by ID for package inspection, diffing, and replay editing.\",\n inputSchema: opensteerInteractionGetInputSchema,\n outputSchema: opensteerInteractionGetOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionDiffInput, OpensteerInteractionDiffOutput>({\n name: \"interaction.diff\",\n description:\n \"Compare two captured interaction traces by event sequence, event properties, state deltas, and downstream network.\",\n inputSchema: opensteerInteractionDiffInputSchema,\n outputSchema: opensteerInteractionDiffOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerInteractionReplayInput, OpensteerInteractionReplayOutput>({\n name: \"interaction.replay\",\n description:\n \"Replay a captured interaction trace against a live page and report how many events were reproduced.\",\n inputSchema: opensteerInteractionReplayInputSchema,\n outputSchema: opensteerInteractionReplayOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerArtifactReadInput, OpensteerArtifactReadOutput>({\n name: \"artifact.read\",\n description:\n \"Read a persisted artifact by ID so agents can inspect captured scripts, storage, cookies, or snapshots linked from reverse packages and reports.\",\n inputSchema: opensteerArtifactReadInputSchema,\n outputSchema: opensteerArtifactReadOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerCaptureScriptsInput, OpensteerCaptureScriptsOutput>({\n name: \"scripts.capture\",\n description: \"Capture inline and external script sources from the current page and run.\",\n inputSchema: opensteerCaptureScriptsInputSchema,\n outputSchema: opensteerCaptureScriptsOutputSchema,\n requiredCapabilities: [\"inspect.html\", \"inspect.network\", \"inspect.networkBodies\"],\n }),\n defineSemanticOperationSpec<OpensteerScriptBeautifyInput, OpensteerScriptBeautifyOutput>({\n name: \"scripts.beautify\",\n description:\n \"Beautify captured or inline JavaScript through Prettier and optionally persist the transformed artifact.\",\n inputSchema: opensteerScriptBeautifyInputSchema,\n outputSchema: opensteerScriptBeautifyOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerScriptDeobfuscateInput, OpensteerScriptDeobfuscateOutput>({\n name: \"scripts.deobfuscate\",\n description:\n \"Deobfuscate captured or inline JavaScript through webcrack and optionally persist the transformed artifact.\",\n inputSchema: opensteerScriptDeobfuscateInputSchema,\n outputSchema: opensteerScriptDeobfuscateOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerScriptSandboxInput, OpensteerScriptSandboxOutput>({\n name: \"scripts.sandbox\",\n description:\n \"Execute captured or inline JavaScript inside a controlled VM sandbox with browser-style shims and AJAX interception.\",\n inputSchema: opensteerScriptSandboxInputSchema,\n outputSchema: opensteerScriptSandboxOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerCaptchaSolveInput, OpensteerCaptchaSolveOutput>({\n name: \"captcha.solve\",\n description:\n \"Detect, solve, and inject a supported CAPTCHA token into the current page through a pluggable solver provider.\",\n inputSchema: opensteerCaptchaSolveInputSchema,\n outputSchema: opensteerCaptchaSolveOutputSchema,\n requiredCapabilities: [\"pages.manage\"],\n }),\n defineSemanticOperationSpec<OpensteerInspectCookiesInput, readonly CookieRecord[]>({\n name: \"inspect.cookies\",\n description: \"Read cookies from the current browser session.\",\n inputSchema: opensteerInspectCookiesInputSchema,\n outputSchema: opensteerInspectCookiesOutputSchema,\n requiredCapabilities: [\"inspect.cookies\"],\n }),\n defineSemanticOperationSpec<OpensteerInspectStorageInput, StorageSnapshot>({\n name: \"inspect.storage\",\n description: \"Read browser storage state from the current browser session.\",\n inputSchema: opensteerInspectStorageInputSchema,\n outputSchema: storageSnapshotSchema,\n requiredCapabilities: [\"inspect.localStorage\"],\n resolveRequiredCapabilities: (input) => {\n const capabilities: OpensteerCapability[] = [\"inspect.localStorage\"];\n if (input.includeSessionStorage ?? false) {\n capabilities.push(\"inspect.sessionStorage\");\n }\n if (input.includeIndexedDb ?? false) {\n capabilities.push(\"inspect.indexedDb\");\n }\n return capabilities;\n },\n }),\n defineSemanticOperationSpec<OpensteerRawRequestInput, OpensteerRawRequestOutput>({\n name: \"request.raw\",\n description:\n \"Execute a raw HTTP request through either the current browser session or a direct HTTP transport.\",\n inputSchema: opensteerRawRequestInputSchema,\n outputSchema: opensteerRawRequestOutputSchema,\n requiredCapabilities: [],\n resolveRequiredCapabilities: (input) =>\n resolveTransportRequiredCapabilities(input.transport, \"context-http\"),\n }),\n defineSemanticOperationSpec<OpensteerInferRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.infer\",\n description: \"Infer and persist a request plan from a selected network record.\",\n inputSchema: opensteerInferRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.write\",\n description: \"Validate and persist a reusable request plan in the local registry.\",\n inputSchema: opensteerWriteRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetRequestPlanInput, OpensteerRequestPlanRecord>({\n name: \"request-plan.get\",\n description: \"Resolve a request plan by key and optional version.\",\n inputSchema: opensteerGetRequestPlanInputSchema,\n outputSchema: opensteerRequestPlanRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListRequestPlansInput, OpensteerListRequestPlansOutput>({\n name: \"request-plan.list\",\n description: \"List request plans from the local registry.\",\n inputSchema: opensteerListRequestPlansInputSchema,\n outputSchema: opensteerListRequestPlansOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"recipe.write\",\n description: \"Validate and persist a reusable recipe in the local registry.\",\n inputSchema: opensteerWriteAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"recipe.get\",\n description: \"Resolve a recipe by key and optional version.\",\n inputSchema: opensteerGetAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListAuthRecipesInput, OpensteerListAuthRecipesOutput>({\n name: \"recipe.list\",\n description: \"List recipes from the local registry.\",\n inputSchema: opensteerListAuthRecipesInputSchema,\n outputSchema: opensteerListAuthRecipesOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRunAuthRecipeInput, OpensteerRunAuthRecipeOutput>({\n name: \"recipe.run\",\n description: \"Run a stored recipe deterministically against the current runtime.\",\n inputSchema: opensteerRunAuthRecipeInputSchema,\n outputSchema: opensteerRunAuthRecipeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerWriteAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"auth-recipe.write\",\n description: \"Validate and persist a reusable auth recovery recipe in the local registry.\",\n inputSchema: opensteerWriteAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerGetAuthRecipeInput, OpensteerAuthRecipeRecord>({\n name: \"auth-recipe.get\",\n description: \"Resolve an auth recipe by key and optional version.\",\n inputSchema: opensteerGetAuthRecipeInputSchema,\n outputSchema: opensteerAuthRecipeRecordSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerListAuthRecipesInput, OpensteerListAuthRecipesOutput>({\n name: \"auth-recipe.list\",\n description: \"List auth recovery recipes from the local registry.\",\n inputSchema: opensteerListAuthRecipesInputSchema,\n outputSchema: opensteerListAuthRecipesOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRunAuthRecipeInput, OpensteerRunAuthRecipeOutput>({\n name: \"auth-recipe.run\",\n description: \"Run a stored auth recovery recipe deterministically against the current runtime.\",\n inputSchema: opensteerRunAuthRecipeInputSchema,\n outputSchema: opensteerRunAuthRecipeOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerRequestExecuteInput, OpensteerRequestExecuteOutput>({\n name: \"request.execute\",\n description:\n \"Execute a request plan through its configured transport and deterministic auth recovery policy.\",\n inputSchema: opensteerRequestExecuteInputSchema,\n outputSchema: opensteerRequestExecuteOutputSchema,\n requiredCapabilities: [],\n }),\n defineSemanticOperationSpec<OpensteerComputerExecuteInput, OpensteerComputerExecuteOutput>({\n name: \"computer.execute\",\n description:\n \"Execute a computer-use action in canonical computer-display-css coordinates and return the post-action screenshot in that same model-visible space.\",\n inputSchema: opensteerComputerExecuteInputSchema,\n outputSchema: opensteerComputerExecuteOutputSchema,\n requiredCapabilities: [\"artifacts.screenshot\", \"inspect.viewportMetrics\"],\n resolveRequiredCapabilities: (input) => {\n const base: OpensteerCapability[] = [\"artifacts.screenshot\", \"inspect.viewportMetrics\"];\n switch (input.action.type) {\n case \"click\":\n if ((input.action.modifiers?.length ?? 0) > 0) {\n base.unshift(\"input.keyboard\");\n }\n base.unshift(\"input.pointer\");\n break;\n case \"move\":\n case \"scroll\":\n case \"drag\":\n base.unshift(\"input.pointer\");\n break;\n case \"type\":\n case \"key\":\n base.unshift(\"input.keyboard\");\n break;\n case \"screenshot\":\n case \"wait\":\n break;\n }\n return base;\n },\n }),\n defineSemanticOperationSpec<OpensteerSessionCloseInput, OpensteerSessionCloseOutput>({\n name: \"session.close\",\n description: \"Close the current Opensteer session and release browser resources.\",\n inputSchema: opensteerSessionCloseInputSchema,\n outputSchema: opensteerSessionCloseOutputSchema,\n requiredCapabilities: [\"sessions.manage\"],\n }),\n] as const satisfies readonly OpensteerSemanticOperationSpec[];\n\nexport const opensteerSemanticOperationSpecifications =\n opensteerSemanticOperationSpecificationsBase.map((spec) => ({\n ...spec,\n packageRunnable: opensteerPackageRunnableSemanticOperationNames.has(spec.name),\n })) as readonly OpensteerSemanticOperationSpec[];\n\nexport const opensteerSemanticOperationSpecificationMap = Object.fromEntries(\n opensteerSemanticOperationSpecifications.map((spec) => [spec.name, spec]),\n) as Record<OpensteerSemanticOperationName, OpensteerSemanticOperationSpec>;\n\nconst semanticRestBasePath = `${OPENSTEER_PROTOCOL_REST_BASE_PATH}/semantic`;\n\nexport const opensteerSemanticRestEndpoints: readonly OpensteerSemanticRestEndpointDescriptor[] =\n opensteerSemanticOperationSpecifications.map((spec) => ({\n name: spec.name,\n method: \"POST\",\n path: `${semanticRestBasePath}/operations/${spec.name.replaceAll(\".\", \"/\")}`,\n description: spec.description,\n requestSchema: requestEnvelopeSchema(spec.inputSchema, spec.name),\n responseSchema: responseEnvelopeSchema(spec.outputSchema, spec.name),\n }));\n","import type { JsonObject, JsonSchema } from \"./json.js\";\nimport {\n opensteerSemanticOperationSpecifications,\n type OpensteerSemanticOperationName,\n} from \"./semantic.js\";\n\nexport interface OpensteerMcpToolAnnotations {\n readonly readOnlyHint?: boolean;\n readonly destructiveHint?: boolean;\n readonly idempotentHint?: boolean;\n readonly openWorldHint?: boolean;\n}\n\nexport interface OpensteerMcpToolDescriptor {\n readonly name: string;\n readonly title: string;\n readonly description: string;\n readonly operation: OpensteerSemanticOperationName;\n readonly inputSchema: JsonSchema;\n readonly outputSchema: JsonSchema;\n readonly annotations?: OpensteerMcpToolAnnotations;\n}\n\nexport interface OpensteerMcpTextContent {\n readonly type: \"text\";\n readonly text: string;\n}\n\nexport interface OpensteerMcpImageContent {\n readonly type: \"image\";\n readonly data: string;\n readonly mimeType: string;\n}\n\nexport type OpensteerMcpContent = OpensteerMcpTextContent | OpensteerMcpImageContent;\n\nexport interface OpensteerMcpToolResult<TStructured extends JsonObject = JsonObject> {\n readonly structuredContent: TStructured;\n readonly content?: readonly OpensteerMcpContent[];\n readonly isError?: boolean;\n}\n\nconst readOnlyOperations = new Set<OpensteerSemanticOperationName>([\n \"page.snapshot\",\n \"dom.extract\",\n \"network.query\",\n \"request-plan.get\",\n \"request-plan.list\",\n]);\n\nconst destructiveOperations = new Set<OpensteerSemanticOperationName>([\n \"network.clear\",\n \"session.close\",\n]);\n\nfunction toolNameFromOperation(operation: OpensteerSemanticOperationName): string {\n return `opensteer_${operation.replaceAll(\".\", \"_\").replaceAll(\"-\", \"_\")}`;\n}\n\nfunction titleFromOperation(operation: OpensteerSemanticOperationName): string {\n return operation\n .split(/[.-]/)\n .map((segment) => {\n switch (segment) {\n case \"dom\":\n return \"DOM\";\n case \"html\":\n return \"HTML\";\n default:\n return segment.charAt(0).toUpperCase() + segment.slice(1);\n }\n })\n .join(\" \");\n}\n\nexport const opensteerMcpTools: readonly OpensteerMcpToolDescriptor[] =\n opensteerSemanticOperationSpecifications.map((spec) => ({\n name: toolNameFromOperation(spec.name),\n title: titleFromOperation(spec.name),\n description: spec.description,\n operation: spec.name,\n inputSchema: spec.inputSchema,\n outputSchema: spec.outputSchema,\n annotations: {\n readOnlyHint: readOnlyOperations.has(spec.name),\n destructiveHint: destructiveOperations.has(spec.name),\n idempotentHint: readOnlyOperations.has(spec.name),\n openWorldHint: true,\n },\n }));\n\nexport function createStructuredToolResult<TStructured extends JsonObject>(\n structuredContent: TStructured,\n options: {\n readonly text?: string;\n readonly content?: readonly OpensteerMcpContent[];\n readonly isError?: boolean;\n } = {},\n): OpensteerMcpToolResult<TStructured> {\n const content =\n options.content ??\n (options.text === undefined\n ? undefined\n : [\n {\n type: \"text\",\n text: options.text,\n } satisfies OpensteerMcpTextContent,\n ]);\n\n return {\n structuredContent,\n ...(content === undefined ? {} : { content }),\n ...(options.isError === undefined ? {} : { isError: options.isError }),\n };\n}\n","import type {\n ActionBoundaryOutcome,\n ActionBoundarySettleTrigger,\n ActionBoundarySnapshot,\n BrowserCoreEngine,\n PageRef,\n ScreenshotArtifact as BrowserCoreScreenshotArtifact,\n} from \"@opensteer/browser-core\";\n\nimport type {\n OpensteerComputerAction,\n OpensteerComputerAnnotation,\n OpensteerComputerExecuteTiming,\n} from \"./semantic.js\";\nimport type { OpensteerEvent } from \"./events.js\";\nimport type { ViewportMetrics } from \"./geometry.js\";\nimport type { ScreenshotFormat } from \"./snapshots.js\";\n\nexport const OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL = Symbol.for(\"@opensteer/computer-use-bridge\");\n\nexport interface NormalizedComputerScreenshotOptions {\n readonly format: ScreenshotFormat;\n readonly includeCursor: boolean;\n readonly annotations: readonly OpensteerComputerAnnotation[];\n}\n\nexport interface ComputerUseBridgeInput {\n readonly pageRef: PageRef;\n readonly snapshot?: ActionBoundarySnapshot;\n readonly action: OpensteerComputerAction;\n readonly screenshot: NormalizedComputerScreenshotOptions;\n readonly signal: AbortSignal;\n remainingMs(): number | undefined;\n policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger): Promise<void>;\n}\n\nexport interface ComputerUseBridgeOutput {\n readonly pageRef: PageRef;\n readonly screenshot: BrowserCoreScreenshotArtifact;\n readonly viewport: ViewportMetrics;\n readonly events: readonly OpensteerEvent[];\n readonly timing: OpensteerComputerExecuteTiming;\n readonly boundary?: ActionBoundaryOutcome;\n}\n\nexport interface ComputerUseBridge {\n execute(input: ComputerUseBridgeInput): Promise<ComputerUseBridgeOutput>;\n}\n\nexport interface ComputerUseBridgeProvider {\n [OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL](): ComputerUseBridge;\n}\n\ntype ComputerUseBridgeFactory =\n ComputerUseBridgeProvider[typeof OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL];\n\nfunction isComputerUseBridgeFactory(value: unknown): value is ComputerUseBridgeFactory {\n return typeof value === \"function\";\n}\n\nexport function resolveComputerUseBridge(\n engine: BrowserCoreEngine | ComputerUseBridgeProvider,\n): ComputerUseBridge | undefined {\n const candidate = Reflect.get(engine, OPENSTEER_COMPUTER_USE_BRIDGE_SYMBOL);\n return isComputerUseBridgeFactory(candidate) ? candidate.call(engine) : undefined;\n}\n","import type {\n ActionBoundaryOutcome,\n ActionBoundarySettleTrigger,\n ActionBoundarySnapshot,\n BrowserCoreEngine,\n KeyModifier,\n NodeLocator,\n PageRef,\n Point,\n Quad,\n Rect,\n} from \"@opensteer/browser-core\";\nimport type { ReplayElementPath } from \"./dom-path-types.js\";\n\nexport const OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL = Symbol.for(\"@opensteer/dom-action-bridge\");\n\nexport type DomActionScrollAlignment = \"start\" | \"center\" | \"end\" | \"nearest\";\n\nexport interface DomActionTargetInspection {\n readonly connected: boolean;\n readonly visible: boolean;\n readonly enabled: boolean;\n readonly editable: boolean;\n readonly pointerEvents: string;\n readonly bounds?: Rect;\n readonly contentQuads: readonly Quad[];\n}\n\nexport interface DomActionScrollOptions {\n readonly block?: DomActionScrollAlignment;\n readonly inline?: DomActionScrollAlignment;\n}\n\nexport interface DomActionKeyPressInput {\n readonly key: string;\n readonly modifiers?: readonly KeyModifier[];\n}\n\nexport interface DomActionSettleOptions {\n readonly operation: \"dom.click\" | \"dom.hover\" | \"dom.input\" | \"dom.scroll\";\n readonly snapshot?: ActionBoundarySnapshot;\n readonly signal: AbortSignal;\n remainingMs(): number | undefined;\n policySettle(pageRef: PageRef, trigger: ActionBoundarySettleTrigger): Promise<void>;\n}\n\nexport type DomPointerHitRelation =\n | \"self\"\n | \"descendant\"\n | \"ancestor\"\n | \"same-owner\"\n | \"outside\"\n | \"unknown\";\n\nexport interface DomPointerHitAssessment {\n readonly relation: DomPointerHitRelation;\n readonly blocking: boolean;\n readonly ambiguous?: boolean;\n readonly canonicalTarget?: NodeLocator;\n readonly hitOwner?: NodeLocator;\n}\n\nexport interface DomActionBridge {\n buildReplayPath(locator: NodeLocator): Promise<ReplayElementPath>;\n inspectActionTarget(locator: NodeLocator): Promise<DomActionTargetInspection>;\n canonicalizePointerTarget(locator: NodeLocator): Promise<NodeLocator>;\n classifyPointerHit(input: {\n readonly target: NodeLocator;\n readonly hit: NodeLocator;\n readonly point: Point;\n }): Promise<DomPointerHitAssessment>;\n scrollNodeIntoView(locator: NodeLocator, options?: DomActionScrollOptions): Promise<void>;\n focusNode(locator: NodeLocator): Promise<void>;\n pressKey(locator: NodeLocator, input: DomActionKeyPressInput): Promise<void>;\n finalizeDomAction(\n pageRef: PageRef,\n options: DomActionSettleOptions,\n ): Promise<ActionBoundaryOutcome>;\n}\n\nexport interface DomActionBridgeProvider {\n [OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL](): DomActionBridge;\n}\n\ntype DomActionBridgeFactory = DomActionBridgeProvider[typeof OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL];\n\nfunction isDomActionBridgeFactory(value: unknown): value is DomActionBridgeFactory {\n return typeof value === \"function\";\n}\n\nexport function resolveDomActionBridge(\n engine: BrowserCoreEngine | DomActionBridgeProvider,\n): DomActionBridge | undefined {\n const candidate = Reflect.get(engine, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL);\n return isDomActionBridgeFactory(candidate) ? candidate.call(engine) : undefined;\n}\n"]}
|