diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 9fd1c2086b..3b1be540f4 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -28,7 +28,7 @@ intentionally not included. --> - Provider, bridge, target-format, or platform compatibility: - Evidence, artifact, provenance, or reconstruction contract: - Process execution, authorization, cleanup, or containment impact: -- Generated metadata, package, or installation impact: +- Generated metadata (`docs/product-catalog.json`), package, or installation impact: ## Evidence and regression coverage diff --git a/docs/architecture.mermaid b/docs/architecture.mermaid index 848c7f48e4..89eed9ba29 100644 --- a/docs/architecture.mermaid +++ b/docs/architecture.mermaid @@ -29,7 +29,7 @@ graph TD end subgraph "Provider Process Foundation" - PROCESS["src/process/
owned process groups, private roots
deadlines, bounded diagnostics, cleanup"] + PROCESS["src/process/
owned process groups, private roots
deadlines, bounded file reads and diagnostics, cleanup"] end subgraph "Contracts Layer" diff --git a/scripts/lib/managed-conformance-manifest.mjs b/scripts/lib/managed-conformance-manifest.mjs index 74c456f054..783abbeb55 100644 --- a/scripts/lib/managed-conformance-manifest.mjs +++ b/scripts/lib/managed-conformance-manifest.mjs @@ -1,7 +1,7 @@ import { basename, dirname, isAbsolute, resolve } from "node:path"; import { readFile } from "node:fs/promises"; -import { parseBinaryTarget } from "../../dist/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../dist/application/BinaryTargetResolver.js"; import { inspectManagedArtifactBytes } from "../../dist/dotnet/ManagedArtifactInspector.js"; import { inspectManagedMembersBytes } from "../../dist/dotnet/ManagedMemberInspector.js"; import { projectManagedApplicationGraphEvidence } from "../../dist/application/ManagedApplicationGraphService.js"; diff --git a/scripts/lib/managed-conformance-support.mjs b/scripts/lib/managed-conformance-support.mjs index 457aae1af1..be0d5ea9df 100644 --- a/scripts/lib/managed-conformance-support.mjs +++ b/scripts/lib/managed-conformance-support.mjs @@ -2,7 +2,7 @@ import { createHash } from "node:crypto"; import { writeFile } from "node:fs/promises"; import { join } from "node:path"; -import { parseBinaryTarget } from "../../dist/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../dist/application/BinaryTargetResolver.js"; import { buildManagedPeFixture } from "./managed-pe-fixture.mjs"; import { createManagedConformanceOracleSupport } from "./managed-conformance-oracles.mjs"; diff --git a/scripts/verify-package-platform.d.mts b/scripts/verify-package-platform.d.mts new file mode 100644 index 0000000000..4342027c25 --- /dev/null +++ b/scripts/verify-package-platform.d.mts @@ -0,0 +1,11 @@ +/** Validate the expected fail-closed Linux fixture outcome. */ +export function assertLinuxPackageProviderFailure(execution: { + readonly status: number | null; + readonly stdout: string; +}): void; + +/** Run platform-specific packaged analysis checks. */ +export function verifyPackagePlatform(input: { + readonly cli: string; + readonly environment: Readonly>; +}): Promise; diff --git a/scripts/verify-package-platform.mjs b/scripts/verify-package-platform.mjs index 3444c141bf..f21641f06c 100644 --- a/scripts/verify-package-platform.mjs +++ b/scripts/verify-package-platform.mjs @@ -8,14 +8,7 @@ export async function verifyPackagePlatform({ cli, environment }) { ["analyze", process.execPath, "--json"], environment, ); - const unsupported = json(unsupportedExecution.stdout); - if ( - unsupportedExecution.status !== 1 || - unsupported.details?.failure_code !== "unsupported_hopper_build" - ) - throw new Error( - `packaged Linux Hopper verification did not fail closed: ${JSON.stringify(unsupported)}`, - ); + assertLinuxPackageProviderFailure(unsupportedExecution); } else { const overview = json( await run(cli, ["analyze", process.execPath, "--json"], environment), @@ -85,3 +78,30 @@ export async function verifyPackagePlatform({ cli, environment }) { throw new Error(`packaged trace CLI failed: ${JSON.stringify(trace)}`); } } + +/** Require the declared unsupported build or an exact missing-Xvfb diagnostic, never arbitrary provider failure. */ +export const assertLinuxPackageProviderFailure = (execution) => { + const failure = json(execution.stdout); + const details = failure?.details; + const diagnostic = details?.diagnostics; + const unsupportedBuild = + details?.failure_code === "unsupported_hopper_build" && + details.exit_code === 72; + const missingDisplayDependency = + details?.failure_code === "runtime_dependency_unavailable" && + details.exit_code === 79 && + diagnostic?.component === "hopper_private_display" && + diagnostic.operation === "probe" && + diagnostic.reason === "missing_xvfb" && + diagnostic.status === "error" && + diagnostic.failure_code === "runtime_dependency_unavailable" && + diagnostic.strategy === "unavailable"; + if ( + execution.status !== 1 || + failure?.code !== "provider_unavailable" || + (!unsupportedBuild && !missingDisplayDependency) + ) + throw new Error( + `packaged Linux Hopper verification did not fail closed: ${JSON.stringify(failure)}`, + ); +}; diff --git a/scripts/verify-package-setup.mjs b/scripts/verify-package-setup.mjs index 7fc4bf234a..68b33443f3 100644 --- a/scripts/verify-package-setup.mjs +++ b/scripts/verify-package-setup.mjs @@ -118,7 +118,7 @@ const verifySetupApply = async ({ cli, environment, supportedSetupHost }) => { const first = json(firstExecution.stdout); const alignedExecution = await runWithStatus( cli, - ["setup", "--json"], + ["setup", "--all-detected", "--json"], environment, ); const aligned = json(alignedExecution.stdout); @@ -142,7 +142,7 @@ const verifySetupApply = async ({ cli, environment, supportedSetupHost }) => { second.appliedActions.length !== 0 ) throw new Error( - `packaged setup did not preserve idempotent defaults and explicit Hopper reinstall behavior: ${JSON.stringify({ first, aligned, second })}`, + `packaged setup did not preserve idempotent agent configuration and explicit Hopper reinstall behavior: ${JSON.stringify({ first, aligned, second })}`, ); } return { diff --git a/scripts/verify-real-ghidra-assertions.mjs b/scripts/verify-real-ghidra-assertions.mjs index 7a72ecc372..5bd5487ac7 100644 --- a/scripts/verify-real-ghidra-assertions.mjs +++ b/scripts/verify-real-ghidra-assertions.mjs @@ -1,6 +1,6 @@ import { access } from "node:fs/promises"; -import { parseBinaryTarget } from "../dist/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../dist/application/BinaryTargetResolver.js"; import { SUPPORTED_GHIDRA_VERSION } from "../dist/ghidra/GhidraInstallation.js"; import { GHIDRA_SESSION_CAPABILITIES } from "../dist/ghidra/GhidraSessionValues.js"; diff --git a/scripts/verify-real-ghidra-windows.mjs b/scripts/verify-real-ghidra-windows.mjs index de8b039607..19bc6be8f7 100644 --- a/scripts/verify-real-ghidra-windows.mjs +++ b/scripts/verify-real-ghidra-windows.mjs @@ -24,7 +24,7 @@ import { import { GhidraHeadlessLauncher } from "../dist/ghidra/GhidraLauncher.js"; import { GHIDRA_PROVIDER_IDENTITY } from "../dist/ghidra/GhidraProvider.js"; import { GHIDRA_SESSION_CAPABILITIES as SESSION_CAPABILITIES } from "../dist/ghidra/GhidraSessionValues.js"; -import { parseBinaryTarget } from "../dist/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../dist/application/BinaryTargetResolver.js"; import { completeVerifierRun, createVerifierRun } from "./lib/verifier-run.mjs"; const verifierRun = createVerifierRun(); diff --git a/scripts/verify-real-ghidra.mjs b/scripts/verify-real-ghidra.mjs index b8c4aca528..35722544ae 100644 --- a/scripts/verify-real-ghidra.mjs +++ b/scripts/verify-real-ghidra.mjs @@ -7,7 +7,7 @@ import { isAbsolute, join } from "node:path"; import { fileURLToPath } from "node:url"; import { promisify } from "node:util"; -import { parseBinaryTarget } from "../dist/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../dist/application/BinaryTargetResolver.js"; import { resolveGhidraAnalysisProfile } from "../dist/ghidra/GhidraAnalysisProfile.js"; import { GhidraClient } from "../dist/ghidra/GhidraClient.js"; import { GHIDRA_DECOMPILE_REQUEST_TIMEOUT_MS } from "../dist/ghidra/GhidraDefaults.js"; diff --git a/src/application/AbortablePromise.ts b/src/application/AbortablePromise.ts index 8d6b8d7013..5069efda03 100644 --- a/src/application/AbortablePromise.ts +++ b/src/application/AbortablePromise.ts @@ -11,14 +11,18 @@ export const waitForAbortable = async ( signal: AbortSignal | undefined, ): Promise => { if (signal === undefined) return pending; - if (signal.aborted) return ABORTED; let onAbort: (() => void) | undefined; const cancelled = new Promise((resolve) => { + if (signal.aborted) { + resolve(ABORTED); + return; + } onAbort = () => resolve(ABORTED); signal.addEventListener("abort", onAbort, { once: true }); }); try { - return await Promise.race([pending, cancelled]); + // Even an already-cancelled wait must own the producer's eventual rejection. + return await Promise.race([cancelled, pending]); } finally { if (onAbort !== undefined) signal.removeEventListener("abort", onAbort); } diff --git a/src/application/ArtifactInventory/classify.ts b/src/application/ArtifactInventory/classify.ts index 975d9f52db..3125cc63aa 100644 --- a/src/application/ArtifactInventory/classify.ts +++ b/src/application/ArtifactInventory/classify.ts @@ -2,7 +2,10 @@ import { open } from "node:fs/promises"; import { classifyArtifactPath } from "../ArtifactGraphConstruction.js"; import type { ArtifactNode } from "../../domain/artifactGraph.js"; -import { zipPackageFormatForPath } from "../../domain/zipPackageFormat.js"; +import { + hasZipSignature, + zipPackageFormatForPath, +} from "../../domain/zipPackageFormat.js"; const classifyContainerExtension = ( path: string, @@ -26,14 +29,7 @@ export const classifyRoot = async ( try { const magic = Buffer.alloc(4); const observed = await handle.read(magic, 0, magic.length, 0); - if ( - observed.bytesRead === 4 && - magic[0] === 0x50 && - magic[1] === 0x4b && - [0x03, 0x05, 0x07].includes(magic[2] ?? -1) && - [0x04, 0x06, 0x08].includes(magic[3] ?? -1) - ) - return "zip"; + if (hasZipSignature(magic.subarray(0, observed.bytesRead))) return "zip"; if (observed.bytesRead === 4) { const header = magic.readUInt32BE(0); if ([0xcafebabe, 0xbebafeca, 0xcafebabf, 0xbfbafeca].includes(header)) diff --git a/src/application/AuthorizedArtifactInventory.ts b/src/application/AuthorizedArtifactInventory.ts index adbf0662a5..00a0467b12 100644 --- a/src/application/AuthorizedArtifactInventory.ts +++ b/src/application/AuthorizedArtifactInventory.ts @@ -2,7 +2,7 @@ import { realpath } from "node:fs/promises"; import type { ArtifactLimits } from "../artifacts/ArtifactReader.js"; import { ArtifactReaderFailure } from "../artifacts/ArtifactReader.js"; -import { withinRoot } from "../reference/ReferenceSourceReaderPaths.js"; +import { isPathWithinRoot } from "../domain/localPath.js"; import { scanCanonicalArtifactInventory, type ArtifactInventoryOptions, @@ -26,7 +26,7 @@ export const scanAuthorizedArtifactInventory = async ( realpath(inputPath), canonicalizeConfiguredRoots(roots), ]); - if (!approved.some((root) => withinRoot(root, path))) + if (!approved.some((root) => isPathWithinRoot(root, path))) throw new ArtifactReaderFailure( "path", "Artifact path is outside approved input roots", diff --git a/src/application/BinarySessionOpen.ts b/src/application/BinarySessionOpen.ts index 3bb9645adc..25cdd8d5cb 100644 --- a/src/application/BinarySessionOpen.ts +++ b/src/application/BinarySessionOpen.ts @@ -6,10 +6,8 @@ import { snapshotTarget, } from "../domain/analysisSnapshot.js"; import type { AnalysisSnapshot } from "../domain/analysisSnapshot.js"; -import { - parseBinaryTarget, - type BinaryTarget, -} from "../domain/binaryTarget.js"; +import { parseBinaryTarget } from "./BinaryTargetResolver.js"; +import { type BinaryTarget } from "../domain/binaryTarget.js"; import { EvidenceIntegrityError, type AnalysisError, diff --git a/src/application/BinaryTargetResolver.ts b/src/application/BinaryTargetResolver.ts new file mode 100644 index 0000000000..463afe7c08 --- /dev/null +++ b/src/application/BinaryTargetResolver.ts @@ -0,0 +1,293 @@ +import { constants } from "node:fs"; +import { createHash } from "node:crypto"; +import { + access, + open, + readFile, + realpath, + stat, + type FileHandle, +} from "node:fs/promises"; +import { execFile } from "node:child_process"; +import { extname, isAbsolute, join, resolve } from "node:path"; +import { promisify } from "node:util"; + +import { isPathWithinRoot } from "../domain/localPath.js"; +import { BinaryTargetError } from "../domain/errors.js"; +import type { BinaryTarget } from "../domain/binaryTargetTypes.js"; +import { err, ok, type Result } from "../domain/result.js"; +import { + hasZipSignature, + zipPackageFormatForPath, +} from "../domain/zipPackageFormat.js"; + +import { + parseExecutableHeader, + parsePeRecord, + type ExecutableMetadata, +} from "../domain/binaryTarget.js"; + +const execFileAsync = promisify(execFile); + +/** + * Resolve and classify a readable local target before a provider is selected. + * FAT Mach-O inputs select only a host-compatible architecture so setup remains + * non-interactive; unsupported or ambiguous inputs are returned as typed errors. + */ +export const parseBinaryTarget = async ( + input: string, + cwd = process.cwd(), + hostArchitecture: NodeJS.Architecture = process.arch, + targetKind?: BinaryTarget["kind"], +): Promise> => { + const candidate = isAbsolute(input) ? input : resolve(cwd, input); + try { + await access(candidate, constants.R_OK); + const canonical = await realpath(candidate); + const resolved = await resolveAppBundle(canonical); + if (!resolved.ok) return err(resolved.error); + const path = resolved.value; + const handle = await open(path, "r"); + try { + if (!(await handle.stat()).isFile()) + return err(new BinaryTargetError(path, "target is not a regular file")); + if ( + targetKind === "database" || + (targetKind === undefined && path.toLowerCase().endsWith(".hop")) + ) + return ok({ + path, + sourcePath: canonical, + sha256: await sha256Handle(handle), + kind: "database", + format: "analysis-database", + }); + const artifactFormat = await detectArtifactFormat(path, handle); + if (artifactFormat !== undefined) { + const identity = { + path, + sourcePath: canonical, + sha256: await sha256Handle(handle), + }; + return isArchiveFormat(artifactFormat) + ? ok({ ...identity, kind: "archive", format: artifactFormat }) + : ok({ ...identity, kind: "artifact", format: artifactFormat }); + } + const detected = await readExecutableMetadata(handle, hostArchitecture); + if (!detected.ok) return err(new BinaryTargetError(path, detected.error)); + return ok({ + path, + sourcePath: canonical, + sha256: await sha256Handle(handle), + kind: "executable", + ...detected.value, + }); + } finally { + await handle.close(); + } + } catch (cause: unknown) { + return err( + new BinaryTargetError(candidate, "path is not readable", { cause }), + ); + } +}; + +const detectArtifactFormat = async ( + path: string, + handle: FileHandle, +): Promise< + | Exclude< + BinaryTarget["format"], + "analysis-database" | "mach-o" | "elf" | "pe" + > + | undefined +> => { + const lower = path.toLowerCase(); + const magic = Buffer.alloc(8); + const observed = await handle.read(magic, 0, magic.length, 0); + if (hasZipSignature(magic.subarray(0, observed.bytesRead))) { + return zipPackageFormatForPath(lower) ?? "zip"; + } + const named = namedArtifactFormat(lower); + if (named !== undefined) return named; + if ( + lower.endsWith(".pkg") && + observed.bytesRead >= 4 && + magic.subarray(0, 4).toString("ascii") === "xar!" + ) + return "pkg"; + if (lower.endsWith(".dmg")) { + const size = (await handle.stat()).size; + if (size >= 512) { + const trailer = Buffer.alloc(4); + const read = await handle.read(trailer, 0, trailer.length, size - 512); + if (read.bytesRead === 4 && trailer.toString("ascii") === "koly") + return "dmg"; + } + } + return undefined; +}; + +const namedArtifactFormat = ( + lowerPath: string, +): "asar" | "plist" | "source-map" | "javascript" | undefined => { + if (lowerPath.endsWith(".asar")) return "asar"; + if (lowerPath.endsWith(".plist")) return "plist"; + if (lowerPath.endsWith(".map")) return "source-map"; + return /\.(?:m?js|cjs)$/u.test(lowerPath) ? "javascript" : undefined; +}; + +const isArchiveFormat = ( + format: Exclude< + BinaryTarget["format"], + "analysis-database" | "mach-o" | "elf" | "pe" + >, +): format is Extract["format"] => + ["zip", "ipa", "apk", "msix", "appx", "asar", "dmg", "pkg"].includes(format); + +const sha256Handle = async (handle: FileHandle): Promise => { + const hash = createHash("sha256"); + const chunk = Buffer.allocUnsafe(64 * 1024); + let position = 0; + while (true) { + const observed = await handle.read(chunk, 0, chunk.length, position); + if (observed.bytesRead === 0) break; + hash.update(chunk.subarray(0, observed.bytesRead)); + position += observed.bytesRead; + } + return hash.digest("hex"); +}; + +const resolveAppBundle = async ( + path: string, +): Promise> => { + const metadata = await stat(path); + if (!metadata.isDirectory()) return ok(path); + if (extname(path).toLowerCase() !== ".app") + return err(new BinaryTargetError(path, "target is not an app or file")); + const plistPath = join(path, "Contents", "Info.plist"); + let name: string; + try { + const plist = await readFile(plistPath); + name = + plist.subarray(0, 6).toString("ascii") === "bplist" + ? await readBinaryPlistExecutable(plistPath) + : parseXmlPlistExecutable(plist.toString("utf8")); + } catch (cause: unknown) { + return err( + new BinaryTargetError(path, "app has no readable CFBundleExecutable", { + cause, + }), + ); + } + if (!isSafeExecutableName(name)) + return err( + new BinaryTargetError(path, "app has an unsafe CFBundleExecutable"), + ); + const programs = join(path, "Contents", "MacOS"); + const executable = join(programs, name); + try { + const [canonicalPrograms, canonicalExecutable] = await Promise.all([ + realpath(programs), + realpath(executable), + ]); + if (!isPathWithinRoot(canonicalPrograms, canonicalExecutable)) + return err( + new BinaryTargetError(path, "app program file leaves Contents/MacOS"), + ); + return ok(canonicalExecutable); + } catch (cause: unknown) { + return err( + new BinaryTargetError(path, "app program file is missing", { cause }), + ); + } +}; + +const parseXmlPlistExecutable = (plist: string): string => { + const match = + /\s*CFBundleExecutable\s*<\/key>\s*([^<]+)<\/string>/u.exec( + plist, + ); + if (match?.[1] === undefined) + throw new Error("CFBundleExecutable is missing"); + return decodeXml(match[1].trim()); +}; + +const readBinaryPlistExecutable = async (plistPath: string): Promise => + ( + await execFileAsync("/usr/bin/plutil", [ + "-extract", + "CFBundleExecutable", + "raw", + "-o", + "-", + plistPath, + ]) + ).stdout.trim(); + +const isSafeExecutableName = (name: string): boolean => + name.length > 0 && + name !== "." && + name !== ".." && + !name.includes("\0") && + !/[/\\]/u.test(name); + +const decodeXml = (value: string): string => + value + .replaceAll("&", "&") + .replaceAll("<", "<") + .replaceAll(">", ">") + .replaceAll(""", '"') + .replaceAll("'", "'"); + +const readExecutableMetadata = async ( + handle: FileHandle, + hostArchitecture: NodeJS.Architecture, +): Promise> => { + const prefix = Buffer.alloc(4096); + const prefixRead = await handle.read(prefix, 0, prefix.length, 0); + const bytes = prefix.subarray(0, prefixRead.bytesRead); + if (bytes.length >= 64 && bytes[0] === 0x4d && bytes[1] === 0x5a) { + const offset = bytes.readUInt32LE(0x3c); + return readPeMetadata(handle, offset); + } + if (bytes.length >= 8) { + const magic = bytes.readUInt32BE(0); + if ([0xcafebabf, 0xbfbafeca].includes(magic)) { + const little = magic === 0xbfbafeca; + const count = little ? bytes.readUInt32LE(4) : bytes.readUInt32BE(4); + const required = 8 + count * 32; + if (count <= 128 && required > bytes.length) { + const header = Buffer.alloc(required); + const headerRead = await handle.read(header, 0, header.length, 0); + return parseExecutableHeader( + header.subarray(0, headerRead.bytesRead), + hostArchitecture, + ); + } + } + } + return parseExecutableHeader(bytes, hostArchitecture); +}; + +const readPeMetadata = async ( + handle: FileHandle, + offset: number, +): Promise> => { + const fileHeader = Buffer.alloc(24); + const fileHeaderRead = await handle.read( + fileHeader, + 0, + fileHeader.length, + offset, + ); + if (fileHeaderRead.bytesRead !== fileHeader.length) + return err("invalid or truncated PE header"); + const optionalHeaderSize = fileHeader.readUInt16LE(20); + if (optionalHeaderSize > 4096) return err("invalid PE optional header size"); + const record = Buffer.alloc(24 + optionalHeaderSize); + const recordRead = await handle.read(record, 0, record.length, offset); + return recordRead.bytesRead === record.length + ? parsePeRecord(record) + : err("invalid or truncated PE header"); +}; diff --git a/src/application/BoundedJsonFiles.ts b/src/application/BoundedJsonFiles.ts index b9a95d0347..a264fdb603 100644 --- a/src/application/BoundedJsonFiles.ts +++ b/src/application/BoundedJsonFiles.ts @@ -1,12 +1,14 @@ -import { lstat, readFile, realpath } from "node:fs/promises"; -import { basename, dirname, isAbsolute, relative, resolve } from "node:path"; +import { link, lstat, mkdtemp, open, realpath, rm } from "node:fs/promises"; +import { basename, dirname, resolve } from "node:path"; import writeFileAtomic from "write-file-atomic"; +import { isPathWithinRoot } from "../domain/localPath.js"; import type { EvidenceFilePolicy } from "../domain/evidenceBundle.js"; import { EvidenceFileError } from "../domain/errors.js"; import { isJsonWithinLimits } from "../domain/jsonLimits.js"; import { err, ok, type Result } from "../domain/result.js"; +import { readBoundedFileBytes } from "../process/BoundedFileBytes.js"; import { canonicalizeConfiguredRoots } from "./ConfiguredRoots.js"; /** Read bounded JSON data from a regular file beneath an approved root. */ @@ -24,8 +26,14 @@ export const readBoundedJson = async ( if (!stats.isFile()) return err(new EvidenceFileError("read", "not-file")); if (stats.size > policy.maxBytes) return err(new EvidenceFileError("read", "too-large")); - const encoded = await readFile(canonicalPath); - if (encoded.byteLength > policy.maxBytes) + const handle = await open(canonicalPath, "r"); + let encoded: Buffer | undefined; + try { + encoded = await readBoundedFileBytes(handle, policy.maxBytes); + } finally { + await handle.close(); + } + if (encoded === undefined) return err(new EvidenceFileError("read", "too-large")); let decoded: unknown; try { @@ -62,7 +70,7 @@ export const writeBoundedText = async ( if (!(await isApproved(destination, policy.roots))) return err(new EvidenceFileError("write", "outside-root")); const existing = await lstat(destination).catch((cause: unknown) => { - if (isFileNotFound(cause)) return undefined; + if (fileErrorCode(cause) === "ENOENT") return undefined; throw cause; }); if (existing !== undefined) { @@ -70,14 +78,39 @@ export const writeBoundedText = async ( if (!existing.isFile() || existing.isSymbolicLink()) return err(new EvidenceFileError("write", "not-file")); } - await writeFileAtomic(destination, encoded, { + if (overwrite) + await writeFileAtomic(destination, encoded, { + encoding: "utf8", + mode: 0o600, + fsync: true, + }); + else await publishNewFile(destination, encoded); + return ok({ path: requestedPath, bytes }); + } catch (cause: unknown) { + if (!overwrite && fileErrorCode(cause) === "EEXIST") + return err(new EvidenceFileError("write", "exists", { cause })); + return err(new EvidenceFileError("write", "io", { cause })); + } +}; + +const publishNewFile = async ( + destination: string, + encoded: string, +): Promise => { + const stagingDirectory = await mkdtemp( + resolve(dirname(destination), ".rea-write-"), + ); + try { + const staged = resolve(stagingDirectory, "content"); + await writeFileAtomic(staged, encoded, { encoding: "utf8", mode: 0o600, fsync: true, }); - return ok({ path: requestedPath, bytes }); - } catch (cause: unknown) { - return err(new EvidenceFileError("write", "io", { cause })); + // A hard link publishes complete bytes atomically and cannot replace an existing name. + await link(staged, destination); + } finally { + await rm(stagingDirectory, { recursive: true, force: true }); } }; @@ -88,18 +121,12 @@ const isApproved = async ( for (const root of await canonicalizeConfiguredRoots( roots.map((configuredRoot) => resolve(configuredRoot)), )) { - const relation = relative(root, candidate); - if ( - relation === "" || - (!relation.startsWith("..") && !isAbsolute(relation)) - ) - return true; + if (isPathWithinRoot(root, candidate)) return true; } return false; }; -const isFileNotFound = (cause: unknown): boolean => - typeof cause === "object" && - cause !== null && - "code" in cause && - cause.code === "ENOENT"; +const fileErrorCode = (cause: unknown): unknown => + typeof cause === "object" && cause !== null && "code" in cause + ? cause.code + : undefined; diff --git a/src/application/BrowserObservationService.ts b/src/application/BrowserObservationService.ts index 0c0cfe442c..4f97ca0474 100644 --- a/src/application/BrowserObservationService.ts +++ b/src/application/BrowserObservationService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import type { Evidence } from "../domain/evidence.js"; import { isLiteralLoopbackHostname, @@ -14,8 +15,6 @@ import type { } from "../domain/webScreenshot.js"; import { AnalysisCapabilityUnavailableError, - AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import { err, ok, type Result } from "../domain/result.js"; @@ -248,14 +247,7 @@ const prepare = async ( }, "read", ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return browser === undefined ? err( new AnalysisCapabilityUnavailableError( diff --git a/src/application/BrowserScenarioCaptureService.ts b/src/application/BrowserScenarioCaptureService.ts index 43272c73c2..4ab39ec5ba 100644 --- a/src/application/BrowserScenarioCaptureService.ts +++ b/src/application/BrowserScenarioCaptureService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import type { ExecutionOptions } from "./AnalysisProvider.js"; import type { BrowserScenarioCapturePort } from "./BrowserScenarioCapturePort.js"; import { createBrowserScenarioEvidence } from "./BrowserScenarioEvidence.js"; @@ -5,8 +6,6 @@ import type { PermissionAuthority } from "./PermissionAuthority.js"; import { digestJson } from "./JavaScriptReplayPlanning.js"; import { AnalysisCapabilityUnavailableError, - AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import type { Evidence } from "../domain/evidence.js"; @@ -57,14 +56,7 @@ const authorizeScenario = async ( }, "write", ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return { ok: true, value: true }; }; diff --git a/src/application/ClientConfigurationDocument.ts b/src/application/ClientConfigurationDocument.ts new file mode 100644 index 0000000000..29c3bada5b --- /dev/null +++ b/src/application/ClientConfigurationDocument.ts @@ -0,0 +1,36 @@ +import { parse as parseToml, stringify as stringifyToml } from "smol-toml"; +import { z } from "zod"; + +import type { SetupClient } from "./SupportedClients.js"; + +/** Validated client document and its server table, preserving unrelated settings. */ +export interface ClientConfigurationDocument { + readonly document: Record; + readonly servers: Record; + readonly serversKey: "mcp_servers" | "mcpServers"; +} + +const objectSchema = z.record(z.string(), z.unknown()); + +/** Parse the client format and reject malformed root or server-table values. */ +export const parseClientConfiguration = ( + text: string, + format: SetupClient["format"], +): ClientConfigurationDocument => { + const document = objectSchema.parse( + format === "toml" ? parseToml(text) : JSON.parse(text), + ); + const serversKey = format === "toml" ? "mcp_servers" : "mcpServers"; + const value = document[serversKey]; + const servers = value === undefined ? {} : objectSchema.parse(value); + return { document, servers, serversKey }; +}; + +/** Serialize a validated client document using the selected format. */ +export const serializeClientConfiguration = ( + document: Record, + format: SetupClient["format"], +): string => + format === "toml" + ? stringifyToml(document) + : `${JSON.stringify(document, null, 2)}\n`; diff --git a/src/application/ClientRegistrationStatus.ts b/src/application/ClientRegistrationStatus.ts index af23439416..f3e6288721 100644 --- a/src/application/ClientRegistrationStatus.ts +++ b/src/application/ClientRegistrationStatus.ts @@ -1,7 +1,7 @@ +import { parseClientConfiguration } from "./ClientConfigurationDocument.js"; import { access, readFile } from "node:fs/promises"; import { resolve } from "node:path"; -import { parse as parseToml } from "smol-toml"; import { z } from "zod"; import { PRODUCT_IDENTITY } from "../identity.js"; @@ -39,7 +39,6 @@ export type UnhealthyClientRegistrationStatus = Exclude< { readonly state: "aligned" } >; -const objectSchema = z.record(z.string(), z.unknown()); const registrationSchema = z .object({ command: z.string().min(1), @@ -59,12 +58,7 @@ export const readClientRegistrationStatuses = async ( continue; try { const content = await readFile(client.configPath, "utf8"); - const document = objectSchema.parse( - client.format === "toml" ? parseToml(content) : JSON.parse(content), - ); - const servers = objectSchema.parse( - document[client.format === "toml" ? "mcp_servers" : "mcpServers"] ?? {}, - ); + const { servers } = parseClientConfiguration(content, client.format); const raw = servers[PRODUCT_IDENTITY.mcpServerKey]; if (raw === undefined) { statuses.push( diff --git a/src/application/DeferredFileAuthorization.ts b/src/application/DeferredFileAuthorization.ts index 1d428ae916..1f0e3fde06 100644 --- a/src/application/DeferredFileAuthorization.ts +++ b/src/application/DeferredFileAuthorization.ts @@ -1,8 +1,5 @@ -import { - AnalysisProtocolError, - PermissionRequiredError, - type AnalysisError, -} from "../domain/errors.js"; +import { projectPermissionFailure } from "./PermissionFailure.js"; +import { type AnalysisError } from "../domain/errors.js"; import type { PermissionCapability } from "../domain/permissionPolicy.js"; import { err, ok, type Result } from "../domain/result.js"; import { @@ -36,13 +33,7 @@ export const authorizeRootPermission = async ( ); return authorized.ok ? ok(null) - : err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + : err(projectPermissionFailure(authorized.error)); }; export interface DeferredFileWriteAuthorization { @@ -77,13 +68,7 @@ export const authorizeFileReadWithDeferredWrite = async ( !(read.error instanceof PermissionPathError) || read.error.reason !== "not_found" ) - return err( - read.error instanceof PermissionRequiredError - ? read.error - : new AnalysisProtocolError(read.error.message, { - cause: read.error, - }), - ); + return err(projectPermissionFailure(read.error)); writeAuthorization = authorizeRootPermission(authority, { capability: input.writeCapability, roots: [input.path], diff --git a/src/application/DirectAnalysis.ts b/src/application/DirectAnalysis.ts index 23e847b8f0..a0ee911e82 100644 --- a/src/application/DirectAnalysis.ts +++ b/src/application/DirectAnalysis.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import { parseConfig, type AppConfig } from "../config.js"; import type { JsonValue } from "../domain/jsonValue.js"; import { EnhancedTools } from "./EnhancedTools.js"; @@ -10,8 +11,6 @@ import type { ArtifactToolName } from "../contracts/artifactToolContracts.js"; import type { ManagedToolName } from "../contracts/managedToolContracts.js"; import { EvidenceIntegrityError, - AnalysisProtocolError, - PermissionRequiredError, projectAnalysisError, type AnalysisError, } from "../domain/errors.js"; @@ -20,7 +19,7 @@ import { readAnalysisSnapshot, writeAnalysisSnapshot, } from "./AnalysisSnapshotFiles.js"; -import { parseBinaryTarget } from "../domain/binaryTarget.js"; +import { parseBinaryTarget } from "./BinaryTargetResolver.js"; import type { BinaryTarget } from "../domain/binaryTarget.js"; import { snapshotEvidenceForQuery, @@ -136,14 +135,7 @@ const authorizeAnalysis = async ( }, request.access, ); - if (!result.ok) - return err( - result.error instanceof PermissionRequiredError - ? result.error - : new AnalysisProtocolError(result.error.message, { - cause: result.error, - }), - ); + if (!result.ok) return err(projectPermissionFailure(result.error)); } if ( ["inventory_artifact", "inspect_artifact"].includes(tool) && @@ -161,14 +153,7 @@ const authorizeAnalysis = async ( }, "read", ); - if (!result.ok) - return err( - result.error instanceof PermissionRequiredError - ? result.error - : new AnalysisProtocolError(result.error.message, { - cause: result.error, - }), - ); + if (!result.ok) return err(projectPermissionFailure(result.error)); } return ok(null); }; diff --git a/src/application/Doctor.ts b/src/application/Doctor.ts index 71878e6b39..d6d3970ffe 100644 --- a/src/application/Doctor.ts +++ b/src/application/Doctor.ts @@ -5,7 +5,7 @@ import { delimiter, join } from "node:path"; import { execFile } from "node:child_process"; import { promisify } from "node:util"; -import { parseBinaryTarget } from "../domain/binaryTarget.js"; +import { parseBinaryTarget } from "./BinaryTargetResolver.js"; import type { JsonValue } from "../domain/jsonValue.js"; import { probeHomebrew } from "./homebrew.js"; import { @@ -90,7 +90,6 @@ export interface DoctorHost { manualHopperPaths(): Promise; providerInspections?(): Promise; installationPaths?(): Promise; - installedSkillVersion?(): Promise; installedSkillIdentity?(): Promise; clientRegistrations?(): Promise; javascriptReplayCheck?(): Promise; @@ -208,7 +207,7 @@ const collectDoctorIdentity = async ( readonly value: DoctorIdentity; }> => { const installationPaths = (await host.installationPaths?.()) ?? []; - const installedSkillIdentity = await readInstalledSkillIdentity(host); + const installedSkillIdentity = await host.installedSkillIdentity?.(); const skillAligned = skillIdentityAligned(installedSkillIdentity); const registrations = (await host.clientRegistrations?.()) ?? []; return { @@ -255,17 +254,6 @@ const collectDoctorIdentity = async ( }; }; -const readInstalledSkillIdentity = async ( - host: DoctorHost, -): Promise => { - const observed = await host.installedSkillIdentity?.(); - if (observed !== undefined) return observed; - const legacyVersion = await host.installedSkillVersion?.(); - return legacyVersion === undefined - ? undefined - : { version: legacyVersion, toolCount: null, catalogDigest: null }; -}; - const skillIdentityAligned = ( identity: InstalledSkillIdentity | undefined, ): boolean => @@ -383,7 +371,6 @@ export const systemDoctorHost = ( return []; } }, - installedSkillVersion, installedSkillIdentity, clientRegistrations: () => readClientRegistrationStatuses(homedir()), }); @@ -437,16 +424,6 @@ const readInstalledSkill = (): Promise => "utf8", ); -const installedSkillVersion = async (): Promise => { - try { - return /^\s{2}version:\s*"([^"]+)"\s*$/mu.exec( - await readInstalledSkill(), - )?.[1]; - } catch { - return undefined; - } -}; - const installedSkillIdentity = async (): Promise< InstalledSkillIdentity | undefined > => { diff --git a/src/application/ElectronActiveObservationService.ts b/src/application/ElectronActiveObservationService.ts index c9a88c0002..5239622d9f 100644 --- a/src/application/ElectronActiveObservationService.ts +++ b/src/application/ElectronActiveObservationService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import { realpath } from "node:fs/promises"; import type { ExecutionOptions } from "./AnalysisProvider.js"; @@ -7,8 +8,6 @@ import { digestJson } from "./JavaScriptReplayPlanning.js"; import { AnalysisCapabilityUnavailableError, AnalysisInputError, - AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import type { Evidence } from "../domain/evidence.js"; @@ -90,14 +89,7 @@ const authorize = async ( }, "write", ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return canonical; }; diff --git a/src/application/ElectronObservationService.ts b/src/application/ElectronObservationService.ts index 6b007cb0e6..5a315970ca 100644 --- a/src/application/ElectronObservationService.ts +++ b/src/application/ElectronObservationService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import type { ExecutionOptions } from "./AnalysisProvider.js"; import type { ElectronObservationPort } from "./ElectronObservationPort.js"; import type { PermissionAuthority } from "./PermissionAuthority.js"; @@ -8,8 +9,6 @@ import type { } from "../domain/electronObservation.js"; import { AnalysisCapabilityUnavailableError, - AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import { err, ok, type Result } from "../domain/result.js"; @@ -96,14 +95,7 @@ const prepare = async ( }, "read", ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return provider === undefined ? err( new AnalysisCapabilityUnavailableError( diff --git a/src/application/FilesystemSnapshot.ts b/src/application/FilesystemSnapshot.ts index 6cdd369870..1cfadf3703 100644 --- a/src/application/FilesystemSnapshot.ts +++ b/src/application/FilesystemSnapshot.ts @@ -1,3 +1,4 @@ +import { isPathWithinRoot } from "../domain/localPath.js"; import { createHash } from "node:crypto"; import { constants as fsConstants } from "node:fs"; import { lstat, open, readdir, readlink } from "node:fs/promises"; @@ -10,10 +11,6 @@ export interface SnapshotResult { readonly truncated: boolean; } -const isWithin = (candidate: string, root: string): boolean => - candidate === root || - candidate.startsWith(`${root.endsWith("/") ? root.slice(0, -1) : root}/`); - const hasSameIdentity = ( before: Stats, after: Stats, @@ -101,7 +98,7 @@ export const snapshotRoots = async ( truncated = true; return; } - const safeTarget = isWithin(target, root) + const safeTarget = isPathWithinRoot(root, target) ? relative(root, target) || "." : ""; if (safeTarget === "") truncated = true; diff --git a/src/application/InvestigationWorkspaceStore.ts b/src/application/InvestigationWorkspaceStore.ts index 8afe192430..fe2534def3 100644 --- a/src/application/InvestigationWorkspaceStore.ts +++ b/src/application/InvestigationWorkspaceStore.ts @@ -1,13 +1,12 @@ import { - lstat, - open, - readFile, - realpath, - unlink, - type FileHandle, -} from "node:fs/promises"; -import { basename, dirname, isAbsolute, relative, resolve } from "node:path"; + createStoreFileLock, + removeStaleStoreFileLock, + type StoreFileLock, +} from "./StoreFileLock.js"; +import { lstat, readFile, realpath } from "node:fs/promises"; +import { basename, dirname, resolve } from "node:path"; +import { isPathWithinRoot } from "../domain/localPath.js"; import writeFileAtomic from "write-file-atomic"; import type { EvidenceFilePolicy } from "../domain/evidenceBundle.js"; @@ -19,6 +18,7 @@ import { type InvestigationWorkspace, } from "../domain/investigationWorkspace.js"; import { err, ok, type Result } from "../domain/result.js"; +import { canonicalizeConfiguredRoots } from "./ConfiguredRoots.js"; type WorkspaceResult = Result; @@ -108,7 +108,7 @@ export const writeRevisionedWorkspace = async ( const bytes = Buffer.byteLength(encoded, "utf8"); if (bytes > policy.maxBytes) return err(new InvestigationWorkspaceError("update", "too-large")); - let lock: { readonly path: string; readonly handle: FileHandle } | undefined; + let lock: StoreFileLock | undefined; try { const destination = await resolveDestination(path, policy.roots); if (destination === null) @@ -133,7 +133,7 @@ export const writeRevisionedWorkspace = async ( } catch (cause: unknown) { return err(new InvestigationWorkspaceError("update", "io", { cause })); } finally { - if (lock !== undefined) await releaseLock(lock); + if (lock !== undefined) await lock.release(); } }; @@ -144,14 +144,10 @@ const resolveDestination = async ( const requested = resolve(path); const canonicalParent = await realpath(dirname(requested)); const destination = resolve(canonicalParent, basename(requested)); - for (const configuredRoot of roots) { - const root = await realpath(resolve(configuredRoot)); - const relation = relative(root, destination); - if ( - relation === "" || - (!relation.startsWith("..") && !isAbsolute(relation)) - ) - return destination; + for (const root of await canonicalizeConfiguredRoots( + roots.map((configuredRoot) => resolve(configuredRoot)), + )) { + if (isPathWithinRoot(root, destination)) return destination; } return null; }; @@ -192,16 +188,14 @@ const readWorkspaceFile = async ( const acquireLock = async ( destination: string, -): Promise< - WorkspaceResult<{ readonly path: string; readonly handle: FileHandle }> -> => { +): Promise> => { const path = `${destination}.lock`; try { - return ok(await createLock(path)); + return ok(await createStoreFileLock(path)); } catch (cause: unknown) { - if (isAlreadyExists(cause) && (await removeStaleLock(path))) { + if (isAlreadyExists(cause) && (await removeStaleStoreFileLock(path))) { try { - return ok(await createLock(path)); + return ok(await createStoreFileLock(path)); } catch (retryCause: unknown) { return err( new InvestigationWorkspaceError( @@ -222,54 +216,6 @@ const acquireLock = async ( } }; -const createLock = async ( - path: string, -): Promise<{ readonly path: string; readonly handle: FileHandle }> => { - const handle = await open(path, "wx", 0o600); - try { - await handle.writeFile(`${String(process.pid)}\n`, "utf8"); - await handle.sync(); - return { path, handle }; - } catch (cause: unknown) { - await handle.close().catch(() => undefined); - await unlink(path).catch(() => undefined); - throw cause; - } -}; - -const removeStaleLock = async (path: string): Promise => { - try { - const stats = await lstat(path); - if (!stats.isFile() || stats.isSymbolicLink() || stats.size > 32) - return false; - const encoded = (await readFile(path, "utf8")).trim(); - if (!/^[1-9][0-9]{0,9}$/u.test(encoded)) return false; - const pid = Number(encoded); - if (processIsAlive(pid)) return false; - await unlink(path); - return true; - } catch { - return false; - } -}; - -const processIsAlive = (pid: number): boolean => { - try { - process.kill(pid, 0); - return true; - } catch (cause: unknown) { - return errorCode(cause) !== "ESRCH"; - } -}; - -const releaseLock = async (lock: { - readonly path: string; - readonly handle: FileHandle; -}): Promise => { - await lock.handle.close().catch(() => undefined); - await unlink(lock.path).catch(() => undefined); -}; - function validateNextRevision( current: InvestigationWorkspace | null, next: InvestigationWorkspace, diff --git a/src/application/JavaScriptReplayPlanning.ts b/src/application/JavaScriptReplayPlanning.ts index 5d4c2cf65d..336e3851f0 100644 --- a/src/application/JavaScriptReplayPlanning.ts +++ b/src/application/JavaScriptReplayPlanning.ts @@ -207,6 +207,8 @@ const prepareSide = async ( if (remaining <= 0) throw new RangeError("Replay module bytes exceed the aggregate limit"); const source = await host.readSource(module.path, remaining); + if (source.bytes.byteLength > remaining) + throw new RangeError("Replay module bytes exceed the aggregate limit"); totalBytes += source.bytes.byteLength; loaded.push({ module, source }); } diff --git a/src/application/JavaScriptReplayService.ts b/src/application/JavaScriptReplayService.ts index a42f4e4e2e..5c7644250c 100644 --- a/src/application/JavaScriptReplayService.ts +++ b/src/application/JavaScriptReplayService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import { z } from "zod"; import writeFileAtomic from "write-file-atomic"; @@ -14,7 +15,6 @@ import { AnalysisCancelledError, AnalysisInputError, AnalysisProtocolError, - PermissionRequiredError, ReplayPlanStaleError, type AnalysisError, } from "../domain/errors.js"; @@ -170,14 +170,7 @@ const authorizeReplay = async ( input.mode === "plan" ? await dependencies.authority.explain(request, "read") : await dependencies.authority.authorize(request, "read"); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return ok(policy); }; @@ -235,13 +228,7 @@ const authorizeReproducerExport = async ( "write", ); if (!exportAuthorized.ok) - return err( - exportAuthorized.error instanceof PermissionRequiredError - ? exportAuthorized.error - : new AnalysisProtocolError(exportAuthorized.error.message, { - cause: exportAuthorized.error, - }), - ); + return err(projectPermissionFailure(exportAuthorized.error)); const canonicalExportPath = exportAuthorized.value.request.roots[0]; if (canonicalExportPath !== input.reproducer_export.path) return err( diff --git a/src/application/JavaScriptRuntimeObservationService.ts b/src/application/JavaScriptRuntimeObservationService.ts index 3deda91555..9c2a9d50f4 100644 --- a/src/application/JavaScriptRuntimeObservationService.ts +++ b/src/application/JavaScriptRuntimeObservationService.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import type { ExecutionOptions } from "./AnalysisProvider.js"; import type { JavaScriptRuntimeObservationPort } from "./JavaScriptRuntimeObservationPort.js"; import type { PermissionAuthority } from "./PermissionAuthority.js"; @@ -5,8 +6,6 @@ import { createJavaScriptRuntimeObservationEvidence } from "./JavaScriptRuntimeO import type { Evidence } from "../domain/evidence.js"; import { AnalysisCapabilityUnavailableError, - AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import type { @@ -96,14 +95,7 @@ const prepare = async ( }, "read", ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); return provider === undefined ? err( new AnalysisCapabilityUnavailableError( diff --git a/src/application/ManagedMemberComparisonService.ts b/src/application/ManagedMemberComparisonService.ts index 103435acd9..8956745ce5 100644 --- a/src/application/ManagedMemberComparisonService.ts +++ b/src/application/ManagedMemberComparisonService.ts @@ -15,11 +15,16 @@ import { } from "../domain/errors.js"; import { createEvidence, type Evidence } from "../domain/evidence.js"; import { jsonValueSchema } from "../domain/jsonValue.js"; -import { parseBinaryTarget } from "../domain/binaryTarget.js"; +import { parseBinaryTarget } from "./BinaryTargetResolver.js"; import { err, ok, type Result } from "../domain/result.js"; -import { inspectManagedMembersBytes } from "../dotnet/ManagedMemberInspector.js"; -import { MANAGED_STATIC_PROVIDER } from "./InvestigationProviders.js"; -import { MANAGED_WORKFLOW_PROVIDER } from "./InvestigationProviders.js"; +import { + type ManagedMemberInspectionLimits, + inspectManagedMembersBytes, +} from "../dotnet/ManagedMemberInspector.js"; +import { + MANAGED_STATIC_PROVIDER, + MANAGED_WORKFLOW_PROVIDER, +} from "./InvestigationProviders.js"; /** Compare managed members from input parsed by a trusted adapter. */ export const compareManagedMembersEvidenceValidated = ( @@ -140,24 +145,10 @@ export const compareManagedMemberPaths = async (input: { } }; -export interface ManagedMemberPathInspectionLimits { +/** Byte-inspection limits plus the file admission bound for path comparisons. */ +export interface ManagedMemberPathInspectionLimits + extends ManagedMemberInspectionLimits { readonly maxFileBytes: number; - readonly typeOffset: number; - readonly typeLimit: number; - readonly methodOffset: number; - readonly methodLimit: number; - readonly fieldOffset: number; - readonly fieldLimit: number; - readonly memberRefOffset: number; - readonly memberRefLimit: number; - readonly edgeOffset: number; - readonly edgeLimit: number; - readonly instructionAnchorLimit: number; - readonly maxMetadataBytes: number; - readonly maxTableRows: number; - readonly maxHeapItemBytes: number; - readonly maxMethodBodyBytes: number; - readonly maxMethodInstructions: number; } const createManagedMemberComparisonEvidence = ( diff --git a/src/application/ManagedRuntimeCorrelationService.ts b/src/application/ManagedRuntimeCorrelationService.ts index 45cd1f8568..4bb2f7639b 100644 --- a/src/application/ManagedRuntimeCorrelationService.ts +++ b/src/application/ManagedRuntimeCorrelationService.ts @@ -1,8 +1,8 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import { AnalysisCapabilityUnavailableError, AnalysisInputError, AnalysisProtocolError, - PermissionRequiredError, type AnalysisError, } from "../domain/errors.js"; import { @@ -99,14 +99,7 @@ export const planManagedRuntimeCorrelationEvidenceValidated = async ( "read", { remediation: "restart" }, ); - if (!authorized.ok) - return err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + if (!authorized.ok) return err(projectPermissionFailure(authorized.error)); try { const result = planManagedRuntimeCorrelation( input, diff --git a/src/application/PermissionFailure.ts b/src/application/PermissionFailure.ts new file mode 100644 index 0000000000..7576151894 --- /dev/null +++ b/src/application/PermissionFailure.ts @@ -0,0 +1,13 @@ +import { + AnalysisProtocolError, + PermissionRequiredError, +} from "../domain/errors.js"; +import type { PermissionPathError } from "./PermissionAuthority.js"; + +/** Preserve permission denials and project failed path resolution for callers. */ +export const projectPermissionFailure = ( + error: PermissionRequiredError | PermissionPathError, +): PermissionRequiredError | AnalysisProtocolError => + error instanceof PermissionRequiredError + ? error + : new AnalysisProtocolError(error.message, { cause: error }); diff --git a/src/application/ProcessCaptureAuthority.ts b/src/application/ProcessCaptureAuthority.ts index 34c4e58310..4c1bd76da0 100644 --- a/src/application/ProcessCaptureAuthority.ts +++ b/src/application/ProcessCaptureAuthority.ts @@ -1,4 +1,5 @@ import { realpath } from "node:fs/promises"; +import { isPathWithinRoot } from "../domain/localPath.js"; import type { EnabledProcessExecutionPolicy, @@ -10,10 +11,6 @@ import { } from "./ProcessCaptureError.js"; import { canonicalizeConfiguredRoots } from "./ConfiguredRoots.js"; -const isWithin = (candidate: string, root: string): boolean => - candidate === root || - candidate.startsWith(`${root.endsWith("/") ? root.slice(0, -1) : root}/`); - export const assertRealPathAuthority = async ( scenario: ProcessScenario, policy: EnabledProcessExecutionPolicy, @@ -22,28 +19,28 @@ export const assertRealPathAuthority = async ( const executableRoots = await canonicalizeConfiguredRoots( policy.executableRoots, ); - if (!executableRoots.some((root) => isWithin(executable, root))) + if (!executableRoots.some((root) => isPathWithinRoot(root, executable))) throw new ProcessCaptureError( "resolved executable is outside approved roots", ); const workingDirectory = await realpath(scenario.working_directory); const workingRoots = await canonicalizeConfiguredRoots(policy.workingRoots); - if (!workingRoots.some((root) => isWithin(workingDirectory, root))) + if (!workingRoots.some((root) => isPathWithinRoot(root, workingDirectory))) throw new ProcessCaptureError( "resolved working directory is outside approved roots", ); for (const root of scenario.filesystem_roots) { const resolvedRoot = await realpath(root); - if (!workingRoots.some((approved) => isWithin(resolvedRoot, approved))) + if ( + !workingRoots.some((approved) => isPathWithinRoot(approved, resolvedRoot)) + ) throw new ProcessCaptureError( "resolved filesystem root is outside approved roots", ); } }; -/** Expected refusal or runtime failure from the process capture adapter. */ +/** Reject cancellation before a process capture operation begins. */ export const assertNotCancelled = (signal: AbortSignal | undefined): void => { if (signal?.aborted === true) throw processCaptureCancelled(); }; - -/** Runtime availability of the native PTY adapter on this host. */ diff --git a/src/application/ProcessCli.ts b/src/application/ProcessCli.ts index f21771b22c..be1d390c99 100644 --- a/src/application/ProcessCli.ts +++ b/src/application/ProcessCli.ts @@ -1,11 +1,10 @@ +import { projectPermissionFailure } from "./PermissionFailure.js"; import { readFile } from "node:fs/promises"; import { parseConfig } from "../config.js"; import { AnalysisError, AnalysisInputError, - AnalysisProtocolError, - PermissionRequiredError, projectAnalysisError, } from "../domain/errors.js"; import { createEvidence, parseEvidence } from "../domain/evidence.js"; @@ -57,13 +56,7 @@ export const captureProcessScenarioFile = async (path: string) => { "read", ); if (!authorized.ok) - return cliAnalysisError( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ); + return cliAnalysisError(projectPermissionFailure(authorized.error)); const captured = await captureProcessScenario( scenario, config.value.processExecutionPolicy, diff --git a/src/application/ProjectPermissionStore.ts b/src/application/ProjectPermissionStore.ts index f380ab0d0d..8bd5b2d31a 100644 --- a/src/application/ProjectPermissionStore.ts +++ b/src/application/ProjectPermissionStore.ts @@ -1,12 +1,15 @@ +import { + createStoreFileLock, + removeStaleStoreFileLock, + type StoreFileLock, +} from "./StoreFileLock.js"; import { createHash } from "node:crypto"; import { constants } from "node:fs"; import { lstat, mkdir, open, - readFile, realpath, - unlink, type FileHandle, } from "node:fs/promises"; import { dirname } from "node:path"; @@ -15,30 +18,15 @@ import { setTimeout as delay } from "node:timers/promises"; import writeFileAtomic from "write-file-atomic"; import { z } from "zod"; -import type { PermissionGrant } from "../domain/permissionPolicy.js"; +import { + PERMISSION_CAPABILITIES, + type PermissionGrant, +} from "../domain/permissionPolicy.js"; import { err, ok, type Result } from "../domain/result.js"; const grantSchema = z.object({ grant_id: z.string().min(1), - capability: z.enum([ - "process_capture", - "browser_observe", - "browser_automate", - "electron_observe", - "electron_automate", - "evidence_read", - "evidence_write", - "investigation_input", - "investigation_workspace_read", - "investigation_workspace_write", - "snapshot_read", - "snapshot_write", - "artifact_extract", - "native_mount", - "reference_read", - "javascript_replay", - "managed_runtime", - ]), + capability: z.enum(PERMISSION_CAPABILITIES), roots: z.array(z.string()), executables: z.array(z.string()), environment_names: z.array(z.string()), @@ -156,27 +144,28 @@ export const writeProjectPermissionStore = async ( ); if (process.getuid === undefined) return err(new ProjectPermissionStoreError("not_owner_only")); - try { - await mkdir(dirname(path), { recursive: true, mode: 0o700 }); - await writeFileAtomic( - path, - `${JSON.stringify(candidate.data, null, 2)}\n`, - { - encoding: "utf8", - mode: 0o600, - }, - ); - const verified = await readProjectPermissionStore(path, projectRoot); - if (!verified.ok) return verified; - if ( - verified.value === null || - JSON.stringify(verified.value) !== JSON.stringify(candidate.data) - ) - return err(new ProjectPermissionStoreError("invalid")); - return ok(candidate.data); - } catch (cause: unknown) { - return err(new ProjectPermissionStoreError("io", { cause })); - } + return withPermissionStoreLock(path, () => + writePreparedPermissionStore(path, projectRoot, candidate.data), + ); +}; + +const writePreparedPermissionStore = async ( + path: string, + projectRoot: string, + candidate: ProjectPermissionStore, +): Promise> => { + await writeFileAtomic(path, `${JSON.stringify(candidate, null, 2)}\n`, { + encoding: "utf8", + mode: 0o600, + }); + const verified = await readProjectPermissionStore(path, projectRoot); + if (!verified.ok) return verified; + if ( + verified.value === null || + JSON.stringify(verified.value) !== JSON.stringify(candidate) + ) + return err(new ProjectPermissionStoreError("invalid")); + return ok(candidate); }; /** Revoke one grant while serializing the complete read-modify-write cycle. */ @@ -184,47 +173,51 @@ export const revokeProjectPermissionGrant = async ( path: string, projectRoot: string, grantId: string, -): Promise> => { - let lock: PermissionStoreLock | undefined; +): Promise> => + withPermissionStoreLock(path, async () => { + const current = await readProjectPermissionStore(path, projectRoot); + if (!current.ok) return current; + if (current.value === null) return ok(false); + const retained = current.value.grants.filter( + ({ grant_id }) => grant_id !== grantId, + ); + if (retained.length === current.value.grants.length) return ok(false); + const written = await writePreparedPermissionStore(path, projectRoot, { + ...current.value, + grants: retained, + }); + return written.ok ? ok(true) : written; + }); + +const withPermissionStoreLock = async ( + path: string, + action: () => Promise>, +): Promise> => { + let lock: StoreFileLock | undefined; try { await mkdir(dirname(path), { recursive: true, mode: 0o700 }); const acquired = await acquirePermissionStoreLock(path); if (!acquired.ok) return acquired; lock = acquired.value; - const current = await readProjectPermissionStore(path, projectRoot); - if (!current.ok) return current; - const grants = current.value?.grants ?? []; - const retained = grants.filter(({ grant_id }) => grant_id !== grantId); - if (retained.length === grants.length) return ok(false); - const written = await writeProjectPermissionStore( - path, - projectRoot, - retained, - ); - return written.ok ? ok(true) : written; + return await action(); } catch (cause: unknown) { return err(new ProjectPermissionStoreError("io", { cause })); } finally { - if (lock !== undefined) await releasePermissionStoreLock(lock); + if (lock !== undefined) await lock.release(); } }; -interface PermissionStoreLock { - readonly path: string; - readonly handle: FileHandle; -} - const acquirePermissionStoreLock = async ( destination: string, -): Promise> => { +): Promise> => { const path = `${destination}.lock`; for (let attempt = 0; attempt < 100; attempt += 1) { try { - return ok(await createPermissionStoreLock(path)); + return ok(await createStoreFileLock(path)); } catch (cause: unknown) { if (!isAlreadyExists(cause)) return err(new ProjectPermissionStoreError("io", { cause })); - if (await removeStalePermissionStoreLock(path)) continue; + if (await removeStaleStoreFileLock(path)) continue; if (attempt === 99) return err(new ProjectPermissionStoreError("locked", { cause })); await delay(10); @@ -233,54 +226,6 @@ const acquirePermissionStoreLock = async ( return err(new ProjectPermissionStoreError("locked")); }; -const createPermissionStoreLock = async ( - path: string, -): Promise => { - const handle = await open(path, "wx", 0o600); - try { - await handle.writeFile(`${String(process.pid)}\n`, "utf8"); - await handle.sync(); - return { path, handle }; - } catch (cause: unknown) { - await handle.close().catch(() => undefined); - await unlink(path).catch(() => undefined); - throw cause; - } -}; - -const removeStalePermissionStoreLock = async ( - path: string, -): Promise => { - try { - const metadata = await lstat(path); - if (!metadata.isFile() || metadata.isSymbolicLink() || metadata.size > 32) - return false; - const encoded = (await readFile(path, "utf8")).trim(); - if (!/^[1-9][0-9]{0,9}$/u.test(encoded)) return false; - if (processIsAlive(Number(encoded))) return false; - await unlink(path); - return true; - } catch { - return false; - } -}; - -const processIsAlive = (pid: number): boolean => { - try { - process.kill(pid, 0); - return true; - } catch (cause: unknown) { - return errorCode(cause) !== "ESRCH"; - } -}; - -const releasePermissionStoreLock = async ( - lock: PermissionStoreLock, -): Promise => { - await lock.handle.close().catch(() => undefined); - await unlink(lock.path).catch(() => undefined); -}; - const isNotFound = (cause: unknown): boolean => errorCode(cause) === "ENOENT"; const openPrivateStore = async ( diff --git a/src/application/ReferenceSourceImport.ts b/src/application/ReferenceSourceImport.ts index b417bb1481..f7ba758bf8 100644 --- a/src/application/ReferenceSourceImport.ts +++ b/src/application/ReferenceSourceImport.ts @@ -1,3 +1,4 @@ +import { compareUnicodeCodePoints } from "../domain/unicodeCodePointOrder.js"; import { isSecretLikePath } from "../domain/referenceSourceClassification.js"; import { createHistoricalSourceGraph, @@ -20,20 +21,6 @@ export type { ReferenceSourceImportOptions, } from "./ReferenceSourceImportTypes.js"; -const compareCodePoints = (left: string, right: string): number => { - const leftPoints = [...left].map((value) => value.codePointAt(0) ?? 0); - const rightPoints = [...right].map((value) => value.codePointAt(0) ?? 0); - const length = Math.min(leftPoints.length, rightPoints.length); - for (let index = 0; index < length; index += 1) { - const difference = (leftPoints[index] ?? 0) - (rightPoints[index] ?? 0); - if (difference !== 0) return difference; - } - return leftPoints.length - rightPoints.length; -}; - -const byCodePoint = (left: string, right: string): number => - compareCodePoints(left, right); - const failure = ( code: ReferenceSourceImportError["code"], message: string, @@ -73,7 +60,7 @@ export const normalizeHistoricalSourceParseFailures = ( ): HistoricalSourceGraphInput["parse_failures"] => [...failures] .sort((left, right) => - byCodePoint( + compareUnicodeCodePoints( historicalSourceParseFailureKey(left), historicalSourceParseFailureKey(right), ), @@ -107,7 +94,7 @@ const deriveLanguages = ( : [], ), ), - ].sort(byCodePoint); + ].sort(compareUnicodeCodePoints); const deriveManifests = ( entries: HistoricalSourceGraphInput["entries"], @@ -118,7 +105,7 @@ const deriveManifests = ( ? [entry.path] : [], ) - .sort(byCodePoint); + .sort(compareUnicodeCodePoints); const deriveInventoryState = ( input: Pick< @@ -155,9 +142,9 @@ const sortAndLimit = ( maxExclusions: number, ): HistoricalSourceGraphInput["exclusions"] => { const sorted = [...exclusions].sort((left, right) => { - const byPath = byCodePoint(left.path, right.path); + const byPath = compareUnicodeCodePoints(left.path, right.path); if (byPath !== 0) return byPath; - return byCodePoint(left.reason, right.reason); + return compareUnicodeCodePoints(left.reason, right.reason); }); if (sorted.length <= maxExclusions) return sorted; return sorted.slice(0, maxExclusions); @@ -229,10 +216,10 @@ export const importReferenceSource = async ( const uniqueFailures = normalizeHistoricalSourceParseFailures(parseFailures); const sortedEntries = [...entries].sort((left, right) => - byCodePoint(left.path, right.path), + compareUnicodeCodePoints(left.path, right.path), ); const sortedExclusions = sortAndLimit(exclusions, limits.maxEntries); - const sortedLimitations = [...limitations].sort(byCodePoint); + const sortedLimitations = [...limitations].sort(compareUnicodeCodePoints); const input: HistoricalSourceGraphInput = { schema: "HistoricalSourceGraph/v1", @@ -247,7 +234,7 @@ export const importReferenceSource = async ( }), entries: sortedEntries, relationships: uniqueRelationships.sort((left, right) => - byCodePoint(relationshipKey(left), relationshipKey(right)), + compareUnicodeCodePoints(relationshipKey(left), relationshipKey(right)), ), parse_failures: uniqueFailures, exclusions: sortedExclusions, diff --git a/src/application/ReferenceSourceImportPolicy.ts b/src/application/ReferenceSourceImportPolicy.ts index ca7194420c..05bffbd0d9 100644 --- a/src/application/ReferenceSourceImportPolicy.ts +++ b/src/application/ReferenceSourceImportPolicy.ts @@ -5,7 +5,7 @@ import ignore from "ignore"; import { err, ok, type Result } from "../domain/result.js"; import type { ReferenceSourceLimits } from "../reference/ReferenceSourceReader.js"; -import { withinRoot } from "../reference/ReferenceSourceReaderPaths.js"; +import { isPathWithinRoot } from "../domain/localPath.js"; import { DEFAULT_REFERENCE_SOURCE_IGNORE_PATTERNS, DEFAULT_REFERENCE_SOURCE_LIMITS, @@ -71,7 +71,7 @@ const authorizeRoot = async ( approvedRoots.map((approvedRoot) => resolve(approvedRoot)), ); for (const canonicalApproved of canonicalApprovedRoots) { - if (withinRoot(canonicalApproved, canonicalRoot)) + if (isPathWithinRoot(canonicalApproved, canonicalRoot)) return ok(canonicalRoot); } return err( diff --git a/src/application/SetupClientConfiguration.ts b/src/application/SetupClientConfiguration.ts index 7ce955f2ab..35d27eb1c9 100644 --- a/src/application/SetupClientConfiguration.ts +++ b/src/application/SetupClientConfiguration.ts @@ -1,10 +1,13 @@ +import { + parseClientConfiguration, + serializeClientConfiguration, + type ClientConfigurationDocument, +} from "./ClientConfigurationDocument.js"; import { constants as fsConstants } from "node:fs"; import { copyFile, mkdir, readFile, rm, writeFile } from "node:fs/promises"; import { dirname } from "node:path"; -import canonicalize from "canonicalize"; -import { z } from "zod"; +import { isDeepStrictEqual } from "node:util"; import writeFileAtomic from "write-file-atomic"; -import { parse as parseToml, stringify as stringifyToml } from "smol-toml"; import { PRODUCT_IDENTITY } from "../identity.js"; import { MCP_STARTUP_POLICY } from "../mcpStartupPolicy.js"; @@ -24,44 +27,59 @@ const defaultCommand = (): readonly string[] => [ ]; /** Back up, atomically update, and semantically read back one JSON MCP configuration. */ -export const configureJsonClient = async ( +export const configureJsonClient = ( client: SetupClient, - environment: SetupProviderEnvironment | string = {}, + environment: SetupProviderEnvironment = {}, command: readonly string[] = defaultCommand(), +): Promise => + configureClientDocument(client, environment, command, "json"); + +/** Back up, atomically update, and semantically read back one TOML MCP configuration. */ +export const configureTomlClient = ( + client: SetupClient, + environment: SetupProviderEnvironment = {}, + command: readonly string[] = defaultCommand(), +): Promise => + configureClientDocument(client, environment, command, "toml"); + +const configureClientDocument = async ( + client: SetupClient, + environment: SetupProviderEnvironment, + command: readonly string[], + format: "json" | "toml", ): Promise => { const transactionPath = await resolveClientConfigTransactionPath( client.configPath, ); if (transactionPath === undefined) return { status: "failed", reason: "path" }; - let document: Record = {}; let original: string | undefined; try { original = await readFile(transactionPath, "utf8"); - document = parseObject(original); } catch (cause: unknown) { if (!isMissing(cause)) return { status: "failed", reason: "readback" }; } - let servers: Record; + let parsed: ClientConfigurationDocument; try { - servers = parseOptionalObject(document.mcpServers); + parsed = parseClientConfiguration( + original ?? (format === "toml" ? "" : "{}"), + format, + ); } catch { return { status: "failed", reason: "readback" }; } - const desired = clientConfigurationDesired( - client, - normalizeProviderEnvironment(environment), - command, - ); - if (sameConfiguration(servers[PRODUCT_IDENTITY.mcpServerKey], desired)) + const { document, servers, serversKey } = parsed; + const desired = clientConfigurationDesired(client, environment, command); + if (isDeepStrictEqual(servers[PRODUCT_IDENTITY.mcpServerKey], desired)) return { status: "unchanged" }; - let backupPath: string | undefined; - if (original !== undefined) { - backupPath = `${client.configPath}.rea.backup`; - if (!(await preserveConfigBackup(transactionPath, backupPath))) - return { status: "failed", reason: "backup" }; - } - document.mcpServers = { + const backupPath = + original === undefined ? undefined : `${client.configPath}.rea.backup`; + if ( + backupPath !== undefined && + !(await preserveConfigBackup(transactionPath, backupPath)) + ) + return { status: "failed", reason: "backup" }; + document[serversKey] = { ...servers, [PRODUCT_IDENTITY.mcpServerKey]: desired, }; @@ -69,7 +87,7 @@ export const configureJsonClient = async ( await mkdir(dirname(client.configPath), { recursive: true }); await writeFileAtomic( transactionPath, - `${JSON.stringify(document, null, 2)}\n`, + serializeClientConfiguration(document, format), { encoding: "utf8", mode: 0o600, @@ -79,10 +97,13 @@ export const configureJsonClient = async ( return { status: "failed", reason: "write" }; } try { - const readback = parseObject(await readFile(transactionPath, "utf8")); + const readback = parseClientConfiguration( + await readFile(transactionPath, "utf8"), + format, + ); if ( - !sameConfiguration( - parseOptionalObject(readback.mcpServers)[PRODUCT_IDENTITY.mcpServerKey], + !isDeepStrictEqual( + readback.servers[PRODUCT_IDENTITY.mcpServerKey], desired, ) ) { @@ -99,77 +120,6 @@ export const configureJsonClient = async ( }; }; -/** Back up, atomically update, and semantically read back Codex TOML configuration. */ -export const configureTomlClient = async ( - client: SetupClient, - environment: SetupProviderEnvironment | string = {}, - command: readonly string[] = defaultCommand(), -): Promise => { - const transactionPath = await resolveClientConfigTransactionPath( - client.configPath, - ); - if (transactionPath === undefined) - return { status: "failed", reason: "path" }; - let document: Record = {}; - let original: string | undefined; - try { - original = await readFile(transactionPath, "utf8"); - document = objectSchema.parse(parseToml(original)); - } catch (cause: unknown) { - if (!isMissing(cause)) return { status: "failed", reason: "readback" }; - } - let servers: Record; - try { - servers = parseOptionalObject(document.mcp_servers); - } catch { - return { status: "failed", reason: "readback" }; - } - const desired = clientConfigurationDesired( - client, - normalizeProviderEnvironment(environment), - command, - ); - if (sameConfiguration(servers[PRODUCT_IDENTITY.mcpServerKey], desired)) - return { status: "unchanged" }; - const backupPath = - original === undefined ? undefined : `${client.configPath}.rea.backup`; - if ( - backupPath !== undefined && - !(await preserveConfigBackup(transactionPath, backupPath)) - ) - return { status: "failed", reason: "backup" }; - document.mcp_servers = { - ...servers, - [PRODUCT_IDENTITY.mcpServerKey]: desired, - }; - try { - await mkdir(dirname(client.configPath), { recursive: true }); - await writeFileAtomic(transactionPath, stringifyToml(document), { - encoding: "utf8", - mode: 0o600, - }); - const readback = objectSchema.parse( - parseToml(await readFile(transactionPath, "utf8")), - ); - if ( - !sameConfiguration( - parseOptionalObject(readback.mcp_servers)[ - PRODUCT_IDENTITY.mcpServerKey - ], - desired, - ) - ) - throw new Error("TOML readback mismatch"); - } catch { - await restoreConfig(transactionPath, original); - return { status: "failed", reason: "readback" }; - } - return { - status: "configured", - ...(backupPath === undefined ? {} : { backupPath }), - }; -}; - /** Determine whether an existing client configuration matches the desired registration. */ export const clientConfigurationAligned = async ( client: SetupClient, @@ -183,14 +133,8 @@ export const clientConfigurationAligned = async ( ); try { const original = await readFile(client.configPath, "utf8"); - const document = - client.format === "toml" - ? objectSchema.parse(parseToml(original)) - : parseObject(original); - const servers = parseOptionalObject( - client.format === "toml" ? document.mcp_servers : document.mcpServers, - ); - return sameConfiguration(servers[PRODUCT_IDENTITY.mcpServerKey], desired); + const { servers } = parseClientConfiguration(original, client.format); + return isDeepStrictEqual(servers[PRODUCT_IDENTITY.mcpServerKey], desired); } catch { return false; } @@ -229,14 +173,8 @@ export const inspectClientConfiguration = async ( command, ); try { - const document = - client.format === "toml" - ? objectSchema.parse(parseToml(original)) - : parseObject(original); - const servers = parseOptionalObject( - client.format === "toml" ? document.mcp_servers : document.mcpServers, - ); - if (sameConfiguration(servers[PRODUCT_IDENTITY.mcpServerKey], desired)) + const { servers } = parseClientConfiguration(original, client.format); + if (isDeepStrictEqual(servers[PRODUCT_IDENTITY.mcpServerKey], desired)) return { status: "already_current" }; } catch { return { @@ -251,19 +189,8 @@ export const inspectClientConfiguration = async ( }; }; -const objectSchema = z.record(z.string(), z.unknown()); -const parseOptionalObject = (value: unknown): Record => - value === undefined ? {} : objectSchema.parse(value); -const parseObject = (text: string): Record => - objectSchema.parse(JSON.parse(text)); const isMissing = (cause: unknown): boolean => cause instanceof Error && "code" in cause && cause.code === "ENOENT"; -const sameConfiguration = (left: unknown, right: unknown): boolean => { - const encodedLeft = canonicalize(left); - const encodedRight = canonicalize(right); - return encodedLeft !== undefined && encodedLeft === encodedRight; -}; - const preserveConfigBackup = async ( source: string, destination: string, @@ -309,10 +236,3 @@ const clientConfigurationDesired = ( ...(Object.keys(environment).length === 0 ? {} : { env: environment }), }; }; - -const normalizeProviderEnvironment = ( - environment: SetupProviderEnvironment | string, -): SetupProviderEnvironment => - typeof environment === "string" - ? { HOPPER_LAUNCHER_PATH: environment } - : environment; diff --git a/src/application/StoreFileLock.ts b/src/application/StoreFileLock.ts new file mode 100644 index 0000000000..7d0330f31a --- /dev/null +++ b/src/application/StoreFileLock.ts @@ -0,0 +1,139 @@ +import { randomUUID } from "node:crypto"; +import { + lstat, + mkdtemp, + open, + readdir, + rename, + rm, + rmdir, + unlink, +} from "node:fs/promises"; +import { dirname, join } from "node:path"; + +import { readBoundedFileBytes } from "../process/BoundedFileBytes.js"; + +/** One acquired store transaction lock with cleanup bound to its unique owner. */ +export interface StoreFileLock { + readonly release: () => Promise; +} + +class StoreFileLockOccupied extends Error { + readonly code = "EEXIST"; + + constructor(cause?: unknown) { + super("Store transaction lock is occupied", { cause }); + } +} + +/** Atomically publish a populated directory so another owner cannot replace a live lock. */ +export const createStoreFileLock = async ( + path: string, +): Promise => { + if (await exists(path)) throw new StoreFileLockOccupied(); + const staged = await mkdtemp(join(dirname(path), ".rea-store-lock-")); + const owner = `owner-${randomUUID()}`; + try { + const handle = await open(join(staged, owner), "wx", 0o600); + try { + await handle.writeFile(`${String(process.pid)}\n`, "utf8"); + await handle.sync(); + } finally { + await handle.close(); + } + try { + // Rename cannot replace a nonempty directory: the owner entry is present before publication. + await rename(staged, path); + } catch (cause: unknown) { + if (await exists(path)) throw new StoreFileLockOccupied(cause); + throw cause; + } + return { + release: async () => { + await removeOwner(path, owner).catch(() => undefined); + }, + }; + } finally { + await rm(staged, { recursive: true, force: true }); + } +}; + +/** Recover a dead owner's directory lock or a legacy PID file; leave live and unknown owners intact. */ +export const removeStaleStoreFileLock = async ( + path: string, +): Promise => { + try { + const stats = await lstat(path); + if (stats.isFile()) { + if (!(await ownerIsDead(path))) return false; + await unlink(path); + return true; + } + if (!stats.isDirectory()) return false; + const entries = await readdir(path); + if (entries.length === 0) { + await rmdir(path); + return true; + } + const owner = entries[0]; + if ( + entries.length !== 1 || + owner === undefined || + !/^owner-[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$/u.test(owner) || + !(await ownerIsDead(join(path, owner))) + ) + return false; + await removeOwner(path, owner); + return true; + } catch { + return false; + } +}; + +const removeOwner = async (path: string, owner: string): Promise => { + // A successor has a different entry, so stale cleanup cannot make its directory empty. + await unlink(join(path, owner)); + await rmdir(path); +}; + +const ownerIsDead = async (path: string): Promise => { + const stats = await lstat(path); + if (!stats.isFile() || stats.size > 32) return false; + const handle = await open(path, "r"); + let bytes: Buffer | undefined; + try { + bytes = await readBoundedFileBytes(handle, 32); + } finally { + await handle.close(); + } + const encoded = bytes?.toString("utf8").trim(); + return ( + encoded !== undefined && + /^[1-9][0-9]{0,9}$/u.test(encoded) && + !processIsAlive(Number(encoded)) + ); +}; + +const exists = async (path: string): Promise => { + try { + await lstat(path); + return true; + } catch (cause: unknown) { + if (errorCode(cause) === "ENOENT") return false; + throw cause; + } +}; + +const processIsAlive = (pid: number): boolean => { + try { + process.kill(pid, 0); + return true; + } catch (cause: unknown) { + return errorCode(cause) !== "ESRCH"; + } +}; + +const errorCode = (cause: unknown): unknown => + typeof cause === "object" && cause !== null && "code" in cause + ? cause.code + : undefined; diff --git a/src/application/Uninstall.ts b/src/application/Uninstall.ts index 439bc628f9..1543c5e2a2 100644 --- a/src/application/Uninstall.ts +++ b/src/application/Uninstall.ts @@ -1,8 +1,11 @@ +import { + parseClientConfiguration, + serializeClientConfiguration, +} from "./ClientConfigurationDocument.js"; import { copyFile, lstat, readFile, realpath, rm } from "node:fs/promises"; import { homedir } from "node:os"; import { basename, isAbsolute, join } from "node:path"; -import { parse as parseToml, stringify as stringifyToml } from "smol-toml"; import writeFileAtomic from "write-file-atomic"; import { z } from "zod"; @@ -123,11 +126,11 @@ const removeClient = async ( let key: "mcp_servers" | "mcpServers"; let servers: Record; try { - document = objectSchema.parse( - client.format === "toml" ? parseToml(original) : JSON.parse(original), - ); - key = client.format === "toml" ? "mcp_servers" : "mcpServers"; - servers = optionalObject(document[key]); + ({ + document, + servers, + serversKey: key, + } = parseClientConfiguration(original, client.format)); } catch { return item( client.name, @@ -158,17 +161,15 @@ const removeClient = async ( ); } try { - const encoded = - client.format === "toml" - ? stringifyToml(document) - : `${JSON.stringify(document, null, 2)}\n`; - await fileSystem.writeText(transactionPath, encoded); - const readback = objectSchema.parse( - client.format === "toml" - ? parseToml(await fileSystem.readText(transactionPath)) - : JSON.parse(await fileSystem.readText(transactionPath)), + await fileSystem.writeText( + transactionPath, + serializeClientConfiguration(document, client.format), ); - if (PRODUCT_IDENTITY.mcpServerKey in optionalObject(readback[key])) + const readback = parseClientConfiguration( + await fileSystem.readText(transactionPath), + client.format, + ); + if (PRODUCT_IDENTITY.mcpServerKey in readback.servers) throw new Error("registration readback mismatch"); return item( client.name, @@ -278,9 +279,6 @@ const item = ( status: UninstallItem["status"], detail: string, ): UninstallItem => ({ name, status, detail }); -const objectSchema = z.record(z.string(), z.unknown()); -const optionalObject = (value: unknown): Record => - value === undefined ? {} : objectSchema.parse(value); const registrationSchema = z .object({ command: z.string(), args: z.array(z.string()) }) .passthrough(); diff --git a/src/artifacts/DirectoryArtifactReader.ts b/src/artifacts/DirectoryArtifactReader.ts index cae0991110..7ffcc8c04c 100644 --- a/src/artifacts/DirectoryArtifactReader.ts +++ b/src/artifacts/DirectoryArtifactReader.ts @@ -86,20 +86,24 @@ export class DirectoryArtifactReader implements ArtifactReader { entry.adapterKey, constants.O_RDONLY | constants.O_NOFOLLOW, ); - const observed = await handle.stat(); - if ( - !observed.isFile() || - entry.sourceIdentity === undefined || - observed.dev !== entry.sourceIdentity.device || - observed.ino !== entry.sourceIdentity.inode - ) { - await handle.close(); - throw new ArtifactReaderFailure( - "integrity", - `Directory entry changed before open: ${entry.path}`, - ); + try { + const observed = await handle.stat(); + if ( + !observed.isFile() || + entry.sourceIdentity === undefined || + observed.dev !== entry.sourceIdentity.device || + observed.ino !== entry.sourceIdentity.inode + ) { + throw new ArtifactReaderFailure( + "integrity", + `Directory entry changed before open: ${entry.path}`, + ); + } + return handle.createReadStream({ autoClose: true }); + } catch (cause: unknown) { + await handle.close().catch(() => undefined); + throw cause; } - return handle.createReadStream({ autoClose: true }); } close(): Promise { diff --git a/src/artifacts/SafeOutputTree.ts b/src/artifacts/SafeOutputTree.ts index db4e2a4574..279c353aff 100644 --- a/src/artifacts/SafeOutputTree.ts +++ b/src/artifacts/SafeOutputTree.ts @@ -1,6 +1,13 @@ import { createHash } from "node:crypto"; import { constants } from "node:fs"; -import { lstat, mkdir, open, realpath, rm } from "node:fs/promises"; +import { + lstat, + mkdir, + open, + realpath, + rm, + type FileHandle, +} from "node:fs/promises"; import { basename, dirname, isAbsolute, join, resolve } from "node:path"; import type { Readable } from "node:stream"; import { streamChunkToBuffer } from "./StreamBytes.js"; @@ -35,20 +42,14 @@ export class SafeOutputTree { readonly #registry = new ArtifactPathRegistry(); readonly #limits: ArtifactLimits; readonly #outputRoot: string; - readonly #stagingRoot: string; #totalBytes = 0; #published = false; #cleanup: SafeOutputCleanup = { status: "not-required", }; - private constructor( - outputRoot: string, - stagingRoot: string, - limits: ArtifactLimits, - ) { + private constructor(outputRoot: string, limits: ArtifactLimits) { this.#outputRoot = outputRoot; - this.#stagingRoot = stagingRoot; this.#limits = limits; } @@ -95,7 +96,7 @@ export class SafeOutputTree { } finally { await stagingHandle.close(); } - return new SafeOutputTree(canonicalOutput, canonicalOutput, limits); + return new SafeOutputTree(canonicalOutput, limits); } catch (cause: unknown) { await rm(canonicalOutput, { recursive: true, force: true }); throw cause; @@ -184,12 +185,13 @@ export class SafeOutputTree { dirname(this.#outputRoot), constants.O_RDONLY | constants.O_DIRECTORY, ); - const staging = await open( - this.#stagingRoot, - constants.O_RDONLY | constants.O_DIRECTORY, - ); + let output: FileHandle | undefined; try { - await staging.sync(); + output = await open( + this.#outputRoot, + constants.O_RDONLY | constants.O_DIRECTORY, + ); + await output.sync(); await parent.sync(); this.#published = true; } catch (cause: unknown) { @@ -199,20 +201,20 @@ export class SafeOutputTree { { cause }, ); } finally { - await Promise.allSettled([parent.close(), staging.close()]); + await Promise.allSettled([parent.close(), output?.close()]); } } /** Remove only this operation's unsealed tree and verify absence. */ async rollback(): Promise { if (this.#published) return structuredClone(this.#cleanup); - await rm(this.#stagingRoot, { recursive: true, force: true }); - const absent = await isAbsent(this.#stagingRoot); + await rm(this.#outputRoot, { recursive: true, force: true }); + const absent = await isAbsent(this.#outputRoot); this.#cleanup = absent ? { status: "complete", residualPaths: [] } : { status: "incomplete", - residualPaths: [basename(this.#stagingRoot)], + residualPaths: [basename(this.#outputRoot)], }; if (!absent) throw new ArtifactReaderFailure( @@ -227,7 +229,7 @@ export class SafeOutputTree { const fileName = parts.pop(); if (fileName === undefined) throw new ArtifactReaderFailure("path", "Invalid extraction path"); - let current = this.#stagingRoot; + let current = this.#outputRoot; for (const part of parts) { current = join(current, part); await mkdir(current, { mode: 0o700 }).catch((cause: unknown) => { diff --git a/src/browser/ElectronFileScope.ts b/src/browser/ElectronFileScope.ts index 42939ddbc9..9c80afd499 100644 --- a/src/browser/ElectronFileScope.ts +++ b/src/browser/ElectronFileScope.ts @@ -1,7 +1,8 @@ import { realpath } from "node:fs/promises"; -import { isAbsolute, relative } from "node:path"; +import { isAbsolute } from "node:path"; import { fileURLToPath } from "node:url"; +import { isPathWithinRoot } from "../domain/localPath.js"; /** Canonicalize operator roots before evaluating any Electron file target. */ export const canonicalElectronRoots = async ( roots: readonly string[], @@ -43,14 +44,7 @@ export const authorizedElectronFile = async ( } catch { return undefined; } - return roots.some((root) => withinRoot(root, canonical)) + return roots.some((root) => isPathWithinRoot(root, canonical)) ? canonical : undefined; }; - -const withinRoot = (root: string, path: string): boolean => { - const remainder = relative(root, path); - return ( - remainder === "" || (!remainder.startsWith("..") && !isAbsolute(remainder)) - ); -}; diff --git a/src/cliBrowserAdvancedCommands.ts b/src/cliBrowserAdvancedCommands.ts index 0d91318b64..d72b699066 100644 --- a/src/cliBrowserAdvancedCommands.ts +++ b/src/cliBrowserAdvancedCommands.ts @@ -1,20 +1,16 @@ import { Cli, z } from "incur"; +import { browserContext, browserCliError } from "./cliBrowserContext.js"; +import { browserScopeOptions } from "./cliObservationOptions.js"; import { captureWebScreenshot, compareWebCaptureEvidence, compareWebScreenshotEvidence, discoverWebMcpTools, } from "./application/BrowserObservationService.js"; -import { loadConfiguredPermissionAuthority } from "./application/PermissionConfiguration.js"; import { CdpBrowserProvider } from "./browser/CdpBrowserProvider.js"; import { logCliCommand } from "./cliLogging.js"; -import { parseConfig } from "./config.js"; -import { - AnalysisCapabilityUnavailableError, - AnalysisInputError, - projectAnalysisError, -} from "./domain/errors.js"; +import { AnalysisInputError } from "./domain/errors.js"; import { browserCaptureComparisonInputSchema } from "./domain/browserCaptureComparison.js"; import { discoverWebMcpToolsInputSchema } from "./domain/webMcpDiscovery.js"; import { @@ -25,16 +21,6 @@ import type { JsonValue } from "./domain/jsonValue.js"; import type { Logger } from "./logger.js"; import { CLI_COMMANDS } from "./cliCommandNames.js"; -const scopeOptions = { - allowedOrigins: z - .array(z.string().min(1)) - .optional() - .describe( - "Exact origins to observe; defaults to REA_BROWSER_ALLOWED_ORIGINS_JSON", - ), - approved: z.boolean().default(false).describe("Approve passive observation"), -}; - /** Register WebMCP, capture-diff, and screenshot CLI equivalents. */ export const registerAdvancedBrowserCommands = ( cli: ReturnType, @@ -57,7 +43,7 @@ const registerWebMcp = ( targetId: z.string().describe("Target ID from list-browser-targets"), }), options: z.object({ - ...scopeOptions, + ...browserScopeOptions, observationMs: z .number() .int() @@ -116,7 +102,7 @@ const registerWebMcp = ( context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -170,7 +156,7 @@ const registerCaptureDiff = ( new CdpBrowserProvider(), parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -186,7 +172,7 @@ const registerScreenshot = ( targetId: z.string().describe("Target ID from list-browser-targets"), }), options: z.object({ - ...scopeOptions, + ...browserScopeOptions, screenshotApproved: z .boolean() .default(false) @@ -218,7 +204,7 @@ const registerScreenshot = ( context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -262,37 +248,11 @@ const registerScreenshotDiff = ( new CdpBrowserProvider(), parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; -const browserContext = async (operation: string) => { - const config = parseConfig(process.env); - if (!config.ok) return { ok: false as const, error: cliError(config.error) }; - const policy = config.value.browserObservationPolicy; - if (policy.status === "disabled") - return { - ok: false as const, - error: cliError( - new AnalysisCapabilityUnavailableError( - "rea-cdp-browser", - operation, - "browser observation is disabled; configure exact endpoints and origins before enabling it", - ), - ), - }; - const authority = await loadConfiguredPermissionAuthority(config.value); - if (!authority.ok) - return { ok: false as const, error: cliError(authority.error) }; - return { - ok: true as const, - authority: authority.value, - provider: new CdpBrowserProvider(), - allowedBrowserOrigins: policy.allowedOrigins, - }; -}; - const parseJson = (value: string): unknown => { try { return JSON.parse(value); @@ -302,11 +262,4 @@ const parseJson = (value: string): unknown => { }; const inputError = (operation: string): JsonValue => - cliError(new AnalysisInputError(operation)); - -const cliError = ( - error: Parameters[0], -): JsonValue => ({ - error: "Browser observation failed", - ...projectAnalysisError(error), -}); + browserCliError(new AnalysisInputError(operation)); diff --git a/src/cliBrowserCommands.ts b/src/cliBrowserCommands.ts index 5015703865..32a33fedac 100644 --- a/src/cliBrowserCommands.ts +++ b/src/cliBrowserCommands.ts @@ -1,57 +1,28 @@ import { Cli, z } from "incur"; +import { browserContext, browserCliError } from "./cliBrowserContext.js"; import { analyzeWebBundle, inspectWebPage, listBrowserTargets, observeWebSession, } from "./application/BrowserObservationService.js"; -import { loadConfiguredPermissionAuthority } from "./application/PermissionConfiguration.js"; -import { CdpBrowserProvider } from "./browser/CdpBrowserProvider.js"; import { logCliCommand } from "./cliLogging.js"; -import { parseConfig } from "./config.js"; import { inspectWebPageInputSchema, listBrowserTargetsInputSchema, } from "./domain/browserObservation.js"; import { analyzeWebBundleInputSchema } from "./domain/webBundleAnalysis.js"; import { observeWebSessionInputSchema } from "./domain/browserSession.js"; -import { - AnalysisCapabilityUnavailableError, - AnalysisInputError, - projectAnalysisError, -} from "./domain/errors.js"; -import type { JsonValue } from "./domain/jsonValue.js"; +import { AnalysisInputError } from "./domain/errors.js"; import type { Logger } from "./logger.js"; import { CLI_COMMANDS } from "./cliCommandNames.js"; -import { browserPageInspectionOptions } from "./cliObservationOptions.js"; - -const browserScopeOptions = { - allowedOrigins: z - .array(z.string().min(1)) - .optional() - .describe( - "Exact origins to observe; defaults to REA_BROWSER_ALLOWED_ORIGINS_JSON", - ), - approved: z.boolean().default(false).describe("Approve passive observation"), -}; - -const boundedCount = ( - subject: string, - maximum: number, - fallback: number, - minimum = 1, -) => - z - .number() - .int() - .min(minimum) - .max(maximum) - .default(fallback) - .describe(`Maximum ${subject}`); - -const boundedBytes = (subject: string, maximum: number, fallback: number) => - boundedCount(`${subject} in bytes`, maximum, fallback); +import { + browserPageInspectionOptions, + browserScopeOptions, + boundedCount, + boundedBytes, +} from "./cliObservationOptions.js"; /** Register CLI equivalents of the passive browser MCP tools. */ export const registerBrowserCommands = ( @@ -96,13 +67,15 @@ const registerTargetList = ( limit: options.limit, }); if (!parsed.success) - return cliError(new AnalysisInputError("list_browser_targets")); + return browserCliError( + new AnalysisInputError("list_browser_targets"), + ); const result = await listBrowserTargets( context.provider, context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -167,13 +140,13 @@ const registerPageInspection = ( }, }); if (!parsed.success) - return cliError(new AnalysisInputError("inspect_web_page")); + return browserCliError(new AnalysisInputError("inspect_web_page")); const result = await inspectWebPage( context.provider, context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -256,13 +229,13 @@ const registerBundleAnalysis = ( }, }); if (!parsed.success) - return cliError(new AnalysisInputError("analyze_web_bundle")); + return browserCliError(new AnalysisInputError("analyze_web_bundle")); const result = await analyzeWebBundle( context.provider, context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; @@ -300,46 +273,13 @@ const registerObservationSession = ( max_timeline_events: options.maxTimelineEvents, }); if (!parsed.success) - return cliError(new AnalysisInputError("observe_web_session")); + return browserCliError(new AnalysisInputError("observe_web_session")); const result = await observeWebSession( context.provider, context.authority, parsed.data, ); - return result.ok ? result.value : cliError(result.error); + return result.ok ? result.value : browserCliError(result.error); }), }); }; - -const browserContext = async (operation: string) => { - const config = parseConfig(process.env); - if (!config.ok) return { ok: false as const, error: cliError(config.error) }; - const policy = config.value.browserObservationPolicy; - if (policy.status === "disabled") - return { - ok: false as const, - error: cliError( - new AnalysisCapabilityUnavailableError( - "rea-cdp-browser", - operation, - "browser observation is disabled; configure exact endpoints and origins before enabling it", - ), - ), - }; - const authority = await loadConfiguredPermissionAuthority(config.value); - if (!authority.ok) - return { ok: false as const, error: cliError(authority.error) }; - return { - ok: true as const, - authority: authority.value, - provider: new CdpBrowserProvider(), - allowedBrowserOrigins: policy.allowedOrigins, - }; -}; - -const cliError = ( - error: Parameters[0], -): JsonValue => ({ - error: "Browser observation failed", - ...projectAnalysisError(error), -}); diff --git a/src/cliBrowserContext.ts b/src/cliBrowserContext.ts new file mode 100644 index 0000000000..b45282dcd4 --- /dev/null +++ b/src/cliBrowserContext.ts @@ -0,0 +1,44 @@ +import { loadConfiguredPermissionAuthority } from "./application/PermissionConfiguration.js"; +import { CdpBrowserProvider } from "./browser/CdpBrowserProvider.js"; +import { parseConfig } from "./config.js"; +import { + AnalysisCapabilityUnavailableError, + projectAnalysisError, +} from "./domain/errors.js"; +import type { JsonValue } from "./domain/jsonValue.js"; + +/** Load the configured passive browser authority and provider for one CLI operation. */ +export const browserContext = async (operation: string) => { + const config = parseConfig(process.env); + if (!config.ok) + return { ok: false as const, error: browserCliError(config.error) }; + const policy = config.value.browserObservationPolicy; + if (policy.status === "disabled") + return { + ok: false as const, + error: browserCliError( + new AnalysisCapabilityUnavailableError( + "rea-cdp-browser", + operation, + "browser observation is disabled; configure exact endpoints and origins before enabling it", + ), + ), + }; + const authority = await loadConfiguredPermissionAuthority(config.value); + if (!authority.ok) + return { ok: false as const, error: browserCliError(authority.error) }; + return { + ok: true as const, + authority: authority.value, + provider: new CdpBrowserProvider(), + allowedBrowserOrigins: policy.allowedOrigins, + }; +}; + +/** Project a browser operation failure consistently across CLI command groups. */ +export const browserCliError = ( + error: Parameters[0], +): JsonValue => ({ + error: "Browser observation failed", + ...projectAnalysisError(error), +}); diff --git a/src/cliElectronCommands.ts b/src/cliElectronCommands.ts index fc1742753c..8df0a18214 100644 --- a/src/cliElectronCommands.ts +++ b/src/cliElectronCommands.ts @@ -27,18 +27,11 @@ import { CLI_COMMANDS } from "./cliCommandNames.js"; import { parseCliJsonInput } from "./cliJsonInput.js"; import { electronPageInspectionOptions, + electronScopeOptions, javascriptApplicationOptions, } from "./cliObservationOptions.js"; import { runCliJavaScriptApplicationAnalysis } from "./cli/javascriptApplicationAnalysis.js"; -const scopeOptions = { - allowedFileRoots: z - .array(z.string().min(1)) - .optional() - .describe("Filesystem roots; defaults to REA_ELECTRON_FILE_ROOTS_JSON"), - approved: z.boolean().default(false).describe("Approve passive observation"), -}; - /** Register CLI equivalents of the Electron MCP tools. */ export const registerElectronCommands = ( cli: ReturnType, @@ -137,7 +130,7 @@ const registerElectronTargetList = ( .describe("Configured loopback Electron CDP endpoint"), }), options: z.object({ - ...scopeOptions, + ...electronScopeOptions, offset: z .number() .int() diff --git a/src/cliJsonInput.ts b/src/cliJsonInput.ts index 7c9ee3663a..19e2a9516f 100644 --- a/src/cliJsonInput.ts +++ b/src/cliJsonInput.ts @@ -1,7 +1,8 @@ -import { readFile, stat } from "node:fs/promises"; +import { open, stat } from "node:fs/promises"; import { AnalysisInputError, projectAnalysisError } from "./domain/errors.js"; import type { JsonValue } from "./domain/jsonValue.js"; +import { readBoundedFileBytes } from "./process/BoundedFileBytes.js"; const MAX_JSON_INPUT_BYTES = 64 * 1_024 * 1_024; @@ -13,6 +14,8 @@ export const parseCliJsonInput = async ( | { readonly ok: true; readonly value: unknown } | { readonly ok: false; readonly error: JsonValue } > => { + if (Buffer.byteLength(value, "utf8") > MAX_JSON_INPUT_BYTES) + return jsonFileError(undefined, operation, "too-large"); const inline = parseJson(value); if (inline !== undefined) return { ok: true, value: inline }; if (["{", "["].includes(value.trimStart()[0] ?? "")) @@ -22,8 +25,14 @@ export const parseCliJsonInput = async ( if (!metadata.isFile()) return jsonFileError(value, operation, "not-file"); if (metadata.size > MAX_JSON_INPUT_BYTES) return jsonFileError(value, operation, "too-large"); - const bytes = await readFile(value); - if (bytes.byteLength > MAX_JSON_INPUT_BYTES) + const handle = await open(value, "r"); + let bytes: Buffer | undefined; + try { + bytes = await readBoundedFileBytes(handle, MAX_JSON_INPUT_BYTES); + } finally { + await handle.close(); + } + if (bytes === undefined) return jsonFileError(value, operation, "too-large"); const parsed = parseJson(bytes.toString("utf8")); return parsed === undefined @@ -52,7 +61,7 @@ const inputError = (operation: string): JsonValue => ({ }); const jsonFileError = ( - path: string, + path: string | undefined, operation: string, reason: "not-file" | "too-large" | "invalid-json" | "read-failed", ) => ({ @@ -68,7 +77,7 @@ const jsonFileError = ( : [], ), ), - input_path: path, + ...(path === undefined ? {} : { input_path: path }), input_reason: reason, maximum_input_bytes: MAX_JSON_INPUT_BYTES, }, diff --git a/src/cliObservationOptions.ts b/src/cliObservationOptions.ts index c8efa97a42..f45845ab07 100644 --- a/src/cliObservationOptions.ts +++ b/src/cliObservationOptions.ts @@ -1,6 +1,7 @@ import { z } from "incur"; -const boundedCount = ( +/** Bound a CLI observation count while preserving its subject-specific help. */ +export const boundedCount = ( subject: string, maximum: number, fallback: number, @@ -14,13 +15,18 @@ const boundedCount = ( .default(fallback) .describe(`Maximum ${subject}`); -const boundedBytes = (subject: string, maximum: number, fallback: number) => - boundedCount(`${subject} in bytes`, maximum, fallback); +/** Bound a CLI observation byte budget. */ +export const boundedBytes = ( + subject: string, + maximum: number, + fallback: number, +) => boundedCount(`${subject} in bytes`, maximum, fallback); const positiveCount = (subject: string, fallback: number) => z.number().int().min(1).default(fallback).describe(`Maximum ${subject}`); -const browserScopeOptions = { +/** Shared passive browser origin and approval options. */ +export const browserScopeOptions = { allowedOrigins: z .array(z.string().min(1)) .optional() @@ -146,7 +152,8 @@ export const browserPageInspectionOptions = z.object({ ), }); -const electronScopeOptions = { +/** Shared passive Electron root and approval options. */ +export const electronScopeOptions = { allowedFileRoots: z .array(z.string().min(1)) .optional() diff --git a/src/cliPolicyCommands.ts b/src/cliPolicyCommands.ts index 29df90f353..12be3f4b25 100644 --- a/src/cliPolicyCommands.ts +++ b/src/cliPolicyCommands.ts @@ -12,27 +12,14 @@ import { PermissionRequiredError, projectAnalysisError, } from "./domain/errors.js"; -import type { PermissionCapability } from "./domain/permissionPolicy.js"; +import { + PERMISSION_CAPABILITIES, + type PermissionCapability, +} from "./domain/permissionPolicy.js"; import type { Logger } from "./logger.js"; import { CLI_COMMANDS } from "./cliCommandNames.js"; -const capabilitySchema = z.enum([ - "process_capture", - "browser_observe", - "browser_automate", - "electron_observe", - "electron_automate", - "evidence_read", - "evidence_write", - "investigation_input", - "investigation_workspace_read", - "investigation_workspace_write", - "snapshot_read", - "snapshot_write", - "artifact_extract", - "native_mount", - "reference_read", -]); +const capabilitySchema = z.enum(PERMISSION_CAPABILITIES); type PolicyRevocationApproval = | { readonly approved: true } diff --git a/src/contracts/managedToolContracts.ts b/src/contracts/managedToolContracts.ts index 8dc648432a..f7abe636d3 100644 --- a/src/contracts/managedToolContracts.ts +++ b/src/contracts/managedToolContracts.ts @@ -5,6 +5,28 @@ import { managedOutputSchemas } from "./toolOutputSchemas.js"; import { toolContractMetadata } from "./toolEffects.js"; import { requireOutputSchema } from "./toolOutputSchemaPrimitives.js"; +const managedReadLimits = { + max_file_bytes: z + .number() + .int() + .min(4_096) + .max(1_073_741_824) + .default(268_435_456), + max_metadata_bytes: z + .number() + .int() + .min(256) + .max(268_435_456) + .default(67_108_864), + max_table_rows: z.number().int().min(1).max(1_000_000).default(100_000), + max_heap_item_bytes: z + .number() + .int() + .min(1) + .max(16_777_216) + .default(1_048_576), +}; + /** Exact caller boundary for execution-free PE/CLI triage and identity. */ export const managedArtifactInputSchema = z.object({ path: z @@ -20,25 +42,7 @@ export const managedArtifactInputSchema = z.object({ resource_limit: z.number().int().min(1).max(500).default(100), attribute_offset: z.number().int().min(0).default(0), attribute_limit: z.number().int().min(1).max(500).default(100), - max_file_bytes: z - .number() - .int() - .min(4_096) - .max(1_073_741_824) - .default(268_435_456), - max_metadata_bytes: z - .number() - .int() - .min(256) - .max(268_435_456) - .default(67_108_864), - max_table_rows: z.number().int().min(1).max(1_000_000).default(100_000), - max_heap_item_bytes: z - .number() - .int() - .min(1) - .max(16_777_216) - .default(1_048_576), + ...managedReadLimits, }); /** Exact caller boundary for execution-free metadata/signature/IL inspection. */ @@ -54,25 +58,7 @@ export const managedMemberInputSchema = z.object({ edge_offset: z.number().int().min(0).default(0), edge_limit: z.number().int().min(1).max(1_000).default(250), instruction_anchor_limit: z.number().int().min(0).max(500).default(100), - max_file_bytes: z - .number() - .int() - .min(4_096) - .max(1_073_741_824) - .default(268_435_456), - max_metadata_bytes: z - .number() - .int() - .min(256) - .max(268_435_456) - .default(67_108_864), - max_table_rows: z.number().int().min(1).max(1_000_000).default(100_000), - max_heap_item_bytes: z - .number() - .int() - .min(1) - .max(16_777_216) - .default(1_048_576), + ...managedReadLimits, max_method_body_bytes: z .number() .int() @@ -90,25 +76,7 @@ export const managedNativeBoundaryInputSchema = z.object({ import_limit: z.number().int().min(1).max(500).default(100), implementation_offset: z.number().int().min(0).default(0), implementation_limit: z.number().int().min(1).max(500).default(100), - max_file_bytes: z - .number() - .int() - .min(4_096) - .max(1_073_741_824) - .default(268_435_456), - max_metadata_bytes: z - .number() - .int() - .min(256) - .max(268_435_456) - .default(67_108_864), - max_table_rows: z.number().int().min(1).max(1_000_000).default(100_000), - max_heap_item_bytes: z - .number() - .int() - .min(1) - .max(16_777_216) - .default(1_048_576), + ...managedReadLimits, }); const outputSchema = requireOutputSchema( diff --git a/src/domain/binaryTarget.ts b/src/domain/binaryTarget.ts index de73b7de4d..18b0278103 100644 --- a/src/domain/binaryTarget.ts +++ b/src/domain/binaryTarget.ts @@ -1,249 +1,10 @@ -import { constants } from "node:fs"; -import { createHash } from "node:crypto"; -import { - access, - open, - readFile, - realpath, - stat, - type FileHandle, -} from "node:fs/promises"; -import { execFile } from "node:child_process"; -import { extname, isAbsolute, join, relative, resolve, sep } from "node:path"; -import { promisify } from "node:util"; - -import { BinaryTargetError } from "./errors.js"; -import type { BinaryArchitecture, BinaryTarget } from "./binaryTargetTypes.js"; +import type { BinaryArchitecture } from "./binaryTargetTypes.js"; import { err, ok, type Result } from "./result.js"; -import { zipPackageFormatForPath } from "./zipPackageFormat.js"; export type { BinaryArchitecture, BinaryTarget } from "./binaryTargetTypes.js"; -const execFileAsync = promisify(execFile); - -/** - * Resolve and classify a readable local target before a provider is selected. - * FAT Mach-O inputs select only a host-compatible architecture so setup remains - * non-interactive; unsupported or ambiguous inputs are returned as typed errors. - */ -export const parseBinaryTarget = async ( - input: string, - cwd = process.cwd(), - hostArchitecture: NodeJS.Architecture = process.arch, - targetKind?: BinaryTarget["kind"], -): Promise> => { - const candidate = isAbsolute(input) ? input : resolve(cwd, input); - try { - await access(candidate, constants.R_OK); - const canonical = await realpath(candidate); - const resolved = await resolveAppBundle(canonical); - if (!resolved.ok) return err(resolved.error); - const path = resolved.value; - const handle = await open(path, "r"); - try { - if (!(await handle.stat()).isFile()) - return err(new BinaryTargetError(path, "target is not a regular file")); - if ( - targetKind === "database" || - (targetKind === undefined && path.toLowerCase().endsWith(".hop")) - ) - return ok({ - path, - sourcePath: canonical, - sha256: await sha256Handle(handle), - kind: "database", - format: "analysis-database", - }); - const artifactFormat = await detectArtifactFormat(path, handle); - if (artifactFormat !== undefined) { - const identity = { - path, - sourcePath: canonical, - sha256: await sha256Handle(handle), - }; - return isArchiveFormat(artifactFormat) - ? ok({ ...identity, kind: "archive", format: artifactFormat }) - : ok({ ...identity, kind: "artifact", format: artifactFormat }); - } - const detected = await readExecutableMetadata(handle, hostArchitecture); - if (!detected.ok) return err(new BinaryTargetError(path, detected.error)); - return ok({ - path, - sourcePath: canonical, - sha256: await sha256Handle(handle), - kind: "executable", - ...detected.value, - }); - } finally { - await handle.close(); - } - } catch (cause: unknown) { - return err( - new BinaryTargetError(candidate, "path is not readable", { cause }), - ); - } -}; - -const detectArtifactFormat = async ( - path: string, - handle: FileHandle, -): Promise< - | Exclude< - BinaryTarget["format"], - "analysis-database" | "mach-o" | "elf" | "pe" - > - | undefined -> => { - const lower = path.toLowerCase(); - const magic = Buffer.alloc(8); - const observed = await handle.read(magic, 0, magic.length, 0); - if ( - observed.bytesRead >= 4 && - magic[0] === 0x50 && - magic[1] === 0x4b && - [0x03, 0x05, 0x07].includes(magic[2] ?? -1) && - [0x04, 0x06, 0x08].includes(magic[3] ?? -1) - ) { - return zipPackageFormatForPath(lower) ?? "zip"; - } - const named = namedArtifactFormat(lower); - if (named !== undefined) return named; - if ( - lower.endsWith(".pkg") && - observed.bytesRead >= 4 && - magic.subarray(0, 4).toString("ascii") === "xar!" - ) - return "pkg"; - if (lower.endsWith(".dmg")) { - const size = (await handle.stat()).size; - if (size >= 512) { - const trailer = Buffer.alloc(4); - const read = await handle.read(trailer, 0, trailer.length, size - 512); - if (read.bytesRead === 4 && trailer.toString("ascii") === "koly") - return "dmg"; - } - } - return undefined; -}; - -const namedArtifactFormat = ( - lowerPath: string, -): "asar" | "plist" | "source-map" | "javascript" | undefined => { - if (lowerPath.endsWith(".asar")) return "asar"; - if (lowerPath.endsWith(".plist")) return "plist"; - if (lowerPath.endsWith(".map")) return "source-map"; - return /\.(?:m?js|cjs)$/u.test(lowerPath) ? "javascript" : undefined; -}; - -const isArchiveFormat = ( - format: Exclude< - BinaryTarget["format"], - "analysis-database" | "mach-o" | "elf" | "pe" - >, -): format is Extract["format"] => - ["zip", "ipa", "apk", "msix", "appx", "asar", "dmg", "pkg"].includes(format); - -const sha256Handle = async (handle: FileHandle): Promise => { - const hash = createHash("sha256"); - const chunk = Buffer.allocUnsafe(64 * 1024); - let position = 0; - while (true) { - const observed = await handle.read(chunk, 0, chunk.length, position); - if (observed.bytesRead === 0) break; - hash.update(chunk.subarray(0, observed.bytesRead)); - position += observed.bytesRead; - } - return hash.digest("hex"); -}; - -const resolveAppBundle = async ( - path: string, -): Promise> => { - const metadata = await stat(path); - if (!metadata.isDirectory()) return ok(path); - if (extname(path).toLowerCase() !== ".app") - return err(new BinaryTargetError(path, "target is not an app or file")); - const plistPath = join(path, "Contents", "Info.plist"); - let name: string; - try { - const plist = await readFile(plistPath); - name = - plist.subarray(0, 6).toString("ascii") === "bplist" - ? await readBinaryPlistExecutable(plistPath) - : parseXmlPlistExecutable(plist.toString("utf8")); - } catch (cause: unknown) { - return err( - new BinaryTargetError(path, "app has no readable CFBundleExecutable", { - cause, - }), - ); - } - if (!isSafeExecutableName(name)) - return err( - new BinaryTargetError(path, "app has an unsafe CFBundleExecutable"), - ); - const programs = join(path, "Contents", "MacOS"); - const executable = join(programs, name); - try { - const [canonicalPrograms, canonicalExecutable] = await Promise.all([ - realpath(programs), - realpath(executable), - ]); - const location = relative(canonicalPrograms, canonicalExecutable); - if ( - location === ".." || - location.startsWith(`..${sep}`) || - isAbsolute(location) - ) - return err( - new BinaryTargetError(path, "app program file leaves Contents/MacOS"), - ); - return ok(canonicalExecutable); - } catch (cause: unknown) { - return err( - new BinaryTargetError(path, "app program file is missing", { cause }), - ); - } -}; - -const parseXmlPlistExecutable = (plist: string): string => { - const match = - /\s*CFBundleExecutable\s*<\/key>\s*([^<]+)<\/string>/u.exec( - plist, - ); - if (match?.[1] === undefined) - throw new Error("CFBundleExecutable is missing"); - return decodeXml(match[1].trim()); -}; - -const readBinaryPlistExecutable = async (plistPath: string): Promise => - ( - await execFileAsync("/usr/bin/plutil", [ - "-extract", - "CFBundleExecutable", - "raw", - "-o", - "-", - plistPath, - ]) - ).stdout.trim(); - -const isSafeExecutableName = (name: string): boolean => - name.length > 0 && - name !== "." && - name !== ".." && - !name.includes("\0") && - !/[/\\]/u.test(name); - -const decodeXml = (value: string): string => - value - .replaceAll("&", "&") - .replaceAll("<", "<") - .replaceAll(">", ">") - .replaceAll(""", '"') - .replaceAll("'", "'"); - -type ExecutableMetadata = +/** Format and architecture facts recovered from an executable header. */ +export type ExecutableMetadata = | { readonly format: "mach-o" | "elf"; readonly architecture: BinaryArchitecture; @@ -260,58 +21,6 @@ type ExecutableMetadata = readonly managed: boolean; }; -const readExecutableMetadata = async ( - handle: FileHandle, - hostArchitecture: NodeJS.Architecture, -): Promise> => { - const prefix = Buffer.alloc(4096); - const prefixRead = await handle.read(prefix, 0, prefix.length, 0); - const bytes = prefix.subarray(0, prefixRead.bytesRead); - if (bytes.length >= 64 && bytes[0] === 0x4d && bytes[1] === 0x5a) { - const offset = bytes.readUInt32LE(0x3c); - return readPeMetadata(handle, offset); - } - if (bytes.length >= 8) { - const magic = bytes.readUInt32BE(0); - if ([0xcafebabf, 0xbfbafeca].includes(magic)) { - const little = magic === 0xbfbafeca; - const count = little ? bytes.readUInt32LE(4) : bytes.readUInt32BE(4); - const required = 8 + count * 32; - if (count <= 128 && required > bytes.length) { - const header = Buffer.alloc(required); - const headerRead = await handle.read(header, 0, header.length, 0); - return parseExecutableHeader( - header.subarray(0, headerRead.bytesRead), - hostArchitecture, - ); - } - } - } - return parseExecutableHeader(bytes, hostArchitecture); -}; - -const readPeMetadata = async ( - handle: FileHandle, - offset: number, -): Promise> => { - const fileHeader = Buffer.alloc(24); - const fileHeaderRead = await handle.read( - fileHeader, - 0, - fileHeader.length, - offset, - ); - if (fileHeaderRead.bytesRead !== fileHeader.length) - return err("invalid or truncated PE header"); - const optionalHeaderSize = fileHeader.readUInt16LE(20); - if (optionalHeaderSize > 4096) return err("invalid PE optional header size"); - const record = Buffer.alloc(24 + optionalHeaderSize); - const recordRead = await handle.read(record, 0, record.length, offset); - return recordRead.bytesRead === record.length - ? parsePeRecord(record) - : err("invalid or truncated PE header"); -}; - /** * Parse supported executable headers without I/O. The caller supplies the host * architecture used for deterministic FAT Mach-O slice selection. @@ -414,7 +123,10 @@ const parsePe = (bytes: Buffer): Result => { return parsePeRecord(bytes.subarray(offset)); }; -const parsePeRecord = (record: Buffer): Result => { +/** Parse a bounded PE signature, COFF record, and optional header without I/O. */ +export const parsePeRecord = ( + record: Buffer, +): Result => { if ( record.length < 24 || record.toString("binary", 0, 4) !== "PE\u0000\u0000" diff --git a/src/domain/browserObservation.ts b/src/domain/browserObservation.ts index 5021a9f960..36cf26baa2 100644 --- a/src/domain/browserObservation.ts +++ b/src/domain/browserObservation.ts @@ -380,3 +380,17 @@ export const sanitizeBrowserUrl = (value: string): SanitizedBrowserUrl => { redacted: wasTruncated || hadCredentials || hadFragment || names.length > 0, }; }; + +/** Remove credentials, fragments, and query values from endpoint candidates. */ +export const sanitizeEndpointCandidate = (value: string): string => { + const bounded = value.slice(0, 4_096); + try { + const parsed = new URL(bounded, "https://rea.invalid"); + const sanitized = sanitizeBrowserUrl(parsed.href).url; + return parsed.origin === "https://rea.invalid" + ? sanitized.replace("https://rea.invalid", "") + : sanitized; + } catch { + return bounded.split("#", 1)[0]?.split("?", 1)[0] ?? ""; + } +}; diff --git a/src/domain/errors.ts b/src/domain/errors.ts index 80d289b62d..d05d630c2b 100644 --- a/src/domain/errors.ts +++ b/src/domain/errors.ts @@ -190,22 +190,9 @@ export class ProviderSelectionError extends AnalysisError { readonly rejections: readonly ProviderSelectionRejection[]; override readonly userMessage: string; - constructor(input: string | ProviderSelectionErrorOptions) { - const legacy = typeof input === "string"; - const options: ProviderSelectionErrorOptions = legacy - ? { - operation: input, - reason: "provider_unavailable", - requestedProviderId: "auto", - candidateIds: [], - } - : input; + constructor(options: ProviderSelectionErrorOptions) { const operation = options.operation ?? "open_binary"; - super( - legacy - ? `No configured provider can execute ${operation}` - : providerSelectionDiagnostic(options), - ); + super(providerSelectionDiagnostic(options)); this.operation = operation; this.reason = options.reason; this.requestedProviderId = options.requestedProviderId; diff --git a/src/domain/javascriptRuntimeReconciliationActive.ts b/src/domain/javascriptRuntimeReconciliationActive.ts index d3d76feead..206361f096 100644 --- a/src/domain/javascriptRuntimeReconciliationActive.ts +++ b/src/domain/javascriptRuntimeReconciliationActive.ts @@ -1,6 +1,7 @@ import { createHash } from "node:crypto"; -import { isAbsolute, relative } from "node:path"; +import { isAbsolute } from "node:path"; +import { isPathWithinRoot } from "./localPath.js"; import canonicalize from "canonicalize"; import { z } from "zod"; @@ -33,7 +34,7 @@ export const parseActiveElectronCapture = ( .parse(evidence.parameters); if ( result.application.application_path !== parameters.application_path || - !isWithinRoot( + !isPathWithinRoot( parameters.application_root, result.application.application_path, ) @@ -129,10 +130,3 @@ const digestCanonical = (value: unknown): string => { throw new TypeError("Runtime reconciliation could not canonicalize input"); return createHash("sha256").update(encoded).digest("hex"); }; - -const isWithinRoot = (root: string, path: string): boolean => { - const remainder = relative(root, path); - return ( - remainder === "" || (!remainder.startsWith("..") && !isAbsolute(remainder)) - ); -}; diff --git a/src/domain/javascriptRuntimeReconciliationParsing.ts b/src/domain/javascriptRuntimeReconciliationParsing.ts index 8ea9da225f..2813e16df9 100644 --- a/src/domain/javascriptRuntimeReconciliationParsing.ts +++ b/src/domain/javascriptRuntimeReconciliationParsing.ts @@ -1,6 +1,7 @@ import { createHash } from "node:crypto"; -import { isAbsolute, relative } from "node:path"; +import { isAbsolute } from "node:path"; +import { isPathWithinRoot } from "./localPath.js"; import canonicalize from "canonicalize"; import { z } from "zod"; @@ -310,7 +311,7 @@ const assertV8RuntimeParameters = ( if ( (location.kind === "file" && !parameters.allowed_file_roots.some((root) => - isWithinRoot(root, location.file_path), + isPathWithinRoot(root, location.file_path), )) || (location.kind === "url" && !parameters.allowed_origins.includes(location.origin)) || @@ -321,13 +322,6 @@ const assertV8RuntimeParameters = ( ); }; -const isWithinRoot = (root: string, path: string): boolean => { - const remainder = relative(root, path); - return ( - remainder === "" || (!remainder.startsWith("..") && !isAbsolute(remainder)) - ); -}; - const normalizeV8Inspection = ( result: JavaScriptRuntimeObservation, ): NormalizedV8Inspection => ({ diff --git a/src/domain/javascriptRuntimeStaticCandidates.ts b/src/domain/javascriptRuntimeStaticCandidates.ts index 6a5128fc26..2940f57299 100644 --- a/src/domain/javascriptRuntimeStaticCandidates.ts +++ b/src/domain/javascriptRuntimeStaticCandidates.ts @@ -1,5 +1,6 @@ -import { isAbsolute, posix, relative } from "node:path"; +import { posix, relative } from "node:path"; +import { isPathWithinRoot } from "./localPath.js"; import { compareCodePoints, type ApplicationNode, @@ -210,8 +211,7 @@ const pathBelowRoot = (root: string, value: string): string | null => { const remainder = relative(root, value); if ( remainder === "" || - remainder.startsWith("..") || - isAbsolute(remainder) || + !isPathWithinRoot(root, value) || remainder.includes("\\") ) return null; diff --git a/src/domain/javascriptStaticAnalysisCalls.ts b/src/domain/javascriptStaticAnalysisCalls.ts index c8ff25346d..9d28102e11 100644 --- a/src/domain/javascriptStaticAnalysisCalls.ts +++ b/src/domain/javascriptStaticAnalysisCalls.ts @@ -1,5 +1,6 @@ import * as t from "@babel/types"; +import { sanitizeEndpointCandidate } from "./browserObservation.js"; import { addBoundedFinding, addLocatedFinding, @@ -14,7 +15,6 @@ import { propertyName, range, rangeForOffsets, - sanitizeCandidate, sourceSlice, staticPath, staticPathResolutionContext, @@ -264,7 +264,7 @@ const addEndpoint = (context: FindingContext, input: EndpointInput): void => node: input.node, value: { kind: input.kind, - value: sanitizeCandidate(input.value), + value: sanitizeEndpointCandidate(input.value), mechanism: input.mechanism, module_key: null, location: range(input.node), diff --git a/src/domain/javascriptStaticAnalysisHelpers.ts b/src/domain/javascriptStaticAnalysisHelpers.ts index fdfbd215eb..46299f21d8 100644 --- a/src/domain/javascriptStaticAnalysisHelpers.ts +++ b/src/domain/javascriptStaticAnalysisHelpers.ts @@ -3,7 +3,6 @@ import { posix } from "node:path"; import * as t from "@babel/types"; -import { sanitizeBrowserUrl } from "./browserObservation.js"; import type { JavaScriptBundlerRegistration, JavaScriptSourceRange, @@ -411,20 +410,6 @@ export const detectVendors = (source: string): string[] => patterns.some((pattern) => source.includes(pattern)) ? [name] : [], ); -/** Remove credentials, fragments, and query values from endpoint candidates. */ -export const sanitizeCandidate = (value: string): string => { - const bounded = value.slice(0, 4_096); - try { - const parsed = new URL(bounded, "https://rea.invalid"); - const sanitized = sanitizeBrowserUrl(parsed.href).url; - return parsed.origin === "https://rea.invalid" - ? sanitized.replace("https://rea.invalid", "") - : sanitized; - } catch { - return bounded.split("#", 1)[0]?.split("?", 1)[0] ?? ""; - } -}; - /** Commit the static semantic content used to deduplicate registrations. */ export const registrationKey = ( registration: JavaScriptBundlerRegistration, diff --git a/src/domain/localPath.ts b/src/domain/localPath.ts new file mode 100644 index 0000000000..43b491cf98 --- /dev/null +++ b/src/domain/localPath.ts @@ -0,0 +1,10 @@ +import { isAbsolute, relative, sep } from "node:path"; + +/** Test lexical containment on the host platform; callers must resolve symlinks first. */ +export const isPathWithinRoot = (root: string, path: string): boolean => { + const value = relative(root, path); + return ( + value === "" || + (value !== ".." && !value.startsWith(`..${sep}`) && !isAbsolute(value)) + ); +}; diff --git a/src/domain/permissionPolicy.ts b/src/domain/permissionPolicy.ts index b886df7cfe..c781ca2262 100644 --- a/src/domain/permissionPolicy.ts +++ b/src/domain/permissionPolicy.ts @@ -2,26 +2,30 @@ import { isAbsolute, relative, resolve, sep } from "node:path"; import { err, ok, type Result } from "./result.js"; -/** Local capabilities governed by the shared REA permission policy. */ -export type PermissionCapability = - | "process_capture" - | "browser_observe" - | "browser_automate" - | "electron_observe" - | "electron_automate" - | "v8_inspector_observe" - | "evidence_read" - | "evidence_write" - | "investigation_input" - | "investigation_workspace_read" - | "investigation_workspace_write" - | "snapshot_read" - | "snapshot_write" - | "artifact_extract" - | "native_mount" - | "reference_read" - | "javascript_replay" - | "managed_runtime"; +/** Canonical local capabilities governed by the shared REA permission policy. */ +export const PERMISSION_CAPABILITIES = [ + "process_capture", + "browser_observe", + "browser_automate", + "electron_observe", + "electron_automate", + "v8_inspector_observe", + "evidence_read", + "evidence_write", + "investigation_input", + "investigation_workspace_read", + "investigation_workspace_write", + "snapshot_read", + "snapshot_write", + "artifact_extract", + "native_mount", + "reference_read", + "javascript_replay", + "managed_runtime", +] as const; + +/** One capability from the canonical local permission inventory. */ +export type PermissionCapability = (typeof PERMISSION_CAPABILITIES)[number]; /** Ordered network authority; each mode includes the modes before it. */ type PermissionNetwork = "none" | "loopback" | "external"; diff --git a/src/domain/processScenario.ts b/src/domain/processScenario.ts index 74288a766b..c08a030d37 100644 --- a/src/domain/processScenario.ts +++ b/src/domain/processScenario.ts @@ -1,5 +1,5 @@ import { createHash } from "node:crypto"; -import { resolve } from "node:path"; +import { isPathWithinRoot } from "./localPath.js"; import canonicalize from "canonicalize"; import { z } from "zod"; import { @@ -451,12 +451,6 @@ export type ProcessPolicyDecision = | "filesystem root is outside approved roots"; }; -const isWithin = (candidate: string, root: string): boolean => - resolve(candidate) === resolve(root) || - resolve(candidate).startsWith( - `${resolve(root)}${resolve(root).endsWith("/") ? "" : "/"}`, - ); - /** Evaluate scenario authority before any process or filesystem side effect occurs. */ export const authorizeProcessScenario = ( scenario: ProcessScenario, @@ -470,13 +464,15 @@ export const authorizeProcessScenario = ( reason: "host network access is not approved by operator policy", }; if ( - !policy.executableRoots.some((root) => isWithin(scenario.executable, root)) + !policy.executableRoots.some((root) => + isPathWithinRoot(root, scenario.executable), + ) ) { return { allowed: false, reason: "executable is outside approved roots" }; } if ( !policy.workingRoots.some((root) => - isWithin(scenario.working_directory, root), + isPathWithinRoot(root, scenario.working_directory), ) ) { return { @@ -498,7 +494,8 @@ export const authorizeProcessScenario = ( } if ( scenario.filesystem_roots.some( - (path) => !policy.workingRoots.some((root) => isWithin(path, root)), + (path) => + !policy.workingRoots.some((root) => isPathWithinRoot(root, path)), ) ) { return { diff --git a/src/domain/referenceSourceGraph.test.ts b/src/domain/referenceSourceGraph.test.ts index da04914b69..2cf49e26d9 100644 --- a/src/domain/referenceSourceGraph.test.ts +++ b/src/domain/referenceSourceGraph.test.ts @@ -100,6 +100,33 @@ const graphInput = (): HistoricalSourceGraphInput => ({ }); describe("historical source graph", () => { + it("validates supplementary paths and derived indexes by code point", () => { + const paths = ["a", "aa", "\uE000", "\u{10000}"]; + const input: HistoricalSourceGraphInput = { + ...graphInput(), + entries: paths.map((path) => + fileEntry({ + path, + language: path, + classifications: ["manifest"], + }), + ), + relationships: [], + languages: paths, + manifests: paths, + }; + const graph = createHistoricalSourceGraph(input); + expect(parseHistoricalSourceGraph(graph)).toEqual(graph); + expect(() => + createHistoricalSourceGraph({ + ...input, + entries: [...input.entries].sort((left, right) => + left.path < right.path ? -1 : left.path > right.path ? 1 : 0, + ), + }), + ).toThrow(/Unicode code point/u); + }); + it("builds and verifies internal root and manifest commitments", () => { const graph = createHistoricalSourceGraph(graphInput()); const first = createHistoricalSourceManifest(graph); diff --git a/src/domain/referenceSourceGraph.ts b/src/domain/referenceSourceGraph.ts index 727a6244dd..3a0ad7d1e0 100644 --- a/src/domain/referenceSourceGraph.ts +++ b/src/domain/referenceSourceGraph.ts @@ -4,6 +4,7 @@ import { posix } from "node:path"; import canonicalize from "canonicalize"; import { z } from "zod"; +import { compareUnicodeCodePoints } from "./unicodeCodePointOrder.js"; const MAX_PATH = 4_096; const digestSchema = z.string().regex(/^[a-f0-9]{64}$/u); const boundedTextSchema = z.string().min(1).max(1_024); @@ -240,16 +241,16 @@ const relationshipKey = ( ): string => `${relationship.from_path}\u0000${relationship.to}\u0000${relationship.kind}\u0000${relationship.resolution}\u0000${relationship.parse_state}`; -const compareCodePoints = (left: string, right: string): number => - left < right ? -1 : left > right ? 1 : 0; - const checkSortedUnique = ( values: readonly string[], field: string, context: z.RefinementCtx, ): void => { for (let index = 1; index < values.length; index += 1) - if (compareCodePoints(values[index - 1] ?? "", values[index] ?? "") >= 0) { + if ( + compareUnicodeCodePoints(values[index - 1] ?? "", values[index] ?? "") >= + 0 + ) { context.addIssue({ code: "custom", message: `${field} must be sorted and unique by Unicode code point`, @@ -270,7 +271,7 @@ const expectedLanguages = ( : [], ), ), - ].sort(compareCodePoints); + ].sort(compareUnicodeCodePoints); const expectedManifests = ( entries: readonly z.infer[], @@ -281,7 +282,7 @@ const expectedManifests = ( ? [entry.path] : [], ) - .sort(compareCodePoints); + .sort(compareUnicodeCodePoints); type GraphStructure = z.infer; diff --git a/src/domain/unicodeCodePointOrder.ts b/src/domain/unicodeCodePointOrder.ts new file mode 100644 index 0000000000..42acf2b068 --- /dev/null +++ b/src/domain/unicodeCodePointOrder.ts @@ -0,0 +1,14 @@ +/** Compare strings lexicographically by Unicode code point, independent of locale. */ +export const compareUnicodeCodePoints = ( + left: string, + right: string, +): number => { + const leftPoints = [...left].map((value) => value.codePointAt(0) ?? 0); + const rightPoints = [...right].map((value) => value.codePointAt(0) ?? 0); + const length = Math.min(leftPoints.length, rightPoints.length); + for (let index = 0; index < length; index += 1) { + const difference = (leftPoints[index] ?? 0) - (rightPoints[index] ?? 0); + if (difference !== 0) return difference; + } + return leftPoints.length - rightPoints.length; +}; diff --git a/src/domain/webBundleAnalyzerAst.ts b/src/domain/webBundleAnalyzerAst.ts index 2da30038e6..b0a16c4df1 100644 --- a/src/domain/webBundleAnalyzerAst.ts +++ b/src/domain/webBundleAnalyzerAst.ts @@ -58,19 +58,6 @@ export const resolveSpecifier = ( } }; -export const sanitizeCandidate = (value: string): string => { - const bounded = value.slice(0, 4_096); - try { - const parsed = new URL(bounded, "https://rea.invalid"); - const sanitized = sanitizeBrowserUrl(parsed.href).url; - return parsed.origin === "https://rea.invalid" - ? sanitized.replace("https://rea.invalid", "") - : sanitized; - } catch { - return bounded.split("#", 1)[0]?.split("?", 1)[0] ?? ""; - } -}; - export const location = (scriptKey: string, node: t.Node) => ({ script_key: scriptKey, ...locationFields(node), diff --git a/src/domain/webBundleAnalyzerInspection.ts b/src/domain/webBundleAnalyzerInspection.ts index 3045e7b06c..3955d4b1f4 100644 --- a/src/domain/webBundleAnalyzerInspection.ts +++ b/src/domain/webBundleAnalyzerInspection.ts @@ -1,6 +1,7 @@ import { parse } from "@babel/parser"; import * as t from "@babel/types"; +import { sanitizeEndpointCandidate } from "./browserObservation.js"; import type { WebPageInspection } from "./browserObservation.js"; import type { AnalyzeWebBundleInput, @@ -15,7 +16,6 @@ import { objectValue, propertyName, resolveSpecifier, - sanitizeCandidate, stringArgument, } from "./webBundleAnalyzerAst.js"; @@ -242,7 +242,7 @@ interface AddFindingContext { } const addFinding = (context: AddFindingContext): void => { - const value = sanitizeCandidate(context.rawValue); + const value = sanitizeEndpointCandidate(context.rawValue); const key = `finding\0${context.mechanism}\0${context.script.script_key}\0${value}`; addBounded(context.accumulator, key, context.maximumFindings, () => context.collection.push({ diff --git a/src/domain/zipPackageFormat.ts b/src/domain/zipPackageFormat.ts index 0ff8edca41..c45109135a 100644 --- a/src/domain/zipPackageFormat.ts +++ b/src/domain/zipPackageFormat.ts @@ -1,6 +1,15 @@ /** ZIP-backed application package families that share the hardened archive reader. */ export type ZipPackageFormat = "zip" | "ipa" | "apk" | "msix" | "appx"; +/** Recognize local-header, empty-archive, or split-archive ZIP signatures, not archive validity. */ +export const hasZipSignature = (bytes: Uint8Array): boolean => + bytes.length >= 4 && + bytes[0] === 0x50 && + bytes[1] === 0x4b && + ((bytes[2] === 0x03 && bytes[3] === 0x04) || + (bytes[2] === 0x05 && bytes[3] === 0x06) || + (bytes[2] === 0x07 && bytes[3] === 0x08)); + /** * Classify a ZIP-backed package by its complete lower-cased path suffix. * diff --git a/src/dotnet/ManagedMemberInspectorCore.ts b/src/dotnet/ManagedMemberInspectorCore.ts index f71ba60ea5..a66fbd827c 100644 --- a/src/dotnet/ManagedMemberInspectorCore.ts +++ b/src/dotnet/ManagedMemberInspectorCore.ts @@ -1,16 +1,15 @@ import type { ManagedMemberInspection } from "../domain/managedArtifact.js"; import { - metadataRowOffset, type ManagedMetadataLayout, type MetadataTableLayout, } from "./ManagedMetadataLayout.js"; import { - MetadataRowCursor, + metadataRowCursor, + metadataCodedToken, metadataToken, readMetadataString, sha256Bytes, } from "./ManagedMetadataHeaps.js"; -import { managedFailure } from "./ManagedReaderFailure.js"; export type ManagedPage = { readonly items: readonly Item[]; @@ -117,41 +116,6 @@ export const page = ( }; }; -export const rowCursor = ( - bytes: Buffer, - layout: ManagedMetadataLayout, - table: number, - row: number, -): MetadataRowCursor => { - const descriptor = layout.table(table); - const start = metadataRowOffset(layout, table, row); - if (descriptor === undefined) - throw managedFailure( - "invalid-row", - `metadata.${String(table)}`, - "Metadata table is absent", - start, - ); - return new MetadataRowCursor( - bytes, - start, - start + descriptor.rowSize, - `metadata.${descriptor.name}`, - ); -}; - -export const codedToken = ( - raw: number, - bits: number, - tables: readonly (number | undefined)[], -): string | null => { - if (raw === 0) return null; - const tag = raw & (2 ** bits - 1); - const row = Math.floor(raw / 2 ** bits); - const table = tables[tag]; - return table === undefined || row === 0 ? null : metadataToken(table, row); -}; - const rowRange = ( table: MetadataTableLayout | undefined, start: number, @@ -179,7 +143,7 @@ const readTypeRange = ( ): TypeRange => { const methods = layout.table(6); const fields = layout.table(4); - const cursor = rowCursor(bytes, layout, 2, row); + const cursor = metadataRowCursor(bytes, layout, 2, row); cursor.readUInt32(); const name = readMetadataString( bytes, @@ -200,7 +164,7 @@ const readTypeRange = ( let nextMethod = (methods?.rowCount ?? 0) + 1; const typeTable = layout.table(2); if (typeTable !== undefined && row < typeTable.rowCount) { - const next = rowCursor(bytes, layout, 2, row + 1); + const next = metadataRowCursor(bytes, layout, 2, row + 1); next.readUInt32(); next.readIndex(layout.stringIndexSize); next.readIndex(layout.stringIndexSize); @@ -255,7 +219,7 @@ export const parseTypes = ( const methods = layout.table(6); const items: ManagedType[] = []; for (let row = 1; row <= (typeTable?.rowCount ?? 0); row += 1) { - const cursor = rowCursor(bytes, layout, 2, row); + const cursor = metadataRowCursor(bytes, layout, 2, row); const flags = cursor.readUInt32(); const name = readMetadataString( bytes, @@ -286,7 +250,7 @@ export const parseTypes = ( name, full_name: fullName(namespace, name), flags, - extends_token: codedToken(extendsRaw, 2, [2, 1, 27]), + extends_token: metadataCodedToken(extendsRaw, 2, [2, 1, 27]), field_list: { first_row: fieldRange.first, last_row: fieldRange.last, diff --git a/src/dotnet/ManagedMemberRows.ts b/src/dotnet/ManagedMemberRows.ts index 3d81c53ff1..36ef8de8fb 100644 --- a/src/dotnet/ManagedMemberRows.ts +++ b/src/dotnet/ManagedMemberRows.ts @@ -1,9 +1,7 @@ import type { ManagedPeLayout } from "./ManagedPeReader.js"; import type { ManagedMetadataLayout } from "./ManagedMetadataLayout.js"; import { - codedToken, declaringType, - rowCursor, signature, type FieldCore, type ManagedCallEdge, @@ -18,6 +16,8 @@ import { } from "./ManagedMemberInspectorCore.js"; import { metadataToken, + metadataRowCursor, + metadataCodedToken, readMetadataBlob, readMetadataString, } from "./ManagedMetadataHeaps.js"; @@ -36,7 +36,7 @@ export const parseFields = ( const core = new Map(); const table = layout.table(4); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor(bytes, layout, 4, row); + const cursor = metadataRowCursor(bytes, layout, 4, row); const flags = cursor.readUInt16(); const name = readMetadataString( bytes, @@ -78,7 +78,7 @@ export const parseMemberRefs = ( const core = new Map(); const table = layout.table(10); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor(bytes, layout, 10, row); + const cursor = metadataRowCursor(bytes, layout, 10, row); const parentRaw = cursor.readIndex( layout.codedIndexSize("MemberRefParent"), ); @@ -98,7 +98,7 @@ export const parseMemberRefs = ( refs.push({ token, row_offset: cursor.start, - parent_token: codedToken(parentRaw, 3, [2, 1, 26, 6, 27]), + parent_token: metadataCodedToken(parentRaw, 3, [2, 1, 26, 6, 27]), name, signature: signature(sig), }); @@ -131,7 +131,7 @@ export const parseMethods = ({ const core = new Map(); const table = layout.table(6); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor(bytes, layout, 6, row); + const cursor = metadataRowCursor(bytes, layout, 6, row); const rva = cursor.readUInt32(); const implFlags = cursor.readUInt16(); const flags = cursor.readUInt16(); diff --git a/src/dotnet/ManagedMetadataHeaps.ts b/src/dotnet/ManagedMetadataHeaps.ts index 655e5da126..d53a8a7841 100644 --- a/src/dotnet/ManagedMetadataHeaps.ts +++ b/src/dotnet/ManagedMetadataHeaps.ts @@ -1,6 +1,9 @@ import { createHash } from "node:crypto"; -import type { ManagedMetadataLayout } from "./ManagedMetadataLayout.js"; +import { + metadataRowOffset, + type ManagedMetadataLayout, +} from "./ManagedMetadataLayout.js"; import { managedFailure } from "./ManagedReaderFailure.js"; const requireRange = ( @@ -219,3 +222,40 @@ export const strongNameToken = (publicKey: Buffer): string => Buffer.from(createHash("sha1").update(publicKey).digest().subarray(-8)) .reverse() .toString("hex"); + +/** Create a cursor bounded to one admitted metadata table row. */ +export const metadataRowCursor = ( + bytes: Buffer, + layout: ManagedMetadataLayout, + table: number, + row: number, +): MetadataRowCursor => { + const descriptor = layout.table(table); + const start = metadataRowOffset(layout, table, row); + if (descriptor === undefined) + throw managedFailure( + "invalid-row", + `metadata.${String(table)}`, + "Metadata table is absent", + start, + ); + return new MetadataRowCursor( + bytes, + start, + start + descriptor.rowSize, + `metadata.${descriptor.name}`, + ); +}; + +/** Decode a metadata coded index without signed 32-bit coercion. */ +export const metadataCodedToken = ( + raw: number, + bits: number, + tables: readonly (number | undefined)[], +): string | null => { + if (raw === 0) return null; + const tag = raw & (2 ** bits - 1); + const row = Math.floor(raw / 2 ** bits); + const table = tables[tag]; + return table === undefined || row === 0 ? null : metadataToken(table, row); +}; diff --git a/src/dotnet/ManagedMetadataInventoryRows.ts b/src/dotnet/ManagedMetadataInventoryRows.ts index e5c0ce2500..38f77e5ab9 100644 --- a/src/dotnet/ManagedMetadataInventoryRows.ts +++ b/src/dotnet/ManagedMetadataInventoryRows.ts @@ -7,7 +7,8 @@ import { type ManagedMetadataLayout, } from "./ManagedMetadataLayout.js"; import { - MetadataRowCursor, + metadataRowCursor, + metadataCodedToken, metadataToken, readMetadataBlob, readMetadataGuid, @@ -25,36 +26,6 @@ type AssemblyReference = type ManagedResource = ManagedArtifactInspection["resources"]["items"][number]; type CustomAttribute = ManagedArtifactInspection["attributes"]["items"][number]; -interface RowCursorContext { - readonly bytes: Buffer; - readonly layout: ManagedMetadataLayout; - readonly table: number; - readonly row: number; -} - -const rowCursor = ({ - bytes, - layout, - table, - row, -}: RowCursorContext): MetadataRowCursor => { - const descriptor = layout.table(table); - const start = metadataRowOffset(layout, table, row); - if (descriptor === undefined) - throw managedFailure( - "invalid-row", - `metadata.${String(table)}`, - "Metadata table is absent", - start, - ); - return new MetadataRowCursor( - bytes, - start, - start + descriptor.rowSize, - `metadata.${descriptor.name}`, - ); -}; - const publicKeyIdentity = ( bytes: Buffer, kind: "public-key" | "public-key-token", @@ -79,7 +50,7 @@ export const readModule = ( ): ModuleIdentity | null => { const table = layout.table(0); if (table === undefined || table.rowCount === 0) return null; - const cursor = rowCursor({ bytes, layout, table: 0, row: 1 }); + const cursor = metadataRowCursor(bytes, layout, 0, 1); const generation = cursor.readUInt16(); const name = readMetadataString( bytes, @@ -120,7 +91,7 @@ export const readAssembly = ( ): AssemblyIdentity | null => { const table = layout.table(32); if (table === undefined || table.rowCount === 0) return null; - const cursor = rowCursor({ bytes, layout, table: 32, row: 1 }); + const cursor = metadataRowCursor(bytes, layout, 32, 1); const hashAlgorithm = cursor.readUInt32(); const version = [ cursor.readUInt16(), @@ -168,7 +139,7 @@ export const readAssemblyReference = ( row: number, maxBytes: number, ): AssemblyReference => { - const cursor = rowCursor({ bytes, layout, table: 35, row }); + const cursor = metadataRowCursor(bytes, layout, 35, row); const version = [ cursor.readUInt16(), cursor.readUInt16(), @@ -216,18 +187,6 @@ export const readAssemblyReference = ( }; }; -const codedToken = ( - raw: number, - bits: number, - tables: readonly (number | undefined)[], -): string | null => { - if (raw === 0) return null; - const tag = raw & (2 ** bits - 1); - const row = Math.floor(raw / 2 ** bits); - const table = tables[tag]; - return table === undefined || row === 0 ? null : metadataToken(table, row); -}; - interface ReadTypeNameContext { readonly bytes: Buffer; readonly layout: ManagedMetadataLayout; @@ -246,7 +205,7 @@ const readTypeName = ({ const descriptor = layout.table(table); if (descriptor === undefined || row < 1 || row > descriptor.rowCount) return null; - const cursor = rowCursor({ bytes, layout, table, row }); + const cursor = metadataRowCursor(bytes, layout, table, row); if (table === 1) cursor.readIndex(layout.codedIndexSize("ResolutionScope")); else cursor.readUInt32(); const name = readMetadataString( @@ -274,7 +233,7 @@ const declaringTypeForMethod = ( const methods = layout.table(6); if (types === undefined || methods === undefined) return null; for (let row = 1; row <= types.rowCount; row += 1) { - const cursor = rowCursor({ bytes, layout, table: 2, row }); + const cursor = metadataRowCursor(bytes, layout, 2, row); cursor.readUInt32(); const nameIndex = cursor.readIndex(layout.stringIndexSize); const namespaceIndex = cursor.readIndex(layout.stringIndexSize); @@ -303,7 +262,7 @@ const methodListForType = ( layout: ManagedMetadataLayout, row: number, ): number => { - const cursor = rowCursor({ bytes, layout, table: 2, row }); + const cursor = metadataRowCursor(bytes, layout, 2, row); cursor.readUInt32(); cursor.readIndex(layout.stringIndexSize); cursor.readIndex(layout.stringIndexSize); @@ -325,7 +284,7 @@ const attributeTypeName = ( if (tag !== 3) return null; const memberRefs = layout.table(10); if (memberRefs === undefined || row > memberRefs.rowCount) return null; - const cursor = rowCursor({ bytes, layout, table: 10, row }); + const cursor = metadataRowCursor(bytes, layout, 10, row); const parent = cursor.readIndex(layout.codedIndexSize("MemberRefParent")); const parentTag = parent & 7; const parentRow = Math.floor(parent / 8); @@ -389,7 +348,7 @@ export const readCustomAttribute = ( row: number, maxBytes: number, ): CustomAttribute => { - const cursor = rowCursor({ bytes, layout, table: 12, row }); + const cursor = metadataRowCursor(bytes, layout, 12, row); const parentRaw = cursor.readIndex( layout.codedIndexSize("HasCustomAttribute"), ); @@ -402,7 +361,7 @@ export const readCustomAttribute = ( cursor.readIndex(layout.blobIndexSize), maxBytes, ); - const parent = codedToken( + const parent = metadataCodedToken( parentRaw, 5, [ @@ -420,7 +379,12 @@ export const readCustomAttribute = ( const typeName = attributeTypeName(bytes, layout, typeRaw, maxBytes); return { parent_token: parent, - constructor_token: codedToken(typeRaw, 3, [undefined, undefined, 6, 10]), + constructor_token: metadataCodedToken(typeRaw, 3, [ + undefined, + undefined, + 6, + 10, + ]), type_name: typeName, value_length: value.length, value_sha256: sha256Bytes(value), @@ -450,7 +414,7 @@ export const readResource = ({ directory, issues, }: ReadResourceContext): ManagedResource => { - const cursor = rowCursor({ bytes, layout, table: 40, row }); + const cursor = metadataRowCursor(bytes, layout, 40, row); const declaredOffset = cursor.readUInt32(); const flags = cursor.readUInt32(); const name = readMetadataString( @@ -462,7 +426,11 @@ export const readResource = ({ const implementationRaw = cursor.readIndex( layout.codedIndexSize("Implementation"), ); - const implementationToken = codedToken(implementationRaw, 2, [38, 35, 39]); + const implementationToken = metadataCodedToken( + implementationRaw, + 2, + [38, 35, 39], + ); let dataLength: number | null = null; let dataSha256: string | null = null; if (implementationRaw === 0) { diff --git a/src/dotnet/ManagedNativeBoundaryHelpers.ts b/src/dotnet/ManagedNativeBoundaryHelpers.ts index b7311e8446..5dc2917cf4 100644 --- a/src/dotnet/ManagedNativeBoundaryHelpers.ts +++ b/src/dotnet/ManagedNativeBoundaryHelpers.ts @@ -4,18 +4,15 @@ import { type ManagedNativeBoundaryInspection, type ManagedParseIssue, } from "../domain/managedArtifact.js"; +import { type ManagedMetadataLayout } from "./ManagedMetadataLayout.js"; import { - metadataRowOffset, - type ManagedMetadataLayout, -} from "./ManagedMetadataLayout.js"; -import { - MetadataRowCursor, + metadataRowCursor, + metadataCodedToken, metadataToken, readMetadataString, } from "./ManagedMetadataHeaps.js"; import { managedTableRowCounts } from "./ManagedMetadataInventory.js"; import type { ManagedMetadataInventory } from "./ManagedMetadataInventory.js"; -import { managedFailure } from "./ManagedReaderFailure.js"; import type { ManagedNativeBoundaryInspectionLimits } from "./ManagedNativeBoundaryInspector.js"; import type { ManagedPeLayout } from "./ManagedPeReader.js"; @@ -46,48 +43,6 @@ interface MemberCore { readonly rva: number | null; } -interface RowCursorContext { - readonly bytes: Buffer; - readonly layout: ManagedMetadataLayout; - readonly table: number; - readonly row: number; -} - -const rowCursor = ({ - bytes, - layout, - table, - row, -}: RowCursorContext): MetadataRowCursor => { - const descriptor = layout.table(table); - const start = metadataRowOffset(layout, table, row); - if (descriptor === undefined) - throw managedFailure( - "invalid-row", - `metadata.${String(table)}`, - "Metadata table is absent", - start, - ); - return new MetadataRowCursor( - bytes, - start, - start + descriptor.rowSize, - `metadata.${descriptor.name}`, - ); -}; - -const codedToken = ( - raw: number, - tagBits: number, - tables: readonly number[], -): string | null => { - const tagMask = (1 << tagBits) - 1; - const table = tables[raw & tagMask]; - const row = raw >> tagBits; - if (table === undefined || row === 0) return null; - return metadataToken(table, row); -}; - const flagsHex = (value: number): string => `0x${value.toString(16).padStart(4, "0")}`; @@ -117,7 +72,7 @@ export const parseModuleRefs = ( const refs: ModuleRef[] = []; const table = layout.table(26); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor({ bytes, layout, table: 26, row }); + const cursor = metadataRowCursor(bytes, layout, 26, row); refs.push({ token: metadataToken(26, row), row_offset: cursor.start, @@ -140,7 +95,7 @@ export const parseFields = ( const fields = new Map(); const table = layout.table(4); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor({ bytes, layout, table: 4, row }); + const cursor = metadataRowCursor(bytes, layout, 4, row); const flags = cursor.readUInt16(); const name = readMetadataString( bytes, @@ -171,7 +126,7 @@ export const parseMethods = ( const methods = new Map(); const table = layout.table(6); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor({ bytes, layout, table: 6, row }); + const cursor = metadataRowCursor(bytes, layout, 6, row); const rva = cursor.readUInt32(); const implFlags = cursor.readUInt16(); const flags = cursor.readUInt16(); @@ -216,9 +171,9 @@ export const parseImplMaps = ({ const imports: NativeImport[] = []; const table = layout.table(28); for (let row = 1; row <= (table?.rowCount ?? 0); row += 1) { - const cursor = rowCursor({ bytes, layout, table: 28, row }); + const cursor = metadataRowCursor(bytes, layout, 28, row); const mappingFlags = cursor.readUInt16(); - const memberToken = codedToken( + const memberToken = metadataCodedToken( cursor.readIndex(layout.codedIndexSize("MemberForwarded")), 1, [4, 6], diff --git a/src/dotnet/ManagedStaticProvider.ts b/src/dotnet/ManagedStaticProvider.ts index 00402921e2..9c2acb7168 100644 --- a/src/dotnet/ManagedStaticProvider.ts +++ b/src/dotnet/ManagedStaticProvider.ts @@ -234,7 +234,7 @@ const limitationsFor = (operation: ManagedToolName): readonly string[] => "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code.", ] : [ - "This capability decodes bounded PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# and cross-build matching are separate future contracts.", + "This capability decodes bounded PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# reconstruction and cross-build member comparison are separate operations.", "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code.", ], ); diff --git a/src/generatedMcpToolCatalog.ts b/src/generatedMcpToolCatalog.ts index eb906a6de3..ee5d42a218 100644 --- a/src/generatedMcpToolCatalog.ts +++ b/src/generatedMcpToolCatalog.ts @@ -30,7 +30,7 @@ interface GeneratedPayload { } const GENERATED_PAYLOAD_JSON = - '{"auxiliaryProviders":[{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"inventory_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"inspect_artifact","outputContractVersion":1,"pagination":"none","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":true,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"extract_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null}],"identity":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"}},{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_macho","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_signature","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_plist","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"list_architectures","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":30000},"operation":"demangle_swift","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null}],"identity":{"id":"native-macos","name":"macOS native inspection utilities","version":null}},{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability inventories PE/CLI identity only; inspect_managed_members admits bounded metadata members, signatures, and CIL anchors.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability decodes bounded PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# and cross-build matching are separate future contracts.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_members","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability inventories managed declarations for native boundaries only; native exports, thunks, and addresses require separate native-provider evidence.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_native_boundaries","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null}],"identity":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"}}],"catalog":[{"analysisOperation":"address_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve the primary analyzed name at a code or data address. Headless providers require an explicit address; GUI providers may default to their current cursor. Null means the provider has no primary name at that address.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"address_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Address Name"},{"analysisOperation":"comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read the regular analysis comment at an address, defaulting to the current cursor. This is read-only and returns null when no comment exists; use set_comment to persist a finding.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Comment"},{"analysisOperation":"current_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return Hopper\'s current cursor address for the selected document. Use only for interactive navigation state; prefer explicit addresses in reproducible investigations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Address"},{"analysisOperation":"current_procedure","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the analyzed procedure containing Hopper\'s current cursor. Use procedure_info or analyze_function next; this depends on GUI cursor state and is not an exhaustive lookup.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_procedure","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Procedure"},{"analysisOperation":"current_document","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the document currently selected by REA\'s Hopper bridge. Use list_documents before switching when several documents are open.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_document","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Document"},{"analysisOperation":"goto_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Move Hopper\'s GUI cursor to a hexadecimal address and return the resolved address. This changes navigation state but not analysis data; use explicit-address tools for headless workflows.","effects":{"accessesNetwork":false,"changesUiState":true,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"goto_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Goto Address"},{"analysisOperation":"inline_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read the inline instruction comment at an address, defaulting to the current cursor. Returns null when absent; use set_inline_comment to write one.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"inline_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inline Comment"},{"analysisOperation":"list_bookmarks","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List every bookmark in the selected Hopper document as address and name pairs. Use bookmarks as analyst-authored navigation aids; this does not discover code references.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_bookmarks","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Bookmarks"},{"analysisOperation":"list_documents","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List provider program or document identities. Hopper may expose several documents; a Ghidra headless session contains exactly its one imported Program.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_documents","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Documents"},{"analysisOperation":"list_names","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through analyzed memory and external symbols as address/value pairs. Provider metadata distinguishes Ghidra primary, dynamic, external, type, and source facts when available; follow next_offset before claiming exhaustive coverage.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_names","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Names"},{"analysisOperation":"list_procedures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through analyzed procedures as address/value pairs after provider analysis. Ghidra metadata distinguishes thunks and external functions; follow next_offset for exhaustive coverage and use returned addresses in later function operations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_procedures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Procedures"},{"analysisOperation":"list_segments","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List segments or memory blocks using exclusive end addresses. Ghidra reports block permissions, address space, image base, initialization, and overlay facts; Hopper marks unavailable permissions explicitly.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_segments","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"additionalProperties":false,"properties":{"address_space":{"type":"string"},"end":{"type":"string"},"executable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"image_base":{"type":"string"},"initialized":{"type":"boolean"},"name":{"type":"string"},"overlay":{"type":"boolean"},"permissions":{"anyOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"source":{"const":"ghidra-memory-block","type":"string"}},"required":["available","source"],"type":"object"}]},"provenance":{"enum":["hopper-public-python-api","ghidra-memory-block"],"type":"string"},"readable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"sections":{"items":{"additionalProperties":false,"properties":{"address_space":{"type":"string"},"end":{"type":"string"},"executable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"image_base":{"type":"string"},"initialized":{"type":"boolean"},"name":{"type":"string"},"overlay":{"type":"boolean"},"permissions":{"anyOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"source":{"const":"ghidra-memory-block","type":"string"}},"required":["available","source"],"type":"object"}]},"provenance":{"enum":["hopper-public-python-api","ghidra-memory-block"],"type":"string"},"readable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"start":{"type":"string"},"writable":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","start","end","readable","writable","executable","permissions","provenance"],"type":"object"},"type":"array"},"start":{"type":"string"},"writable":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","start","end","readable","writable","executable","permissions","provenance","sections"],"type":"object"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Segments"},{"analysisOperation":"list_strings","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through provider-defined strings, or filter to one address, as address/value pairs. Ghidra reports charset, missing-terminator status, byte length, and explicit value truncation; follow next_offset for exhaustive results.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_strings","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Strings"},{"analysisOperation":"next_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the next analyzed object address after an explicit address or current cursor. This is a navigation primitive, not instruction-flow or CFG analysis.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"next_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Next Address"},{"analysisOperation":"prev_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the previous analyzed instruction start before an explicit address or current cursor. This is a navigation primitive and may fail at document boundaries.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"prev_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Prev Address"},{"analysisOperation":"procedure_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an unambiguous procedure symbol name or provider-normalized address to its canonical entry address. External address spaces remain explicit; use the result before xrefs, assembly, or decompilation.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Address"},{"analysisOperation":"procedure_assembly","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return assembly for one analyzed procedure identified by symbol or hexadecimal address. Use when pseudocode loses calling-convention or instruction-level detail; output is currently returned as one unpaginated string.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_assembly","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Assembly"},{"analysisOperation":"procedure_callees","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the provider\'s resolved direct callees for one procedure identified by symbol or address. Unresolved indirect calls may be absent; use analyze_function and typed references to preserve available edge uncertainty.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_callees","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Callees"},{"analysisOperation":"procedure_callers","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the provider\'s resolved direct callers for one procedure identified by symbol or address. Results reflect completed static analysis and may omit unresolved indirect references.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_callers","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Callers"},{"analysisOperation":"procedure_info","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return bounded metadata for one procedure identified by symbol or address: entrypoint, signature, locals, size, and block count. Follow with decompilation or assembly for behavior.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_info","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"basicblock_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"entrypoint":{"type":"string"},"length":{"minimum":0,"type":"number"},"locals":{"items":{"additionalProperties":false,"properties":{"description":{"type":"string"},"provenance":{"minLength":1,"type":"string"}},"required":["description","provenance"],"type":"object"},"type":"array"},"name":{"type":"string"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","entrypoint","basicblock_count","length","signature","locals","classification"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Info"},{"analysisOperation":"read_function_instructions","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read one offset-paginated window of raw instructions for an analyzed procedure without decompilation, caller discovery, or whole-program string/name scans. Use this fast path for instruction-level orientation; follow next_offset when truncated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":64,"offset":0,"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"limit":{"default":64,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":100000,"minimum":0,"type":"integer"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"read_function_instructions","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"instruction_scan_truncated":{"type":"boolean"},"instructions":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"instructions_scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"}},"required":["procedure","instructions","instructions_scanned","instruction_scan_truncated","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Read Function Instructions"},{"analysisOperation":"read_bytes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read at most 4,096 analyzed bytes from one provider-normalized virtual address. The hexadecimal payload reports the exact returned length; incomplete reads remain explicit and unsupported provider APIs return typed capability unavailability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","length":16}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"length":{"default":256,"description":"Value for length.","maximum":4096,"minimum":1,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"read_bytes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"bytes_hex":{"pattern":"^(?:[a-f0-9]{2})*$","type":"string"},"complete":{"type":"boolean"},"requested_bytes":{"maximum":4096,"minimum":1,"type":"integer"},"returned_bytes":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["address","requested_bytes","returned_bytes","bytes_hex","complete"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Read Bytes"},{"analysisOperation":"address_to_file_offset","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Map one provider-normalized virtual address to its original nonnegative file offset. Unmapped addresses fail explicitly, and providers without an authoritative mapping API return typed capability unavailability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"address_to_file_offset","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"file_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["address","file_offset"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Address To File Offset"},{"analysisOperation":"procedure_references","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return a bounded set of raw incoming or outgoing reference edges for one procedure. Endpoint procedures are resolved only from provider containment; Ghidra preserves observed reference kinds while providers without kind authority mark them unavailable.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"direction":"outgoing","limit":100,"max_instructions":500,"offset":0,"procedure":"main"}],"properties":{"direction":{"default":"outgoing","description":"Direction in which to traverse or compare relationships.","enum":["incoming","outgoing"],"type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_references","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"direction":{"enum":["incoming","outgoing"],"type":"string"},"instruction_scan_truncated":{"type":"boolean"},"instructions_scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]}},"required":["procedure","direction","references","instructions_scanned","instruction_scan_truncated"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure References"},{"analysisOperation":"procedure_pseudo_code","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Decompile one analyzed procedure by symbol name or provider-normalized address. Returns provider-specific pseudocode, never original source or cross-provider text equivalence, and may return null; request procedure_assembly when instruction precision matters.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_pseudo_code","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Pseudo Code"},{"analysisOperation":"resolve_containing_procedure","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an arbitrary address, including an interior instruction or exact external entry, to its provider-analyzed containing procedure. A negative result distinguishes outside segments from not in a procedure and is never guessed from nearby symbols.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"resolve_containing_procedure","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Resolve Containing Procedure"},{"analysisOperation":"search_procedures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Search analyzed procedure names using literal matching by default or regex opt-in. Providers bound search work and reject regex constructs, paths, candidates, or cumulative work outside their finite budgets. Results are deterministic and offset-paginated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"case_sensitive":false,"limit":100,"mode":"literal","offset":0,"pattern":"main"}],"properties":{"case_sensitive":{"default":false,"description":"Whether to match case","type":"boolean"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mode":{"default":"literal","description":"Operation mode that selects the requested behavior.","enum":["literal","regex"],"type":"string"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"pattern":{"description":"The literal text or bounded regex pattern to search for","maxLength":256,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["pattern"],"type":"object"},"kind":"official-proxy","name":"search_procedures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value","value_truncated"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Search Procedures"},{"analysisOperation":"search_strings","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Search analyzed strings using literal matching by default or regex opt-in. Providers bound search work and reject regex constructs, paths, candidates, or cumulative work outside their finite budgets. Results are deterministic, offset-paginated, and explicitly truncated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"case_sensitive":false,"limit":100,"mode":"literal","offset":0,"pattern":"authorization failed"}],"properties":{"case_sensitive":{"default":false,"description":"Whether to match case","type":"boolean"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mode":{"default":"literal","description":"Operation mode that selects the requested behavior.","enum":["literal","regex"],"type":"string"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"pattern":{"description":"The literal text or bounded regex pattern to search for","maxLength":256,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["pattern"],"type":"object"},"kind":"official-proxy","name":"search_strings","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value","value_truncated"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Search Strings"},{"analysisOperation":"set_address_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Assign an analyst name to one hexadecimal address and report Hopper\'s boolean result. This mutates analysis metadata; read it back with address_name before relying on it.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","name":"entry"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"name":{"description":"Exact name used by this operation.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","name"],"type":"object"},"kind":"official-proxy","name":"set_address_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Address Name"},{"analysisOperation":"set_addresses_names","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Assign analyst names to an address/name map and return per-address success booleans. This mutates analysis metadata; use for bounded batches and verify failures individually.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"names":{"0x1000":"entry"}}],"properties":{"document":{"description":"The document name","type":"string"},"names":{"additionalProperties":{"type":"string"},"description":"Value for names.","propertyNames":{"type":"string"},"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["names"],"type":"object"},"kind":"official-proxy","name":"set_addresses_names","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":{"type":"boolean"},"propertyNames":{"type":"string"},"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Addresses Names"},{"analysisOperation":"set_bookmark","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Create or replace a bookmark at a hexadecimal address. This mutates navigation metadata; verify with list_bookmarks and do not treat bookmarks as binary evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"name":{"description":"Exact name used by this operation.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"set_bookmark","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Bookmark"},{"analysisOperation":"set_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Write a regular analysis comment at a hexadecimal address and return whether readback matched. This mutates the Hopper document; use comments to record evidence IDs or reasoning.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","comment":"validated entry point"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"comment":{"description":"Exact analyst comment text to write.","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","comment"],"type":"object"},"kind":"official-proxy","name":"set_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Comment"},{"analysisOperation":"set_current_document","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Select an already-open Hopper document by exact document name. This changes subsequent default-document routing; call list_documents first and prefer explicit document inputs where reproducibility matters.","effects":{"accessesNetwork":false,"changesUiState":true,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"document":"fixture"}],"properties":{"document":{"description":"Exact provider document or program identity.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["document"],"type":"object"},"kind":"official-proxy","name":"set_current_document","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Current Document"},{"analysisOperation":"set_inline_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Write an inline instruction comment at a hexadecimal address and return whether readback matched. This mutates analysis metadata; confirm with inline_comment.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","comment":"calls parser"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"comment":{"description":"Exact analyst comment text to write.","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","comment"],"type":"object"},"kind":"official-proxy","name":"set_inline_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Inline Comment"},{"analysisOperation":"unset_bookmark","annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Remove the bookmark at a hexadecimal address and return whether it is absent. This mutates navigation metadata and does not alter binary bytes.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"unset_bookmark","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Unset Bookmark"},{"analysisOperation":"xrefs","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return analyzed references to a code or data address, defaulting to the current cursor. Use to connect strings, globals, selectors, and functions; bare addresses are untyped and indirect references may be incomplete.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"xrefs","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Xrefs"},{"analysisOperation":"swift_classes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover legacy-mangled Swift class procedures after exhaustively paging analyzed procedures. Returns at most 100 entries and scans at most 5,000 symbols; use analyze_swift_types for other Swift kinds.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"pattern":""}],"properties":{"pattern":{"default":"","description":"Text or bounded pattern used to filter matching results.","type":"string"}},"type":"object"},"kind":"enhanced","name":"swift_classes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"classes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"},"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["count","classes"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Swift Classes"},{"analysisOperation":"get_objc_classes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover and deduplicate Objective-C class labels after exhaustively paging names, optionally filtering by literal substring. Returns at most 100 classes; inspect matching metadata and references next.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"pattern":""}],"properties":{"pattern":{"default":"","description":"Text or bounded pattern used to filter matching results.","type":"string"}},"type":"object"},"kind":"enhanced","name":"get_objc_classes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"classes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"},"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["count","classes"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Objc Classes"},{"analysisOperation":"get_objc_protocols","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover and deduplicate Objective-C and Swift protocol labels after exhaustively paging names. Returns at most 100 entries; use xrefs or analyze_function to connect a protocol to implementations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"enhanced","name":"get_objc_protocols","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"protocols":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["count","protocols"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Objc Protocols"},{"analysisOperation":"batch_decompile","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Decompile up to 20 explicit procedure symbols or addresses concurrently. Returns ordered per-item ok/error variants and aggregate counts; use analyze_function for a richer single-function dossier.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"addresses":[]}],"properties":{"addresses":{"default":[],"description":"Ordered provider-normalized procedure addresses to analyze.","items":{"description":"A provider-normalized procedure address","type":"string"},"maxItems":20,"type":"array"}},"type":"object"},"kind":"enhanced","name":"batch_decompile","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"failed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"pseudocode":{"minLength":1,"type":"string"},"status":{"const":"ok","type":"string"}},"required":["address","status","pseudocode"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]},"status":{"const":"error","type":"string"}},"required":["address","status","error"],"type":"object"}]},"type":"array"},"succeeded":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","total","succeeded","failed"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Batch Decompile"},{"analysisOperation":"get_call_graph","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Traverse the bound provider\'s caller or callee relationships from one symbol or address for at most five levels. Every node has an ok/error status and failures use safe typed projections; unresolved indirect calls may be missing and results are not a whole-program CFG.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"address":"0x1000","depth":2,"direction":"forward"}],"properties":{"address":{"description":"A provider-normalized procedure address","type":"string"},"depth":{"default":2,"description":"Value for depth.","maximum":5,"minimum":1,"type":"integer"},"direction":{"default":"forward","description":"Direction in which to traverse or compare relationships.","enum":["forward","backward"],"type":"string"}},"required":["address"],"type":"object"},"kind":"enhanced","name":"get_call_graph","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"calls":{"items":{"type":"string"},"type":"array"},"status":{"const":"ok","type":"string"}},"required":["address","status","calls"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]},"status":{"const":"error","type":"string"}},"required":["address","status","error"],"type":"object"}]},"type":"array"},"propertyNames":{"type":"string"},"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Call Graph"},{"analysisOperation":"analyze_swift_types","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Categorize exhaustively paged procedure names into Swift classes, structs, enums, protocols, extensions, and other symbols. Scans at most 5,000 names and returns at most 50 entries per category.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"enhanced","name":"analyze_swift_types","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"categories":{"additionalProperties":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["count","items"],"type":"object"},"propertyNames":{"type":"string"},"type":"object"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","categories"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Swift Types"},{"analysisOperation":"find_xrefs_to_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an exact name through the bound provider\'s exhaustively paged name inventory and return a resolved or unresolved result. Unresolved names use the stable name_not_found reason; this compact xref workflow returns address-only projections.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"name":"malloc"}],"properties":{"name":{"description":"Exact name used by this operation.","type":"string"}},"required":["name"],"type":"object"},"kind":"enhanced","name":"find_xrefs_to_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"},"status":{"const":"resolved","type":"string"},"xrefs":{"items":{"type":"string"},"type":"array"}},"required":["status","name","address","xrefs"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"type":"string"},"reason":{"const":"name_not_found","type":"string"},"status":{"const":"unresolved","type":"string"}},"required":["status","name","reason"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Find Xrefs To Name"},{"analysisOperation":"binary_overview","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Use immediately after opening a target to summarize document, exhaustive procedure/string counts, and a bounded segment sample. detail controls segment fields and limit controls only the returned segment sample.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"detail":"concise","limit":10}],"properties":{"detail":{"default":"concise","description":"Requested response detail level.","enum":["concise","detailed"],"type":"string"},"limit":{"default":10,"description":"Maximum number of results to return in this page.","maximum":50,"minimum":1,"type":"integer"}},"type":"object"},"kind":"enhanced","name":"binary_overview","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"detail":{"enum":["concise","detailed"],"type":"string"},"document":{"type":"string"},"procedure_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"segment_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"segments":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"length":{"minimum":0,"type":"number"},"name":{"type":"string"},"start":{"type":"string"}},"required":["name","start","end"],"type":"object"},"type":"array"},"string_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["document","detail","segments","segment_count","procedure_count","string_count"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Binary Overview"},{"analysisOperation":"analyze_function","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Preferred bounded analysis for one procedure symbol or address. Returns identity, provider-specific pseudocode, optional assembly, comments, calls, typed-or-explicitly-unavailable references, referenced strings/names, and local CFG blocks with exact truncation metadata. Providers with a structured decompiler model also expose native API boundary types, confidence, evidence, jump-table data/target addresses, and explicit decompiler-artifact labels.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"assembly_offset":0,"collection_offset":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"include_assembly":false,"limit":100,"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main","pseudocode_offset":0}],"properties":{"assembly_offset":{"default":0,"description":"Zero-based index of the first assembly to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"collection_offset":{"additionalProperties":false,"default":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"description":"Zero-based index of the first collection to return.","properties":{"basic_blocks":{"default":0,"description":"Value for basic blocks.","maximum":9007199254740991,"minimum":0,"type":"integer"},"callees":{"default":0,"description":"Value for callees.","maximum":9007199254740991,"minimum":0,"type":"integer"},"callers":{"default":0,"description":"Value for callers.","maximum":9007199254740991,"minimum":0,"type":"integer"},"comments":{"default":0,"description":"Value for comments.","maximum":9007199254740991,"minimum":0,"type":"integer"},"incoming_references":{"default":0,"description":"Value for incoming references.","maximum":9007199254740991,"minimum":0,"type":"integer"},"outgoing_references":{"default":0,"description":"Value for outgoing references.","maximum":9007199254740991,"minimum":0,"type":"integer"},"referenced_names":{"default":0,"description":"Value for referenced names.","maximum":9007199254740991,"minimum":0,"type":"integer"},"referenced_strings":{"default":0,"description":"Value for referenced strings.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"include_assembly":{"default":false,"description":"Whether to include assembly in the result.","type":"boolean"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_pseudocode_chars":{"default":20000,"description":"Maximum permitted pseudocode chars for this operation.","maximum":100000,"minimum":1,"type":"integer"},"procedure":{"description":"A procedure name or address","type":"string"},"pseudocode_offset":{"default":0,"description":"Zero-based index of the first pseudocode to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["procedure"],"type":"object"},"kind":"enhanced","name":"analyze_function","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"assembly":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"basic_blocks":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"start":{"type":"string"},"successors":{"items":{"type":"string"},"type":"array"}},"required":["start","end","successors"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"start":{"type":"string"},"successors":{"items":{"type":"string"},"type":"array"}},"required":["start","end","successors"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"callees":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"callers":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"comments":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"kind":{"enum":["comment","inline"],"type":"string"},"text":{"type":"string"}},"required":["address","kind","text"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"kind":{"enum":["comment","inline"],"type":"string"},"text":{"type":"string"}},"required":["address","kind","text"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"incoming_references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"instruction_scan":{"additionalProperties":false,"properties":{"scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["scanned","truncated"],"type":"object"},"limitations":{"default":[],"items":{"type":"string"},"type":"array"},"native_api":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"minLength":1,"type":"string"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"}},"required":["available","reason","residual_unknowns"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"calling_convention":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-and-stack-variables","compiler-generated-control-flow","pointer-arithmetic","pseudocode"],"type":"string"},"type":"array"},"jump_tables":{"items":{"additionalProperties":false,"properties":{"data_sources":{"items":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"confidence":{"enum":["low","medium","high"],"type":"string"},"entry_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"entry_size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"provenance":{"enum":["ghidra-decompiler-load-table","ghidra-dispatch-block-data-reference"],"type":"string"}},"required":["address","provenance","entry_size_bytes","entry_count","confidence","evidence"],"type":"object"},"type":"array"},"data_sources_truncated":{"type":"boolean"},"dispatch_address":{"minLength":1,"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"mappings":{"items":{"additionalProperties":false,"properties":{"case_value":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"confidence":{"enum":["low","medium","high"],"type":"string"},"data_addresses":{"items":{"minLength":1,"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"target_address":{"minLength":1,"type":"string"}},"required":["case_value","target_address","data_addresses","confidence","evidence"],"type":"object"},"type":"array"},"mappings_truncated":{"type":"boolean"}},"required":["dispatch_address","data_sources","data_sources_truncated","mappings","mappings_truncated","limitations"],"type":"object"},"type":"array"},"jump_tables_truncated":{"type":"boolean"},"limitations":{"items":{"type":"string"},"type":"array"},"parameters":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"role":{"const":"parameter","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"type":"array"},"parameters_truncated":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"pseudocode":{"additionalProperties":false,"properties":{"classification":{"const":"decompiler-generated-non-source","type":"string"},"compilable":{"const":false,"type":"boolean"}},"required":["classification","compilable"],"type":"object"},"return_type":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"type":"null"},"ordinal":{"type":"null"},"role":{"const":"return","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"signature_source":{"minLength":1,"type":"string"}},"required":["available","provenance","signature_source","calling_convention","return_type","parameters","parameters_truncated","jump_tables","jump_tables_truncated","pseudocode","decompiler_artifacts","limitations"],"type":"object"}]},{"type":"null"}],"default":null},"outgoing_references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"locals":{"items":{"additionalProperties":false,"properties":{"description":{"type":"string"},"provenance":{"minLength":1,"type":"string"}},"required":["description","provenance"],"type":"object"},"type":"array"},"name":{"type":"string"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","classification","signature","locals"],"type":"object"},"pseudocode":{"oneOf":[{"additionalProperties":false,"properties":{"next_offset":{"type":"null"},"returned_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"total_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"const":false,"type":"boolean"}},"required":["text","total_chars","returned_chars","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"total_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"const":true,"type":"boolean"}},"required":["text","total_chars","returned_chars","truncated","next_offset"],"type":"object"}]},"referenced_names":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"referenced_strings":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]}},"required":["procedure","pseudocode","assembly","comments","callers","callees","incoming_references","outgoing_references","referenced_strings","referenced_names","basic_blocks","instruction_scan","native_api","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Function"},{"analysisOperation":"inspect_native_api","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Reconstruct one native function boundary through inspectable substeps. Returns structured inferred return/parameter types with confidence and evidence, jump-table dispatch/data/target mappings, explicit decompiler-artifact labels, unsupported branches, and residual unknowns.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main"}],"properties":{"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_pseudocode_chars":{"default":20000,"description":"Maximum permitted pseudocode chars for this operation.","maximum":100000,"minimum":1,"type":"integer"},"procedure":{"description":"A procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record unsupported native API branches durably","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"enhanced","name":"inspect_native_api","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"boundary":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"minLength":1,"type":"string"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"}},"required":["available","reason","residual_unknowns"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"calling_convention":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-and-stack-variables","compiler-generated-control-flow","pointer-arithmetic","pseudocode"],"type":"string"},"type":"array"},"jump_tables":{"items":{"additionalProperties":false,"properties":{"data_sources":{"items":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"confidence":{"enum":["low","medium","high"],"type":"string"},"entry_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"entry_size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"provenance":{"enum":["ghidra-decompiler-load-table","ghidra-dispatch-block-data-reference"],"type":"string"}},"required":["address","provenance","entry_size_bytes","entry_count","confidence","evidence"],"type":"object"},"type":"array"},"data_sources_truncated":{"type":"boolean"},"dispatch_address":{"minLength":1,"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"mappings":{"items":{"additionalProperties":false,"properties":{"case_value":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"confidence":{"enum":["low","medium","high"],"type":"string"},"data_addresses":{"items":{"minLength":1,"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"target_address":{"minLength":1,"type":"string"}},"required":["case_value","target_address","data_addresses","confidence","evidence"],"type":"object"},"type":"array"},"mappings_truncated":{"type":"boolean"}},"required":["dispatch_address","data_sources","data_sources_truncated","mappings","mappings_truncated","limitations"],"type":"object"},"type":"array"},"jump_tables_truncated":{"type":"boolean"},"limitations":{"items":{"type":"string"},"type":"array"},"parameters":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"role":{"const":"parameter","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"type":"array"},"parameters_truncated":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"pseudocode":{"additionalProperties":false,"properties":{"classification":{"const":"decompiler-generated-non-source","type":"string"},"compilable":{"const":false,"type":"boolean"}},"required":["classification","compilable"],"type":"object"},"return_type":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"type":"null"},"ordinal":{"type":"null"},"role":{"const":"return","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"signature_source":{"minLength":1,"type":"string"}},"required":["available","provenance","signature_source","calling_convention","return_type","parameters","parameters_truncated","jump_tables","jump_tables_truncated","pseudocode","decompiler_artifacts","limitations"],"type":"object"}]},"procedure":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["address","name"],"type":"object"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"substeps":{"items":{"additionalProperties":false,"properties":{"observations":{"items":{"minLength":1,"type":"string"},"type":"array"},"operation":{"enum":["analyze_function","project_native_api_boundary","preserve_residual_unknowns"],"type":"string"},"status":{"enum":["completed","unsupported"],"type":"string"}},"required":["operation","status","observations"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"unsupported_branches":{"items":{"minLength":1,"type":"string"},"type":"array"}},"required":["schema_version","procedure","boundary","substeps","unsupported_branches","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Native Api"},{"analysisOperation":"trace_feature","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a bounded literal feature query through matching strings and procedures, xrefs, and truthful containing-procedure resolution. Returns the operation budget, truncation, and residual unknowns; unknown_registry_approved: true records them durably without inferring reference kinds.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"case_sensitive":false,"limit":20,"max_operations":20,"query":"license"}],"properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"limit":{"default":20,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_operations":{"default":20,"description":"Maximum permitted operations for this operation.","maximum":100,"minimum":1,"type":"integer"},"query":{"description":"Non-empty feature or text query to investigate.","minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["query"],"type":"object"},"kind":"enhanced","name":"trace_feature","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"matches":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"type":{"enum":["string","procedure"],"type":"string"},"value":{"type":"string"}},"required":["type","address","value"],"type":"object"},"type":"array"},"operation_budget":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query":{"type":"string"},"references":{"items":{"additionalProperties":false,"properties":{"containing_procedure":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["target_address","source_address","containing_procedure"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"search_mode":{"const":"literal","type":"string"},"truncated":{"type":"boolean"}},"required":["query","search_mode","operations_used","operation_budget","matches","references","truncated","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Feature"},{"analysisOperation":"find_code_for_string","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve one literal string query to bounded analyzed string entries, xrefs, and truthful containing-procedure candidates. Returns an Evidence ID, exact operation budget, truncation, and residual unknowns; it never infers reference kinds or runtime reachability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"case_sensitive":false,"limit":20,"max_operations":20,"query":"authorization failed"}],"properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"limit":{"default":20,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_operations":{"default":20,"description":"Maximum permitted operations for this operation.","maximum":100,"minimum":1,"type":"integer"},"query":{"description":"Non-empty feature or text query to investigate.","minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["query"],"type":"object"},"kind":"enhanced","name":"find_code_for_string","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"matches":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"type":{"enum":["string","procedure"],"type":"string"},"value":{"type":"string"}},"required":["type","address","value"],"type":"object"},"type":"array"},"operation_budget":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query":{"type":"string"},"references":{"items":{"additionalProperties":false,"properties":{"containing_procedure":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["target_address","source_address","containing_procedure"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"search_mode":{"const":"literal","type":"string"},"truncated":{"type":"boolean"}},"required":["query","search_mode","operations_used","operation_budget","matches","references","truncated","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Find Code For String"},{"analysisOperation":"trace_call_path","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a deterministic bounded caller or callee path from one exact procedure address, optionally stopping at a goal. Returns visited nodes, direct-call edges, one shortest traversal path, failures, frontier, consumed limits, an Evidence ID, and explicit residual unknowns without claiming unresolved indirect calls are absent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"direction":"forward","goal":"0x1100","max_depth":5,"max_nodes":100,"max_operations":100,"start":"0x1000"}],"properties":{"direction":{"default":"forward","description":"Direction in which to traverse or compare relationships.","enum":["forward","backward"],"type":"string"},"goal":{"description":"An optional provider-normalized destination address","type":"string"},"max_depth":{"default":5,"description":"Maximum permitted depth for this operation.","maximum":10,"minimum":1,"type":"integer"},"max_nodes":{"default":100,"description":"Maximum permitted nodes for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_operations":{"default":100,"description":"Maximum permitted operations for this operation.","maximum":500,"minimum":1,"type":"integer"},"start":{"description":"A provider-normalized procedure address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["start"],"type":"object"},"kind":"enhanced","name":"trace_call_path","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"direction":{"enum":["forward","backward"],"type":"string"},"edges":{"items":{"additionalProperties":false,"properties":{"discovery_depth":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["source_address","target_address","discovery_depth"],"type":"object"},"type":"array"},"failures":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]}},"required":["address","error"],"type":"object"},"type":"array"},"frontier":{"items":{"type":"string"},"type":"array"},"goal":{"anyOf":[{"type":"string"},{"type":"null"}]},"goal_status":{"enum":["not_requested","reached","not_reached"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_depth":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_nodes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_operations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"nodes_visited":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["max_depth","max_nodes","max_operations","nodes_visited","operations_used"],"type":"object"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"depth":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["address","depth"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"start":{"type":"string"},"traversal_path":{"items":{"type":"string"},"type":"array"},"truncated":{"type":"boolean"}},"required":["start","goal","direction","goal_status","nodes","edges","traversal_path","failures","frontier","limits","truncated","residual_unknowns","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Call Path"},{"analysisOperation":"inspect_macho","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Inspect Mach-O slices, load commands, imports, exports, dependencies, build metadata, segments, sections, permissions, and exact command provenance without launching Hopper.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"inspect_macho","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"architectures":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"cpu_subtype":{"anyOf":[{"type":"string"},{"type":"null"}]},"cpu_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"name":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","cpu_type","cpu_subtype","file_offset","size","alignment"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"build_metadata":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"minimum_os":{"anyOf":[{"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"type":"string"},{"type":"null"}]},"sdk":{"anyOf":[{"type":"string"},{"type":"null"}]},"tools":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},"type":"array"}},"required":["platform","minimum_os","sdk","tools"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"dependencies":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"compatibility_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"current_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"type":"string"},"path":{"type":"string"}},"required":["path","kind","current_version","compatibility_version"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"endian":{"anyOf":[{"enum":["little","big"],"type":"string"},{"type":"null"}]},"entrypoints":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"file_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["file_offset"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"exports":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"reexport":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"weak":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","address","weak","reexport","source"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"items":{"type":"string"},"type":"array"},"format":{"const":"mach-o","type":"string"},"imports":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"reexport":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"weak":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","address","weak","reexport","source"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"load_commands":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"fields":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"propertyNames":{"type":"string"},"type":"object"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"type":"string"}},"required":["index","kind","file_offset","fields"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"segments":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"file_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"initial_permissions":{"additionalProperties":false,"properties":{"execute":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"raw":{"anyOf":[{"type":"string"},{"type":"null"}]},"read":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"write":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read","write","execute","raw"],"type":"object"},"maximum_permissions":{"additionalProperties":false,"properties":{"execute":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"raw":{"anyOf":[{"type":"string"},{"type":"null"}]},"read":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"write":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read","write","execute","raw"],"type":"object"},"name":{"type":"string"},"sections":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"flags":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"segment":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["segment","name","address","size","file_offset","alignment","flags"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"vm_address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"vm_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","vm_address","vm_size","file_offset","file_size","maximum_permissions","initial_permissions","sections"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"uuid":{"anyOf":[{"type":"string"},{"type":"null"}]},"word_size":{"anyOf":[{"anyOf":[{"const":32,"type":"number"},{"const":64,"type":"number"}]},{"type":"null"}]}},"required":["format","endian","word_size","file_type","flags","uuid","entrypoints","architectures","build_metadata","load_commands","dependencies","imports","exports","segments","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Macho"},{"analysisOperation":"inspect_signature","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Inspect the active artifact\'s code-signing identity, hashes, authorities, requirements, entitlements, hardened-runtime state, and bounded command provenance.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"inspect_signature","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"authorities":{"items":{"type":"string"},"type":"array"},"cdhashes":{"items":{"type":"string"},"type":"array"},"designated_requirement":{"anyOf":[{"type":"string"},{"type":"null"}]},"entitlements":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"format":{"anyOf":[{"type":"string"},{"type":"null"}]},"hardened_runtime":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"hash_algorithms":{"items":{"type":"string"},"type":"array"},"identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"signed":{"type":"boolean"},"team_identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["signed","identifier","team_identifier","format","cdhashes","hash_algorithms","authorities","designated_requirement","entitlements","timestamp","hardened_runtime","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Signature"},{"analysisOperation":"inspect_plist","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Parse a plist at a bounded relative path beneath the active artifact container. Symlink and traversal escapes are rejected; output is normalized JSON rather than plutil text.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"relative_path":"Contents/Info.plist"}],"properties":{"relative_path":{"default":"Contents/Info.plist","description":"Local filesystem path for relative.","maxLength":1024,"minLength":1,"type":"string"}},"type":"object"},"kind":"native-provider","name":"inspect_plist","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"bundle":{"additionalProperties":false,"properties":{"executable":{"anyOf":[{"type":"string"},{"type":"null"}]},"identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"short_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["identifier","executable","name","version","short_version"],"type":"object"},"format":{"enum":["xml","binary","json","unknown"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"source_path":{"type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["format","value","bundle","source_path","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Plist"},{"analysisOperation":"list_architectures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List thin or universal Mach-O slices with offsets, sizes, alignment, explicit coverage, and bounded native-tool provenance.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"list_architectures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"architectures":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"cpu_subtype":{"anyOf":[{"type":"string"},{"type":"null"}]},"cpu_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"name":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","cpu_type","cpu_subtype","file_offset","size","alignment"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"}},"required":["architectures","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Architectures"},{"analysisOperation":"demangle_swift","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Demangle an ordered bounded batch of Swift symbols without requiring Hopper. Each input returns demangled, unchanged, or invalid status.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"symbols":["$s4Test3fooyyF"]}],"properties":{"symbols":{"description":"Ordered bounded Swift symbols to demangle.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":500,"minItems":1,"type":"array"}},"required":["symbols"],"type":"object"},"kind":"native-provider","name":"demangle_swift","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"symbols":{"items":{"additionalProperties":false,"properties":{"input":{"type":"string"},"output":{"type":"string"},"status":{"enum":["demangled","unchanged","invalid"],"type":"string"}},"required":["input","output","status"],"type":"object"},"type":"array"}},"required":["symbols","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Demangle Swift"},{"analysisOperation":"inventory_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"After open_binary binds a local archive, application package, or other artifact—or when one is already active—inventory it as a deterministic, content-addressed artifact graph. This tool accepts no path; in a target-free session open the target first. Returns bounded node and edge pages without extracting or mounting by default.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"edge_limit":{"default":100,"description":"Maximum number of edge entries to return.","maximum":500,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"},"node_limit":{"default":100,"description":"Maximum number of node entries to return.","maximum":500,"minimum":1,"type":"integer"},"node_offset":{"default":0,"description":"Zero-based index of the first node to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"occurrence_limit":{"default":100,"description":"Maximum number of occurrence entries to return.","maximum":500,"minimum":1,"type":"integer"},"occurrence_offset":{"default":0,"description":"Zero-based index of the first occurrence to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},{"properties":{"edge_limit":{"default":100,"description":"Maximum number of edge entries to return.","maximum":500,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"},"node_limit":{"default":100,"description":"Maximum number of node entries to return.","maximum":500,"minimum":1,"type":"integer"},"node_offset":{"default":0,"description":"Zero-based index of the first node to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"occurrence_limit":{"default":100,"description":"Maximum number of occurrence entries to return.","maximum":500,"minimum":1,"type":"integer"},"occurrence_offset":{"default":0,"description":"Zero-based index of the first occurrence to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["integrity_policy","integrity_continue_approved"],"type":"object"}],"examples":[{}],"type":"object"},"kind":"artifact-provider","name":"inventory_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"edges":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"child_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"edge_id":{"pattern":"^edge_[a-f0-9]{64}$","type":"string"},"logical_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"producer":{"anyOf":[{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},{"type":"null"}]},"relation":{"enum":["contains","extracts","slice-of","embeds","loads","maps-source","derived-from"],"type":"string"}},"required":["edge_id","ordinal","parent_artifact_id","child_artifact_id","relation","occurrence_id","logical_path","producer"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"integrity_contradictions":{"default":[],"items":{"additionalProperties":false,"properties":{"contradiction_id":{"pattern":"^ic_[a-f0-9]{64}$","type":"string"},"declared_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"entry_kind":{"enum":["file","slice"],"type":"string"},"limitations":{"items":{"type":"string"},"minItems":1,"type":"array"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"observed_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"parent_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"provenance":{"const":"container-integrity-metadata-versus-observed-bytes","type":"string"},"trust":{"const":"observed-untrusted","type":"string"},"unpacked":{"type":"boolean"}},"required":["contradiction_id","occurrence_id","parent_artifact_id","logical_path","declared_sha256","observed_sha256","entry_kind","unpacked","trust","provenance","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_compression_ratio":{"maximum":100000,"minimum":1,"type":"number"},"max_depth":{"maximum":100,"minimum":0,"type":"integer"},"max_entries":{"maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["max_entries","max_total_bytes","max_entry_bytes","max_compression_ratio","max_depth","max_path_bytes"],"type":"object"},"manifest":{"additionalProperties":false,"properties":{"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","manifest_id","root_artifact_id","root_sha256","root_format","graph_sha256","node_count","occurrence_count","edge_count"],"type":"object"},"nodes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"content_state":{"enum":["materialized","embedded","virtual"],"type":"string"},"executable":{"type":"boolean"},"format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"kind":{"enum":["container","executable","dynamic-library","framework","native-addon","javascript","source-map","plist","entitlements","resource","universal-slice","package-metadata","unknown"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"media_type":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["artifact_id","kind","format","sha256","size","media_type","architecture","executable","content_state","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"occurrences":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"compressed_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"declared_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"encrypted":{"type":"boolean"},"entry_kind":{"enum":["file","directory","symlink","slice"],"type":"string"},"executable":{"type":"boolean"},"hash_status":{"enum":["verified","mismatched","not-hashed-limit","unavailable"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"parent_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"source_location":{"anyOf":[{"additionalProperties":false,"properties":{"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offset","length"],"type":"object"},{"type":"null"}]}},"required":["occurrence_id","artifact_id","parent_occurrence_id","logical_path","entry_kind","declared_size","compressed_size","executable","encrypted","hash_status","source_location","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"provenance":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},"maxItems":256,"type":"array"}},"required":["manifest","nodes","occurrences","edges","limits","provenance","integrity_contradictions","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inventory Artifact"},{"analysisOperation":"inspect_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"After open_binary binds a local archive, application package, or other artifact—or when one is already active—inspect it through one bounded, cancellable inventory substep. This tool accepts no path; in a target-free session open the target first. Returns the full substep Evidence and its ID, observations, derived relationships, hypotheses, contradictions, unexplored branches, limitations, and format-specific next probes. Any substep failure fails the whole call.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_hypotheses":{"default":20,"description":"Maximum permitted hypotheses for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_next_probes":{"default":20,"description":"Maximum permitted next probes for this operation.","maximum":50,"minimum":1,"type":"integer"},"max_observations":{"default":100,"description":"Maximum permitted observations for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_relationships":{"default":100,"description":"Maximum permitted relationships for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_substeps":{"const":1,"default":1,"description":"Maximum permitted substeps for this operation.","type":"number"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_unexplored_branches":{"default":20,"description":"Maximum permitted unexplored branches for this operation.","maximum":100,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"}},"type":"object"},{"properties":{"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_hypotheses":{"default":20,"description":"Maximum permitted hypotheses for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_next_probes":{"default":20,"description":"Maximum permitted next probes for this operation.","maximum":50,"minimum":1,"type":"integer"},"max_observations":{"default":100,"description":"Maximum permitted observations for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_relationships":{"default":100,"description":"Maximum permitted relationships for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_substeps":{"const":1,"default":1,"description":"Maximum permitted substeps for this operation.","type":"number"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_unexplored_branches":{"default":20,"description":"Maximum permitted unexplored branches for this operation.","maximum":100,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"}},"required":["integrity_policy","integrity_continue_approved"],"type":"object"}],"examples":[{}],"type":"object"},"kind":"artifact-provider","name":"inspect_artifact","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"contradictions":{"items":{"additionalProperties":false,"properties":{"contradiction_id":{"pattern":"^aic_[a-f0-9]{64}$","type":"string"},"declared_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"observed_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"statement":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["contradiction_id","statement","occurrence_id","declared_sha256","observed_sha256","evidence_id"],"type":"object"},"maxItems":100,"type":"array"},"coverage":{"additionalProperties":false,"properties":{"hypotheses_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hypotheses_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_probes_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_probes_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observations_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observations_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relationships_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relationships_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-substeps","partial","truncated"],"type":"string"},"substeps_completed":{"const":1,"type":"number"},"unexplored_branches_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unexplored_branches_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","substeps_completed","observations_retained","observations_omitted","relationships_retained","relationships_omitted","hypotheses_retained","hypotheses_omitted","unexplored_branches_retained","unexplored_branches_omitted","next_probes_retained","next_probes_omitted"],"type":"object"},"derived_relationships":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"logical_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"relation":{"enum":["contains","extracts","slice-of","embeds","loads","maps-source","derived-from"],"type":"string"},"relationship_id":{"pattern":"^air_[a-f0-9]{64}$","type":"string"},"source_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"target_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"}},"required":["relationship_id","relation","source_artifact_id","target_artifact_id","occurrence_id","logical_path","evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"hypotheses":{"items":{"additionalProperties":false,"properties":{"basis_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":8,"minItems":1,"type":"array"},"confidence":{"enum":["medium","low"],"type":"string"},"hypothesis_id":{"pattern":"^aih_[a-f0-9]{64}$","type":"string"},"limitation":{"maxLength":4096,"minLength":1,"type":"string"},"statement":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["hypothesis_id","statement","confidence","basis_evidence_ids","limitation"],"type":"object"},"maxItems":100,"type":"array"},"inspection_id":{"pattern":"^ai_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"next_probes":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["artifact-bytes","managed-static-analysis","native-analysis-provider","ast-static-analysis"],"type":"string"},"operation":{"maxLength":128,"minLength":1,"type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["operation","rationale","authority"],"type":"object"},"maxItems":50,"type":"array"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["root-manifest","artifact","occurrence","integrity"],"type":"string"},"observation_id":{"pattern":"^aio_[a-f0-9]{64}$","type":"string"},"subject":{"maxLength":4096,"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["observation_id","kind","subject","value","evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"schema_version":{"const":1,"type":"number"},"subject":{"additionalProperties":false,"properties":{"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"maxLength":128,"minLength":1,"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["manifest_id","root_artifact_id","root_sha256","root_format"],"type":"object"},"substeps":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"const":"inventory_artifact","type":"string"},"status":{"const":"completed","type":"string"},"substep_id":{"pattern":"^ais_[a-f0-9]{64}$","type":"string"}},"required":["substep_id","operation","status","evidence_id","evidence"],"type":"object"},"maxItems":1,"minItems":1,"type":"array"},"unexplored_branches":{"items":{"additionalProperties":false,"properties":{"branch_id":{"pattern":"^aib_[a-f0-9]{64}$","type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"next_probe":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"enum":["artifact-bytes","managed-static-analysis","native-analysis-provider","ast-static-analysis"],"type":"string"},"operation":{"maxLength":128,"minLength":1,"type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["operation","rationale","authority"],"type":"object"},{"type":"null"}]},"reason":{"enum":["page-limit","format-specific-analysis-required","unknown-format"],"type":"string"}},"required":["branch_id","reason","detail","next_probe","evidence_id"],"type":"object"},"maxItems":100,"type":"array"}},"required":["schema_version","inspection_id","subject","substeps","observations","derived_relationships","hypotheses","contradictions","unexplored_branches","next_probes","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Artifact"},{"analysisOperation":"extract_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Extract selected graph artifacts beneath an explicit output root. Requires approval, rejects traversal and symlink escapes, never overwrites, enforces bomb limits, and verifies cleanup.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"occurrence_ids":["occ_0000000000000000000000000000000000000000000000000000000000000000"],"output_root":"/tmp/rea-extracted"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_ids":{"description":"Value for occurrence ids.","items":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"output_root":{"description":"Approved canonical filesystem output root.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","output_root","occurrence_ids"],"type":"object"},"kind":"artifact-provider","name":"extract_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifacts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"bytes_written":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"created":{"type":"boolean"},"relative_path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["artifact_id","relative_path","sha256","bytes_written","created"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"cleanup":{"additionalProperties":false,"properties":{"attempted":{"type":"boolean"},"residual_paths":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":500,"type":"array"},"verified":{"type":"boolean"}},"required":["attempted","verified","residual_paths"],"type":"object"},"containment_verified":{"type":"boolean"},"extraction_manifest":{"additionalProperties":false,"properties":{"extraction_id":{"pattern":"^aex_[a-f0-9]{64}$","type":"string"},"files_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_root_alias":{"const":"$OUTPUT_ROOT","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_occurrence_ids":{"items":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"source_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","extraction_id","source_manifest_id","selected_occurrence_ids","files_sha256","output_root_alias"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_compression_ratio":{"maximum":100000,"minimum":1,"type":"number"},"max_depth":{"maximum":100,"minimum":0,"type":"integer"},"max_entries":{"maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["max_entries","max_total_bytes","max_entry_bytes","max_compression_ratio","max_depth","max_path_bytes"],"type":"object"},"manifest":{"additionalProperties":false,"properties":{"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","manifest_id","root_artifact_id","root_sha256","root_format","graph_sha256","node_count","occurrence_count","edge_count"],"type":"object"},"output_root":{"minLength":1,"type":"string"},"provenance":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},"maxItems":256,"type":"array"}},"required":["manifest","extraction_manifest","output_root","artifacts","containment_verified","cleanup","limits","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Extract Artifact"},{"analysisOperation":"inspect_managed_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Open and classify an explicit managed PE/CLI path, or inspect the active managed target, then inventory exact assembly/module identity, target framework evidence, references, resources, and custom attributes without loading or executing target code. Returns bounded pages and explicit partial or malformed coverage.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"path":"/tmp/Example.dll"}],"properties":{"attribute_limit":{"default":100,"description":"Maximum number of attribute entries to return.","maximum":500,"minimum":1,"type":"integer"},"attribute_offset":{"default":0,"description":"Zero-based index of the first attribute to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"path":{"description":"Managed PE/CLI path to open before inspection; omit only when a managed target is already active","minLength":1,"type":"string"},"reference_limit":{"default":100,"description":"Maximum number of reference entries to return.","maximum":500,"minimum":1,"type":"integer"},"reference_offset":{"default":0,"description":"Zero-based index of the first reference to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"resource_limit":{"default":100,"description":"Maximum number of resource entries to return.","maximum":500,"minimum":1,"type":"integer"},"resource_offset":{"default":0,"description":"Zero-based index of the first resource to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"assembly":{"anyOf":[{"additionalProperties":false,"properties":{"culture":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"hash_algorithm":{"maximum":4294967295,"minimum":0,"type":"integer"},"name":{"type":"string"},"public_key":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["none","public-key","public-key-token"],"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"token":{"anyOf":[{"pattern":"^[a-f0-9]{16}$","type":"string"},{"type":"null"}]}},"required":["kind","byte_length","sha256","token"],"type":"object"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"version":{"pattern":"^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$","type":"string"}},"required":["name","version","culture","flags","hash_algorithm","public_key","token","row_offset"],"type":"object"},{"type":"null"}]},"attributes":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"constructor_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"decoded_fixed_string":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"type_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["parent_token","constructor_token","type_name","value_length","value_sha256","decoded_fixed_string","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"classification":{"additionalProperties":false,"properties":{"container":{"const":"pe","type":"string"},"evidence":{"items":{"additionalProperties":false,"properties":{"code":{"minLength":1,"type":"string"},"detail":{"minLength":1,"type":"string"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["code","detail","file_offset"],"type":"object"},"type":"array"},"implementation":{"enum":["cil","cil-and-ready-to-run","cpp-cli-mixed","metadata-only","not-managed","unknown"],"type":"string"},"managed_architecture":{"enum":["anycpu","anycpu-prefer-32","x86","x86_64","arm","arm64","unknown"],"type":"string"},"runtime_family":{"enum":["dotnet-framework","modern-dotnet","unity-mono","mixed-clr-native","unknown"],"type":"string"},"status":{"enum":["managed","not-managed","malformed"],"type":"string"}},"required":["status","container","runtime_family","implementation","managed_architecture","evidence"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"stream_names":{"items":{"type":"string"},"type":"array"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","stream_names","table_row_counts"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"pe":{"additionalProperties":false,"properties":{"architecture":{"enum":["x86","x86_64","arm","arm64"],"type":"string"},"characteristics":{"maximum":65535,"minimum":0,"type":"integer"},"cli":{"anyOf":[{"additionalProperties":false,"properties":{"entry_point":{"additionalProperties":false,"properties":{"kind":{"enum":["metadata-token","native-rva","none"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["kind","value"],"type":"object"},"flag_names":{"items":{"type":"string"},"type":"array"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"header_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"header_size":{"maximum":9007199254740991,"minimum":72,"type":"integer"},"managed_native_header_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"managed_native_header_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"metadata_rva":{"maximum":4294967295,"minimum":1,"type":"integer"},"metadata_size":{"maximum":4294967295,"minimum":1,"type":"integer"},"ready_to_run_signature":{"type":"boolean"},"resources_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"resources_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"runtime_version":{"type":"string"},"strong_name_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"strong_name_size":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["header_offset","header_size","runtime_version","flags","flag_names","entry_point","metadata_rva","metadata_size","resources_rva","resources_size","strong_name_rva","strong_name_size","managed_native_header_rva","managed_native_header_size","ready_to_run_signature"],"type":"object"},{"type":"null"}]},"machine":{"maximum":65535,"minimum":0,"type":"integer"},"machine_hex":{"pattern":"^0x[0-9a-f]{4}$","type":"string"},"optional_header":{"enum":["pe32","pe32-plus"],"type":"string"},"section_count":{"maximum":96,"minimum":1,"type":"integer"}},"required":["machine","machine_hex","architecture","optional_header","section_count","characteristics","cli"],"type":"object"},"references":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"culture":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"hash_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hash_value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"public_key_or_token":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["none","public-key","public-key-token"],"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"token":{"anyOf":[{"pattern":"^[a-f0-9]{16}$","type":"string"},{"type":"null"}]}},"required":["kind","byte_length","sha256","token"],"type":"object"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"version":{"pattern":"^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$","type":"string"}},"required":["name","version","culture","flags","public_key_or_token","hash_value_sha256","hash_value_length","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"resources":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"data_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"data_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"declared_offset":{"maximum":4294967295,"minimum":0,"type":"integer"},"embedded":{"type":"boolean"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"implementation_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"visibility":{"enum":["public","private","unknown"],"type":"string"}},"required":["name","flags","visibility","implementation_token","embedded","declared_offset","data_length","data_sha256","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"schema_version":{"const":1,"type":"number"},"target_frameworks":{"items":{"type":"string"},"type":"array"}},"required":["schema_version","artifact","pe","classification","metadata","module","assembly","target_frameworks","references","resources","attributes","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Artifact"},{"analysisOperation":"inspect_managed_members","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect bounded PE/CLI metadata members, signatures, raw CIL hashes, limited member-result-v1 decoded-instruction-tuple hashes, separately reported exception regions, call edges, and field-access anchors without loading or executing target code. Metadata tokens are reported as build-local coordinates bound to the artifact SHA-256 and MVID; the v1 tuple hash does not resolve them or fully commit control flow.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"edge_limit":100,"method_limit":25}],"properties":{"edge_limit":{"default":250,"description":"Maximum number of edge entries to return.","maximum":1000,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"field_limit":{"default":100,"description":"Maximum number of field entries to return.","maximum":500,"minimum":1,"type":"integer"},"field_offset":{"default":0,"description":"Zero-based index of the first field to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"instruction_anchor_limit":{"default":100,"description":"Maximum number of instruction anchor entries to return.","maximum":500,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_method_body_bytes":{"default":1048576,"description":"Maximum permitted method body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_method_instructions":{"default":10000,"description":"Maximum permitted method instructions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"member_ref_limit":{"default":100,"description":"Maximum number of member ref entries to return.","maximum":500,"minimum":1,"type":"integer"},"member_ref_offset":{"default":0,"description":"Zero-based index of the first member ref to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"method_limit":{"default":100,"description":"Maximum number of method entries to return.","maximum":500,"minimum":1,"type":"integer"},"method_offset":{"default":0,"description":"Zero-based index of the first method to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"type_limit":{"default":100,"description":"Maximum number of type entries to return.","maximum":500,"minimum":1,"type":"integer"},"type_offset":{"default":0,"description":"Zero-based index of the first type to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_members","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"call_edges":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"caller":{"anyOf":[{"type":"string"},{"type":"null"}]},"caller_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"opcode":{"type":"string"},"target_kind":{"enum":["method-def","member-ref","method-spec","unknown"],"type":"string"},"target_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"target_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["caller_token","caller","opcode","target_token","target_kind","target_name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"field_accesses":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"field_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"method":{"anyOf":[{"type":"string"},{"type":"null"}]},"method_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"opcode":{"type":"string"}},"required":["method_token","method","opcode","field_token","field_name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"fields":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"declaring_type_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","declaring_type_token","declaring_type","name","flags","signature"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"identity_scope":{"additionalProperties":false,"properties":{"requires_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"requires_mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"token_identity":{"const":"build-local","type":"string"}},"required":["token_identity","requires_artifact_sha256","requires_mvid"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"member_refs":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"parent_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","parent_token","name","signature"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","table_row_counts"],"type":"object"},"methods":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"properties":{"anchors":{"items":{"additionalProperties":false,"properties":{"il_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"opcode":{"minLength":1,"type":"string"},"operand":{"anyOf":[{"type":"string"},{"type":"null"}]},"operand_kind":{"enum":["none","branch","constant","field","method","signature","string","switch","token","type","variable","unknown"],"type":"string"}},"required":["il_offset","opcode","operand_kind","operand"],"type":"object"},"type":"array"},"decoded_instruction_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exception_regions":{"items":{"additionalProperties":false,"properties":{"class_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"filter_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"handler_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"handler_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"try_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"try_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["flags","try_offset","try_length","handler_offset","handler_length","class_token","filter_offset"],"type":"object"},"type":"array"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"header_format":{"enum":["tiny","fat","none","unknown"],"type":"string"},"il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"SHA-256 of exactly the raw il_size CIL bytes; excludes the method header, locals signature, alignment, and extra sections"},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"init_locals":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"instruction_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"local_var_sig_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"max_stack":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Member-result-v1 SHA-256 of UTF-8 JSON [opcode, operand_kind, operand] tuples for a complete decode; retains build-local tokens, omits switch targets, and excludes headers, locals, and exception regions"},"opcode_counts":{"additionalProperties":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"status":{"enum":["present","partial","absent","malformed","too-large"],"type":"string"},"truncated_instructions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","header_format","rva","file_offset","max_stack","init_locals","local_var_sig_token","il_size","il_sha256","normalized_il_sha256","instruction_count","decoded_instruction_count","truncated_instructions","opcode_counts","anchors","exception_regions","issue"],"type":"object"},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"declaring_type_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"impl_flags":{"maximum":65535,"minimum":0,"type":"integer"},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","declaring_type_token","declaring_type","name","rva","impl_flags","flags","signature","body"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"types":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"extends_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"field_list":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_row":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"last_row":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["first_row","last_row","count"],"type":"object"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"full_name":{"type":"string"},"method_list":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_row":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"last_row":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["first_row","last_row","count"],"type":"object"},"name":{"type":"string"},"namespace":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","namespace","name","full_name","flags","extends_token","field_list","method_list"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"}},"required":["schema_version","artifact","module","metadata","identity_scope","types","fields","methods","member_refs","call_edges","field_accesses","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Members"},{"analysisOperation":"inspect_managed_native_boundaries","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect PE/CLI ModuleRef, ImplMap/PInvoke declarations, CLI native-header indicators, and non-IL method implementation flags without loading or executing target code. Results are managed declarations and degraded native-boundary observations, not verified native exports or addresses.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"implementation_limit":50,"import_limit":50}],"properties":{"implementation_limit":{"default":100,"description":"Maximum number of implementation entries to return.","maximum":500,"minimum":1,"type":"integer"},"implementation_offset":{"default":0,"description":"Zero-based index of the first implementation to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"import_limit":{"default":100,"description":"Maximum number of import entries to return.","maximum":500,"minimum":1,"type":"integer"},"import_offset":{"default":0,"description":"Zero-based index of the first import to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"module_ref_limit":{"default":100,"description":"Maximum number of module ref entries to return.","maximum":500,"minimum":1,"type":"integer"},"module_ref_offset":{"default":0,"description":"Zero-based index of the first module ref to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_native_boundaries","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"cli_native":{"additionalProperties":false,"properties":{"il_only":{"type":"boolean"},"managed_native_header_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"managed_native_header_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"native_entry_point":{"type":"boolean"},"ready_to_run_signature":{"type":"boolean"},"requires_32bit":{"type":"boolean"},"strong_name_signed":{"type":"boolean"}},"required":["il_only","requires_32bit","strong_name_signed","native_entry_point","ready_to_run_signature","managed_native_header_rva","managed_native_header_size"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"identity_scope":{"additionalProperties":false,"properties":{"requires_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"requires_mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"token_identity":{"const":"build-local","type":"string"}},"required":["token_identity","requires_artifact_sha256","requires_mvid"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","table_row_counts"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"module_refs":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"native_implementations":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"body_interpretation":{"enum":["managed-cil","native-or-runtime","not-file-backed","unknown"],"type":"string"},"boundary_kind":{"enum":["pinvoke","native-body","runtime-provided","unmanaged-method","mixed-or-unknown"],"type":"string"},"code_type":{"enum":["il","native","optil","runtime","unknown"],"type":"string"},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"impl_flags":{"maximum":65535,"minimum":0,"type":"integer"},"managed_kind":{"enum":["managed","unmanaged","unknown"],"type":"string"},"name":{"type":"string"},"pinvoke_declared":{"type":"boolean"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","name","rva","flags","impl_flags","code_type","managed_kind","pinvoke_declared","boundary_kind","body_interpretation"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"pinvoke_imports":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"best_fit":{"enum":["assembly-default","enabled","disabled","unknown"],"type":"string"},"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"import_name":{"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"import_scope_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"mapping_flags":{"maximum":65535,"minimum":0,"type":"integer"},"mapping_flags_hex":{"pattern":"^0x[0-9a-f]{4}$","type":"string"},"member_kind":{"enum":["method","field","unknown"],"type":"string"},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"supports_last_error":{"type":"boolean"},"throw_on_unmappable_char":{"enum":["assembly-default","enabled","disabled","unknown"],"type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"verification":{"const":"managed-declaration-only","type":"string"}},"required":["token","row_offset","mapping_flags","mapping_flags_hex","member_token","member_kind","member_name","import_name","import_scope_token","import_scope_name","no_mangle","char_set","call_convention","supports_last_error","best_fit","throw_on_unmappable_char","verification"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"mixed_mode_or_native_header":{"type":"boolean"},"module_ref_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_implementation_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_import_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ready_to_run":{"type":"boolean"}},"required":["module_ref_count","pinvoke_import_count","native_implementation_count","ready_to_run","mixed_mode_or_native_header"],"type":"object"}},"required":["schema_version","artifact","module","metadata","identity_scope","cli_native","module_refs","pinvoke_imports","native_implementations","summary","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Native Boundaries"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two authenticated inspect_managed_members Evidence records using unique-only decoded-CIL-v1/signature and structural method-shape tiers. Names are reported as observations but are not used as a matching basis; metadata tokens remain build-local coordinates bound to each artifact SHA-256 and MVID, and the v1 tuple digest does not itself remap them.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_id":"ev_45a77d52db5dc9beaf59a9b8ee062c945fda709bd0d3a91fa4e972d85a848324","limits":{"max_candidates":25,"max_field_matches":50,"max_method_matches":100},"right_evidence_id":"ev_8d6450759b2bb695b3b41b0db8d7ddc4a3e9f64a52b93194bc59d2b564c2285c"}],"properties":{"left_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidates":50,"max_field_matches":5000,"max_method_matches":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidates":{"default":50,"description":"Maximum permitted candidates for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_field_matches":{"default":5000,"description":"Maximum permitted field matches for this operation.","maximum":50000,"minimum":0,"type":"integer"},"max_method_matches":{"default":10000,"description":"Maximum permitted method matches for this operation.","maximum":50000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"kind":"application","name":"compare_managed_members","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"algorithm":{"additionalProperties":false,"properties":{"name":{"const":"rea-managed-member-comparison","type":"string"},"name_matching":{"const":"not-used","type":"string"},"token_identity":{"const":"build-local","type":"string"},"version":{"const":1,"type":"number"}},"required":["name","version","token_identity","name_matching"],"type":"object"},"comparison_id":{"pattern":"^mmc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"left_status":{"enum":["complete","partial","unavailable"],"type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_status":{"enum":["complete","partial","unavailable"],"type":"string"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","left_status","right_status","omitted_methods","omitted_fields","omitted_candidates"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"fields":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"enum":["exact","high"],"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"status":{"enum":["unchanged","changed"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"candidate_right_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"left":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"fields_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"methods_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","mvid","module_name","metadata_status","methods_total","fields_total"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"matching":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_il_signature":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"field_signature":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural_method_shape":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["exact_il_signature","structural_method_shape","field_signature","ambiguous","unmatched"],"type":"object"},"methods":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"enum":["exact","high"],"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"status":{"enum":["unchanged","changed"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"candidate_right_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"right":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"fields_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"methods_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","mvid","module_name","metadata_status","methods_total","fields_total"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","changed","added","removed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","algorithm","left","right","summary","matching","methods","fields","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Managed Members"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Verify managed P/Invoke/native-boundary declarations against authenticated native export or function Evidence without executing managed code or translating managed metadata tokens into native addresses. The workflow preserves declaration-only, verified, inferred, contradicted, and unresolved states.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limits":{"max_candidates_per_import":25,"max_native_observations":20},"managed_boundaries_evidence_id":"ev_5e142d4464b916bcff63fb0835c686152b5b0473a9f1d5f5060d329b1b29739d","native_observation_evidence_ids":["ev_74758ad108882d5752dae4f8fa030c1ed6c7dd62857cb9d2d3a7ce931b52ee7c"]}],"properties":{"limits":{"additionalProperties":false,"default":{"max_candidates_per_import":25,"max_native_observations":20},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidates_per_import":{"default":25,"description":"Maximum permitted candidates per import for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_native_observations":{"default":20,"description":"Maximum permitted native observations for this operation.","maximum":50,"minimum":1,"type":"integer"}},"type":"object"},"managed_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"native_observation_evidence_ids":{"description":"Unique session-owned native observation Evidence IDs","items":{"description":"Session-owned inspect_macho or analyze_function Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["managed_boundaries_evidence_id","native_observation_evidence_ids"],"type":"object"},"kind":"application","name":"verify_managed_native_boundaries","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"algorithm":{"additionalProperties":false,"properties":{"name":{"const":"rea-managed-native-verification","type":"string"},"token_identity":{"const":"build-local","type":"string"},"token_to_address_mapping":{"const":"not-inferred","type":"string"},"version":{"const":1,"type":"number"}},"required":["name","version","token_identity","token_to_address_mapping"],"type":"object"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"omitted_candidates":{"const":0,"type":"number"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"complete-within-inputs","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"additionalProperties":false,"properties":{"omitted_candidates":{"const":0,"type":"number"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"partial","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"anyOf":[{"additionalProperties":false,"properties":{"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_native_observations":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"status":{"const":"truncated","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"additionalProperties":false,"properties":{"omitted_candidates":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"truncated","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"}]}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":2,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"managed_boundary":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"coverage_state":{"enum":["complete","partial","unavailable"],"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"native_implementations_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_imports_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["evidence_id","artifact_sha256","artifact_path","mvid","metadata_status","pinvoke_imports_total","native_implementations_total","coverage_state"],"type":"object"},"native_implementations":{"additionalProperties":false,"properties":{"reason":{"maxLength":4096,"minLength":1,"type":"string"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unresolved","reason"],"type":"object"},"native_observations":{"additionalProperties":false,"properties":{"accepted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symbols":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"truncated":{"type":"boolean"},"unsupported":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","accepted","unsupported","symbols","truncated"],"type":"object"},"pinvoke_imports":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["exact-export-name","exact-function-name"],"type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"observed","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"verified","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"decorated-name-candidate","type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"inferred","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"inferred","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["no-native-candidate","unsupported-native-evidence"],"type":"string"},"candidates":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"type":"null"},"status":{"const":"unresolved","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"module-mismatch","type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"unknown","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"contradicted","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"}]},"maxItems":50000,"type":"array"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"contradicted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inferred":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_body_unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["verified","inferred","unresolved","contradicted","native_body_unresolved"],"type":"object"},"verification_id":{"pattern":"^mnv_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","verification_id","algorithm","managed_boundary","native_observations","summary","pinvoke_imports","native_implementations","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Verify Managed Native Boundaries"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Import decompiler-produced managed reconstruction against authenticated inspect_managed_members Evidence. The workflow locks each method to artifact SHA-256, MVID, metadata token, signature hash, and the limited member-result-v1 decoded-IL tuple hash, records the decompiler identity and options, and marks C# or pseudocode as analyst inference rather than canonical byte observation.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"decompiler":{"executable_sha256":null,"family":"ilspy","name":"ilspycmd","options":["--disable-updatecheck","--type","Example.Program"],"version":"9.1.0.7988"},"methods":[{"normalized_il_sha256":"5555555555555555555555555555555555555555555555555555555555555555","reconstruction":{"end_line":1,"kind":"decompiled-csharp","language":"csharp","source_path":"/examples/Example.Program.cs","start_line":1,"text":"internal static void Main() { }"},"signature_sha256":"3333333333333333333333333333333333333333333333333333333333333333","token":"0x06000001"}],"notes":["Synthetic example only; decompiler output is imported as inference."],"static_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"properties":{"decompiler":{"additionalProperties":false,"description":"Value for decompiler.","properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of executable."},"family":{"description":"Value for family.","enum":["ilspy","dnspy","dnlib","mono-cecil","other"],"type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":512,"minLength":1,"type":"string"},"options":{"default":[],"description":"Value for options.","items":{"maxLength":512,"type":"string"},"maxItems":50,"type":"array"},"version":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["name","version","family","executable_sha256"],"type":"object"},"methods":{"description":"Value for methods.","items":{"additionalProperties":false,"properties":{"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of normalized il."},"reconstruction":{"additionalProperties":false,"description":"Value for reconstruction.","properties":{"end_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Value for end line."},"kind":{"description":"Value for kind.","enum":["decompiled-csharp","decompiled-il","semantic-pseudocode"],"type":"string"},"language":{"description":"Value for language.","enum":["csharp","il","pseudocode"],"type":"string"},"source_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Local filesystem path for source."},"start_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Value for start line."},"text":{"description":"Value for text.","maxLength":65536,"minLength":1,"type":"string"},"text_sha256":{"description":"Exact SHA-256 digest of text.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["kind","language","text"],"type":"object"},"signature_sha256":{"description":"Exact SHA-256 digest of signature.","pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"description":"Value for token.","pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","signature_sha256","normalized_il_sha256","reconstruction"],"type":"object"},"maxItems":50,"minItems":1,"type":"array"},"notes":{"default":[],"description":"Value for notes.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"static_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["decompiler","methods","static_members_evidence_id"],"type":"object"},"kind":"application","name":"import_managed_reconstruction","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"decompiler":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"family":{"enum":["ilspy","dnspy","dnlib","mono-cecil","other"],"type":"string"},"name":{"maxLength":512,"minLength":1,"type":"string"},"options":{"default":[],"items":{"maxLength":512,"type":"string"},"maxItems":50,"type":"array"},"options_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","version","family","executable_sha256","options","options_sha256"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"executed":{"const":false,"type":"boolean"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"methods":{"items":{"additionalProperties":false,"properties":{"body_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reconstruction":{"additionalProperties":false,"properties":{"end_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"kind":{"enum":["decompiled-csharp","decompiled-il","semantic-pseudocode"],"type":"string"},"language":{"enum":["csharp","il","pseudocode"],"type":"string"},"line_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"start_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"text":{"maxLength":65536,"minLength":1,"type":"string"},"text_length":{"maximum":65536,"minimum":1,"type":"integer"},"text_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["kind","language","text","text_sha256","text_length","line_count","source_path","start_line","end_line"],"type":"object"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"validation":{"additionalProperties":false,"properties":{"canonical_observation":{"const":false,"type":"boolean"},"confidence_floor":{"const":"inference","type":"string"},"exact_build_required":{"const":true,"type":"boolean"},"matched_static_member":{"const":true,"type":"boolean"}},"required":["matched_static_member","exact_build_required","canonical_observation","confidence_floor"],"type":"object"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256","body_sha256","il_size","reconstruction","validation"],"type":"object"},"maxItems":50,"minItems":1,"type":"array"},"notes":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"phase":{"const":"reconstruction-import","type":"string"},"reconstruction_id":{"pattern":"^mre_[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"static_observation":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","artifact_path","byte_length","module_name","mvid","metadata_status"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"decompiled_csharp_methods":{"maximum":50,"minimum":0,"type":"integer"},"decompiled_il_methods":{"maximum":50,"minimum":0,"type":"integer"},"imported_methods":{"maximum":50,"minimum":1,"type":"integer"},"pseudocode_methods":{"maximum":50,"minimum":0,"type":"integer"},"total_text_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["imported_methods","decompiled_csharp_methods","decompiled_il_methods","pseudocode_methods","total_text_bytes"],"type":"object"}},"required":["schema_version","reconstruction_id","phase","executed","static_observation","decompiler","summary","methods","notes","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Import Managed Reconstruction"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Prepare a separately authorized managed runtime-correlation admission plan from authenticated inspect_managed_members Evidence. The operation is default-disabled, requires the managed_runtime permission ceiling and grant, locks the exact artifact SHA-256, MVID, method signature, and limited member-result-v1 decoded-IL tuple hash, distinguishes attach/load/debugger/reflection/instrumentation effects, and records that no target code was executed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"bounds":{"allow_network":false,"allow_ui":false,"max_output_bytes":65536,"max_threads":32,"timeout_ms":5000},"host":{"architecture":"x86_64","clr_family":"dotnet","os":"linux"},"method":{"normalized_il_sha256":"5555555555555555555555555555555555555555555555555555555555555555","signature_sha256":"3333333333333333333333333333333333333333333333333333333333333333","token":"0x06000001"},"requested_effect":"attach","static_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"properties":{"bounds":{"additionalProperties":false,"default":{"allow_network":false,"allow_ui":false,"max_output_bytes":65536,"max_threads":32,"timeout_ms":5000},"description":"Value for bounds.","properties":{"allow_network":{"const":false,"default":false,"description":"Value for allow network.","type":"boolean"},"allow_ui":{"const":false,"default":false,"description":"Value for allow ui.","type":"boolean"},"max_output_bytes":{"default":65536,"description":"Maximum permitted output bytes for this operation.","maximum":1048576,"minimum":0,"type":"integer"},"max_threads":{"default":32,"description":"Maximum permitted threads for this operation.","maximum":256,"minimum":1,"type":"integer"},"timeout_ms":{"default":5000,"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"type":"object"},"host":{"additionalProperties":false,"description":"Value for host.","properties":{"architecture":{"description":"Value for architecture.","enum":["x86","x86_64","arm","arm64"],"type":"string"},"clr_family":{"description":"Value for clr family.","enum":["dotnet","dotnet-framework","mono","unknown"],"type":"string"},"os":{"description":"Value for os.","enum":["linux","macos","windows"],"type":"string"}},"required":["os","clr_family","architecture"],"type":"object"},"method":{"additionalProperties":false,"description":"Value for method.","properties":{"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of normalized il."},"signature_sha256":{"description":"Exact SHA-256 digest of signature.","pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"description":"Value for token.","pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","signature_sha256","normalized_il_sha256"],"type":"object"},"requested_effect":{"description":"Value for requested effect.","enum":["attach","load","debugger","reflection","instrumentation"],"type":"string"},"static_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["method","requested_effect","host","static_members_evidence_id"],"type":"object"},"kind":"application","name":"plan_managed_runtime_correlation","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"authority_model":{"additionalProperties":false,"properties":{"capability":{"const":"managed_runtime","type":"string"},"default_enabled":{"const":false,"type":"boolean"},"per_call_approval_required":{"const":true,"type":"boolean"},"permission_grant_id":{"minLength":1,"type":"string"}},"required":["capability","permission_grant_id","default_enabled","per_call_approval_required"],"type":"object"},"bounds":{"additionalProperties":false,"properties":{"allow_network":{"const":false,"default":false,"type":"boolean"},"allow_ui":{"const":false,"default":false,"type":"boolean"},"max_output_bytes":{"default":65536,"maximum":1048576,"minimum":0,"type":"integer"},"max_threads":{"default":32,"maximum":256,"minimum":1,"type":"integer"},"timeout_ms":{"default":5000,"maximum":60000,"minimum":1,"type":"integer"}},"required":["timeout_ms","max_threads","max_output_bytes","allow_network","allow_ui"],"type":"object"},"correlation_id":{"pattern":"^mrc_[a-f0-9]{64}$","type":"string"},"effect_taxonomy":{"additionalProperties":false,"properties":{"attaches_process":{"type":"boolean"},"instruments_code":{"type":"boolean"},"invokes_target_code":{"const":false,"type":"boolean"},"loads_target":{"type":"boolean"},"uses_debugger":{"type":"boolean"},"uses_reflection":{"type":"boolean"}},"required":["attaches_process","loads_target","uses_debugger","uses_reflection","instruments_code","invokes_target_code"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"executed":{"const":false,"type":"boolean"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"method_lock":{"additionalProperties":false,"properties":{"body_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"body_status":{"enum":["present","partial","absent","malformed","too-large"],"type":"string"},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"exact_build_required":{"const":true,"type":"boolean"},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256","body_sha256","il_size","body_status","exact_build_required"],"type":"object"},"phase":{"const":"admission-plan","type":"string"},"requested_runtime":{"additionalProperties":false,"properties":{"effect":{"enum":["attach","load","debugger","reflection","instrumentation"],"type":"string"},"executable_path":{"minLength":1,"type":"string"},"filesystem":{"const":"owned-artifacts-only","type":"string"},"host":{"additionalProperties":false,"properties":{"architecture":{"enum":["x86","x86_64","arm","arm64"],"type":"string"},"clr_family":{"enum":["dotnet","dotnet-framework","mono","unknown"],"type":"string"},"os":{"enum":["linux","macos","windows"],"type":"string"}},"required":["os","clr_family","architecture"],"type":"object"},"network":{"const":"none","type":"string"}},"required":["effect","host","executable_path","network","filesystem"],"type":"object"},"schema_version":{"const":1,"type":"number"},"static_observation":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","artifact_path","byte_length","module_name","mvid","metadata_status"],"type":"object"},"unsupported_until_executor_exists":{"const":true,"type":"boolean"}},"required":["schema_version","correlation_id","phase","executed","authority_model","static_observation","method_lock","requested_runtime","effect_taxonomy","bounds","unsupported_until_executor_exists","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Plan Managed Runtime Correlation"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Project authenticated managed artifact, member, and native-boundary Evidence into the provider-neutral application graph without executing managed code, loading assemblies, or translating managed metadata tokens to native addresses. The graph preserves managed static observations as managed-specific nodes linked to source Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_artifact_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_members_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_native_boundaries_evidence_id"],"type":"object"}],"examples":[{"limits":{"max_fields":100,"max_methods":100,"max_native_implementations":100,"max_pinvoke_imports":100,"max_types":100},"managed_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"type":"object"},"kind":"application","name":"project_managed_application_graph","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_native_implementations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_pinvoke_imports":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_types":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","omitted_types","omitted_methods","omitted_fields","omitted_pinvoke_imports","omitted_native_implementations"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3,"minItems":1,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"projection_id":{"pattern":"^magp_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"source_evidence":{"additionalProperties":false,"properties":{"managed_artifact_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"managed_members_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"managed_native_boundaries_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["managed_artifact_evidence_id","managed_members_evidence_id","managed_native_boundaries_evidence_id"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"assemblies":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_implementations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_imports":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"types":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["graph_nodes","graph_edges","assemblies","modules","types","methods","fields","pinvoke_imports","native_implementations"],"type":"object"}},"required":["schema_version","projection_id","root_artifact_sha256","source_evidence","summary","graph","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Project Managed Application Graph"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List bounded page targets from an approved user-owned loopback Chrome DevTools Protocol endpoint. Only targets whose current URL matches an approved exact origin are returned; URL credentials, query values, and fragments are redacted.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","limit":100,"offset":0}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["cdp_endpoint","allowed_origins","approved"],"type":"object"},"kind":"browser-provider","name":"list_browser_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"excluded":{"additionalProperties":false,"properties":{"disallowed_origin":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"non_page":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_url":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["disallowed_origin","unsupported_url","non_page"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"origin":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","browser","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Browser Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inspect one approved page target through CDP without evaluating JavaScript, navigating, clicking, closing, or mutating the page. Returns bounded DOM structure, accessibility, scripts, resources, attach-window network and console metadata, workers, and redacted storage inventory as Evidence v2.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":false,"default":false,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":false,"default":false,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id"],"type":"object"},{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved"],"type":"object"}],"examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","console_text_approved":false,"include_accessibility_text":false,"include_console_text":false,"include_json_body_shapes":false,"include_script_sources":false,"include_storage_fingerprints":false,"include_storage_keys":false,"include_websocket_shapes":false,"json_body_schema_approved":false,"limits":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"observation_ms":500,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS","websocket_shape_approved":false}],"type":"object"},"kind":"browser-provider","name":"inspect_web_page","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"accessibility":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"ignored":{"type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"node_id":{"type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"states":{"default":[],"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}]}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored","states"],"type":"object"},"type":"array"},"text_capture":{"additionalProperties":false,"properties":{"excluded_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"additionalProperties":false,"properties":{"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"additionalProperties":false,"properties":{"coverage_started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"items":{"additionalProperties":false,"properties":{"argument_types":{"items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"text_capture":{"additionalProperties":false,"properties":{"retained_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"items":{"additionalProperties":false,"properties":{"argument_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"type":{"type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"type":"number"},"type":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"attribute_names":{"items":{"type":"string"},"type":"array"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"type":"string"},"node_type":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"items":{"additionalProperties":false,"properties":{"frame_id":{"type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"agent_hints":{"items":{"additionalProperties":false,"properties":{"declaration":{"type":"string"},"mechanism":{"enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"items":{"additionalProperties":false,"properties":{"attribute":{"enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"type":"boolean"},"responses":{"items":{"additionalProperties":false,"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"csp":{"additionalProperties":false,"properties":{"directives":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"sources":{"items":{"additionalProperties":false,"properties":{"kind":{"enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"items":{"additionalProperties":false,"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}]},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}]},"destination_scope":{"enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}]},"rel":{"items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"policies":{"additionalProperties":false,"properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}]},"coop":{"anyOf":[{"type":"string"},{"type":"null"}]},"corp":{"anyOf":[{"type":"string"},{"type":"null"}]},"permissions_policy_features":{"items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"type":"string"},"url":{"type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"additionalProperties":false,"properties":{"coverage_started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"type":"boolean"},"requests":{"items":{"additionalProperties":false,"properties":{"body_shapes":{"additionalProperties":false,"properties":{"request":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"response":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"status":{"enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"initiator":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"type":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","url","line","column"],"type":"object"},"method":{"type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"request_id":{"type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"number"},{"type":"null"}]},"url":{"type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"items":{"additionalProperties":false,"properties":{"direction":{"enum":["sent","received"],"type":"string"},"opcode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"additionalProperties":false,"properties":{"format":{"enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"truncated":{"type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}]},"request_id":{"type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"items":{"additionalProperties":false,"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"mime_type":{"type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"resource_key":{"pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"is_module":{"type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}]},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"resource_reconciliation":{"oneOf":[{"additionalProperties":false,"properties":{"resource_key":{"type":"string"},"status":{"const":"exact","type":"string"}},"required":["status","resource_key"],"type":"object"},{"additionalProperties":false,"properties":{"candidate_resource_keys":{"items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"const":"no_exact_sanitized_url","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"oneOf":[{"additionalProperties":false,"properties":{"included":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["included","reason"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string"}},"required":["script_key","frame_id","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"additionalProperties":false,"properties":{"cache_names":{"items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"items":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"identity_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","type":"string"},"fingerprints_complete":{"default":false,"type":"boolean"},"indexed_db_names":{"items":{"type":"string"},"type":"array"},"local_storage_keys":{"items":{"type":"string"},"type":"array"},"origin":{"type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"session_storage_keys":{"items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"values_redacted":{"const":true,"type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","content_fingerprints","fingerprint_algorithm","fingerprints_complete","values_redacted"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"origin":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"target_id":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","url","origin","attached","opener_target_id","parent_frame_id"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Web Page"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Capture explicitly approved JavaScript source from one approved CDP page and statically derive a bounded chunk graph, route and endpoint candidates, vendor fingerprints, page-declared WebMCP metadata, and optional separately approved source-map evidence. JavaScript is parsed but never executed.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"analysis_limits":{"default":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"description":"Value for analysis limits.","properties":{"max_ast_nodes":{"default":250000,"description":"Maximum permitted ast nodes for this operation.","maximum":2000000,"minimum":1,"type":"integer"},"max_findings":{"default":1000,"description":"Maximum permitted findings for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_original_sources":{"default":2000,"description":"Maximum permitted original sources for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_source_map_bytes":{"default":4194304,"description":"Maximum permitted source map bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_source_map_mappings":{"default":10000,"description":"Maximum permitted source map mappings for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_source_maps":{"default":100,"description":"Maximum permitted source maps for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_total_source_map_bytes":{"default":16777216,"description":"Maximum permitted total source map bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"}},"type":"object"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"fetch_source_maps":{"const":false,"default":false,"description":"Value for fetch source maps.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"source_map_fetch_approved":{"const":false,"default":false,"description":"Explicit operator approval for source map fetch.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved"],"type":"object"},{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"analysis_limits":{"default":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"description":"Value for analysis limits.","properties":{"max_ast_nodes":{"default":250000,"description":"Maximum permitted ast nodes for this operation.","maximum":2000000,"minimum":1,"type":"integer"},"max_findings":{"default":1000,"description":"Maximum permitted findings for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_original_sources":{"default":2000,"description":"Maximum permitted original sources for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_source_map_bytes":{"default":4194304,"description":"Maximum permitted source map bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_source_map_mappings":{"default":10000,"description":"Maximum permitted source map mappings for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_source_maps":{"default":100,"description":"Maximum permitted source maps for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_total_source_map_bytes":{"default":16777216,"description":"Maximum permitted total source map bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"}},"type":"object"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"fetch_source_maps":{"const":true,"description":"Value for fetch source maps.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"source_map_fetch_approved":{"const":true,"description":"Explicit operator approval for source map fetch.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved","fetch_source_maps","source_map_fetch_approved"],"type":"object"}],"examples":[{"allowed_origins":["https://app.example.test"],"analysis_limits":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","fetch_source_maps":false,"include_accessibility_text":false,"include_script_sources":true,"include_storage_keys":false,"observation_ms":500,"source_capture_approved":true,"source_map_fetch_approved":false,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"type":"object"},"kind":"browser-provider","name":"analyze_web_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"capture":{"additionalProperties":false,"properties":{"scripts_analyzed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_artifacts":{"items":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text_available":{"const":true,"type":"boolean"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text_available"],"type":"object"},"type":"array"},"target_url":{"type":"string"}},"required":["target_url","scripts_observed","scripts_analyzed","source_artifacts"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"dropped_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete_within_limits","truncated","partial"],"type":"string"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","parsed_scripts","parse_failures","visited_ast_nodes","dropped_findings"],"type":"object"},"inferences":{"items":{"additionalProperties":false,"properties":{"basis":{"items":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"detector":{"type":"string"},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","artifact_sha256","line","column","detector"],"type":"object"},"minItems":1,"type":"array"},"confidence":{"enum":["low","medium","high"],"type":"string"},"kind":{"enum":["vendor_fingerprint","route_framework","bundle_runtime"],"type":"string"},"value":{"type":"string"}},"required":["kind","value","confidence","basis"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"observations":{"additionalProperties":false,"properties":{"chunks":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"from_script_key":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require","worker_import"],"type":"string"},"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"resolved_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_script_key","kind","specifier","resolved_url","location"],"type":"object"},"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"script_key":{"type":"string"},"url":{"type":"string"}},"required":["script_key","url","artifact_sha256","bytes"],"type":"object"},"type":"array"}},"required":["nodes","edges"],"type":"object"},"endpoints":{"items":{"additionalProperties":false,"properties":{"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"mechanism":{"type":"string"},"value":{"type":"string"}},"required":["value","mechanism","location"],"type":"object"},"type":"array"},"routes":{"items":{"additionalProperties":false,"properties":{"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"mechanism":{"type":"string"},"value":{"type":"string"}},"required":["value","mechanism","location"],"type":"object"},"type":"array"},"source_maps":{"additionalProperties":false,"properties":{"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dropped_script_keys":{"items":{"type":"string"},"type":"array"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"declared_url":{"type":"string"},"limitation":{"type":"null"},"mappings":{"items":{"additionalProperties":false,"properties":{"generated_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"generated_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"type":"string"}},"required":["generated_line","generated_column","source","original_line","original_column","name"],"type":"object"},"type":"array"},"original_module_edges":{"items":{"additionalProperties":false,"properties":{"from_source":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require"],"type":"string"},"resolved_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_source","kind","specifier","resolved_source"],"type":"object"},"type":"array"},"original_sources":{"items":{"additionalProperties":false,"properties":{"artifact":{"anyOf":[{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},{"type":"null"}]},"source":{"type":"string"}},"required":["source","artifact"],"type":"object"},"type":"array"},"script_key":{"type":"string"},"status":{"const":"included","type":"string"}},"required":["script_key","declared_url","artifact","original_sources","original_module_edges","mappings","status","limitation"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"declared_url":{"type":"string"},"limitation":{"type":"string"},"mappings":{"items":{"additionalProperties":false,"properties":{"generated_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"generated_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"type":"string"}},"required":["generated_line","generated_column","source","original_line","original_column","name"],"type":"object"},"type":"array"},"original_module_edges":{"items":{"additionalProperties":false,"properties":{"from_source":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require"],"type":"string"},"resolved_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_source","kind","specifier","resolved_source"],"type":"object"},"type":"array"},"original_sources":{"items":{"additionalProperties":false,"properties":{"artifact":{"anyOf":[{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},{"type":"null"}]},"source":{"type":"string"}},"required":["source","artifact"],"type":"object"},"type":"array"},"script_key":{"type":"string"},"status":{"const":"truncated","type":"string"}},"required":["script_key","declared_url","artifact","original_sources","original_module_edges","mappings","status","limitation"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"type":"null"},"declared_url":{"type":"string"},"limitation":{"type":"string"},"mappings":{"prefixItems":[],"type":"array"},"original_module_edges":{"prefixItems":[],"type":"array"},"original_sources":{"prefixItems":[],"type":"array"},"script_key":{"type":"string"},"status":{"enum":["fetch_failed","invalid","policy_filtered","truncated"],"type":"string"}},"required":["script_key","declared_url","status","artifact","original_sources","original_module_edges","mappings","limitation"],"type":"object"}]},"type":"array"},"processed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_requested","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","requested","processed","dropped","dropped_script_keys","items"],"type":"object"},"webmcp_declarations":{"items":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"schema_property_names":{"items":{"type":"string"},"type":"array"},"trust":{"const":"page-declared-untrusted","type":"string"}},"required":["name","description","schema_property_names","trust","location"],"type":"object"},"type":"array"}},"required":["chunks","routes","endpoints","webmcp_declarations","source_maps"],"type":"object"},"schema_version":{"const":1,"type":"number"},"unknowns":{"items":{"additionalProperties":false,"properties":{"affected_script_keys":{"items":{"type":"string"},"type":"array"},"dimension":{"type":"string"},"reason":{"type":"string"}},"required":["dimension","reason","affected_script_keys"],"type":"object"},"type":"array"}},"required":["schema_version","capture","observations","inferences","unknowns","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Web Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Arm a bounded CDP observation window while the user operates the page. Allows approved same-origin reload and SPA navigation, records ordered navigation, redirect, lifecycle, and failure metadata, and stops before retaining an out-of-policy destination.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","max_timeline_events":2000,"observation_ms":10000,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"max_timeline_events":{"default":2000,"description":"Maximum permitted timeline events for this operation.","maximum":20000,"minimum":1,"type":"integer"},"observation_ms":{"default":10000,"description":"Value for observation ms.","maximum":60000,"minimum":1,"type":"integer"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved"],"type":"object"},"kind":"browser-provider","name":"observe_web_session","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"target":{"additionalProperties":false,"properties":{"final_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"initial_url":{"type":"string"},"target_id":{"type":"string"}},"required":["target_id","initial_url","final_url"],"type":"object"},"timeline":{"items":{"additionalProperties":false,"properties":{"destination_scope":{"anyOf":[{"enum":["approved","outside_policy","unsupported"],"type":"string"},{"type":"null"}]},"detail":{"anyOf":[{"type":"string"},{"type":"null"}]},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"loader_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timestamp":{"minimum":0,"type":"number"},"type":{"enum":["navigation_requested","navigation_committed","same_origin_reload","same_document_navigation","redirect","load_failed","lifecycle","target_terminated"],"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["sequence","type","timestamp","frame_id","loader_id","request_id","url","destination_scope","detail"],"type":"object"},"type":"array"},"window":{"additionalProperties":false,"properties":{"armed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"end_reason":{"enum":["window_elapsed","target_left_scope","target_terminated"],"type":"string"},"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"requested_ms":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["armed_at","ended_at","requested_ms","end_reason"],"type":"object"}},"required":["schema_version","browser","target","window","timeline","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Observe Web Session"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inventory page-registered WebMCP tools using the experimental CDP WebMCP domain. Metadata is bounded and page-declared-untrusted; REA never registers or invokes discovered tools.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","max_schema_bytes":262144,"max_schema_depth":20,"max_schema_nodes":5000,"max_tools":500,"observation_ms":100,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"max_schema_bytes":{"default":262144,"description":"Maximum permitted schema bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_schema_depth":{"default":20,"description":"Maximum permitted schema depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_schema_nodes":{"default":5000,"description":"Maximum permitted schema nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_tools":{"default":500,"description":"Maximum permitted tools for this operation.","maximum":5000,"minimum":1,"type":"integer"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved"],"type":"object"},"kind":"browser-provider","name":"discover_webmcp_tools","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"status":{"enum":["available","unavailable"],"type":"string"},"target":{"additionalProperties":false,"properties":{"origin":{"type":"string"},"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"enum":["declarative","imperative"],"type":"string"},"description":{"type":"string"},"frame_id":{"type":"string"},"frame_url":{"type":"string"},"input_schema_shape":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"name":{"type":"string"},"owner_origin":{"type":"string"},"registration_source":{"anyOf":[{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"url":{"type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}]},"tool_key":{"pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Discover Webmcp Tools"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Compare either passive web captures or step-indexed browser scenarios. Scenario comparison aligns exact step IDs, records deterministic literal normalization, and exposes bounded artifact-level changes plus alignment failures. Missing or truncated evidence never proves equality.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"after":{"description":"Later passive web-page capture.","properties":{"inspection":{"description":"Value for inspection.","properties":{"accessibility":{"description":"Value for accessibility.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for description."},"ignored":{"description":"Value for ignored.","type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"node_id":{"description":"Value for node id.","type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent id."},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for role."},"states":{"default":[],"description":"Value for states.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}],"description":"Value for value."}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored"],"type":"object"},"type":"array"},"text_capture":{"description":"Value for text capture.","properties":{"excluded_fields":{"description":"Value for excluded fields.","maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"description":"Value for truncated fields.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"description":"Value for capture window.","properties":{"ended_at":{"description":"Value for ended at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"description":"Value for observation ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"description":"Value for started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"description":"Value for console.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"description":"Value for events.","items":{"properties":{"argument_types":{"description":"Value for argument types.","items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"text_capture":{"description":"Value for text capture.","properties":{"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"description":"Value for truncated values.","maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"description":"Value for values.","items":{"properties":{"argument_index":{"description":"Value for argument index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","type":"string"},"type":{"description":"Value for type.","type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"description":"Value for timestamp.","type":"number"},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"description":"Value for dom.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"attribute_names":{"description":"Value for attribute names.","items":{"type":"string"},"type":"array"},"index":{"description":"Value for index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"description":"Value for node name.","type":"string"},"node_type":{"description":"Value for node type.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"description":"Value for node value length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"description":"Value for parent index.","maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"description":"Value for frames.","items":{"properties":{"frame_id":{"description":"Value for frame id.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent frame id."},"url":{"description":"Value for url.","type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"metadata":{"description":"Value for metadata.","properties":{"agent_hints":{"description":"Value for agent hints.","items":{"properties":{"declaration":{"description":"Value for declaration.","type":"string"},"mechanism":{"description":"Value for mechanism.","enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"description":"Value for dom urls.","items":{"properties":{"attribute":{"description":"Value for attribute.","enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"description":"Value for node index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"description":"Value for excluded dom urls.","maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"description":"Value for headers allowlisted.","type":"boolean"},"responses":{"description":"Value for responses.","items":{"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for content encoding."},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for content length."},"csp":{"description":"Value for csp.","properties":{"directives":{"description":"Value for directives.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"sources":{"description":"Value for sources.","items":{"properties":{"kind":{"description":"Value for kind.","enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for value."}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"description":"Value for hash count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"description":"Value for nonce count.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"description":"Value for links.","items":{"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for as."},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for crossorigin."},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for href."},"rel":{"description":"Value for rel.","items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for type."}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"policies":{"description":"Value for policies.","properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coep."},"coop":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coop."},"corp":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for corp."},"permissions_policy_features":{"description":"Value for permissions policy features.","items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for referrer policy."},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for x content type options."}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"description":"Value for request id.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"description":"Value for network.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"},"requests":{"description":"Value for requests.","items":{"properties":{"body_shapes":{"description":"Value for body shapes.","properties":{"request":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for request."},"response":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for response."},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for encoded data length."},"initiator":{"description":"Value for initiator.","properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","url","line","column"],"type":"object"},"method":{"description":"Value for method.","type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"request_id":{"description":"Value for request id.","type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for resource type."},"status":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Current lifecycle or verification status."},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"description":"Value for websocket events.","items":{"properties":{"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["sent","received"],"type":"string"},"opcode":{"description":"Value for opcode.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"properties":{"format":{"description":"Declared input artifact format.","enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for json shape."},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}],"description":"Value for payload shape."},"request_id":{"description":"Value for request id.","type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"description":"Value for resources.","items":{"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for content size."},"mime_type":{"description":"Value for mime type.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_key":{"description":"Value for resource key.","pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"scripts":{"description":"Value for scripts.","properties":{"items":{"description":"Value for items.","items":{"properties":{"cdp_hash":{"description":"Value for cdp hash.","type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for frame id."},"is_module":{"description":"Whether is module.","type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for language."},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_reconciliation":{"description":"Value for resource reconciliation.","oneOf":[{"properties":{"resource_key":{"description":"Value for resource key.","type":"string"},"status":{"const":"exact","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","resource_key"],"type":"object"},{"properties":{"candidate_resource_keys":{"description":"Value for candidate resource keys.","items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"properties":{"reason":{"const":"no_exact_sanitized_url","description":"Value for reason.","type":"string"},"status":{"const":"unmatched","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"description":"Value for script key.","pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"description":"Value for source.","oneOf":[{"properties":{"included":{"const":false,"description":"Value for included.","type":"boolean"},"reason":{"description":"Value for reason.","type":"string"}},"required":["included","reason"],"type":"object"},{"properties":{"artifact":{"description":"Value for artifact.","properties":{"bytes":{"description":"Value for bytes.","maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","description":"Value for charset.","type":"string"},"media_type":{"description":"Value for media type.","maxLength":256,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"description":"Value for included.","type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for source map url."},"url":{"description":"Value for url.","type":"string"}},"required":["script_key","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"description":"Value for storage.","properties":{"cache_names":{"description":"Value for cache names.","items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"description":"Value for content fingerprints.","items":{"properties":{"complete":{"description":"Value for complete.","type":"boolean"},"identity_sha256":{"description":"Exact SHA-256 digest of identity.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"description":"Value for scope.","enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of value."}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","description":"Value for fingerprint algorithm.","type":"string"},"fingerprints_complete":{"default":false,"description":"Value for fingerprints complete.","type":"boolean"},"indexed_db_names":{"description":"Value for indexed db names.","items":{"type":"string"},"type":"array"},"local_storage_keys":{"description":"Value for local storage keys.","items":{"type":"string"},"type":"array"},"origin":{"description":"Value for origin.","type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for quota."},"session_storage_keys":{"description":"Value for session storage keys.","items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for usage."},"values_redacted":{"const":true,"description":"Value for values redacted.","type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","values_redacted"],"type":"object"},"target":{"description":"Value for target.","properties":{"attached":{"description":"Value for attached.","type":"boolean"},"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"title":{"description":"Value for title.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"description":"Value for workers.","items":{"properties":{"attached":{"description":"Value for attached.","type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for opener target id."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for parent frame id."},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","url","origin","attached"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"},"webmcp":{"anyOf":[{"properties":{"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["available","unavailable"],"type":"string"},"target":{"description":"Value for target.","properties":{"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"description":"Value for tools.","properties":{"items":{"description":"Value for items.","items":{"properties":{"annotations":{"description":"Value for annotations.","properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for autosubmit."},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for read only."},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for untrusted content."}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"description":"Value for declaration kind.","enum":["declarative","imperative"],"type":"string"},"description":{"description":"Value for description.","type":"string"},"frame_id":{"description":"Value for frame id.","type":"string"},"frame_url":{"description":"Value for frame url.","type":"string"},"input_schema_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for input schema shape."},"name":{"description":"Exact name used by this operation.","type":"string"},"owner_origin":{"description":"Value for owner origin.","type":"string"},"registration_source":{"anyOf":[{"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"url":{"description":"Value for url.","type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}],"description":"Value for registration source."},"tool_key":{"description":"Value for tool key.","pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for webmcp."}},"required":["inspection"],"type":"object"},"before":{"description":"Earlier passive web-page capture.","properties":{"inspection":{"description":"Value for inspection.","properties":{"accessibility":{"description":"Value for accessibility.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for description."},"ignored":{"description":"Value for ignored.","type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"node_id":{"description":"Value for node id.","type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent id."},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for role."},"states":{"default":[],"description":"Value for states.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}],"description":"Value for value."}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored"],"type":"object"},"type":"array"},"text_capture":{"description":"Value for text capture.","properties":{"excluded_fields":{"description":"Value for excluded fields.","maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"description":"Value for truncated fields.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"description":"Value for capture window.","properties":{"ended_at":{"description":"Value for ended at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"description":"Value for observation ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"description":"Value for started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"description":"Value for console.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"description":"Value for events.","items":{"properties":{"argument_types":{"description":"Value for argument types.","items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"text_capture":{"description":"Value for text capture.","properties":{"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"description":"Value for truncated values.","maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"description":"Value for values.","items":{"properties":{"argument_index":{"description":"Value for argument index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","type":"string"},"type":{"description":"Value for type.","type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"description":"Value for timestamp.","type":"number"},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"description":"Value for dom.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"attribute_names":{"description":"Value for attribute names.","items":{"type":"string"},"type":"array"},"index":{"description":"Value for index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"description":"Value for node name.","type":"string"},"node_type":{"description":"Value for node type.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"description":"Value for node value length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"description":"Value for parent index.","maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"description":"Value for frames.","items":{"properties":{"frame_id":{"description":"Value for frame id.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent frame id."},"url":{"description":"Value for url.","type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"metadata":{"description":"Value for metadata.","properties":{"agent_hints":{"description":"Value for agent hints.","items":{"properties":{"declaration":{"description":"Value for declaration.","type":"string"},"mechanism":{"description":"Value for mechanism.","enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"description":"Value for dom urls.","items":{"properties":{"attribute":{"description":"Value for attribute.","enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"description":"Value for node index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"description":"Value for excluded dom urls.","maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"description":"Value for headers allowlisted.","type":"boolean"},"responses":{"description":"Value for responses.","items":{"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for content encoding."},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for content length."},"csp":{"description":"Value for csp.","properties":{"directives":{"description":"Value for directives.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"sources":{"description":"Value for sources.","items":{"properties":{"kind":{"description":"Value for kind.","enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for value."}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"description":"Value for hash count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"description":"Value for nonce count.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"description":"Value for links.","items":{"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for as."},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for crossorigin."},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for href."},"rel":{"description":"Value for rel.","items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for type."}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"policies":{"description":"Value for policies.","properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coep."},"coop":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coop."},"corp":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for corp."},"permissions_policy_features":{"description":"Value for permissions policy features.","items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for referrer policy."},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for x content type options."}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"description":"Value for request id.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"description":"Value for network.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"},"requests":{"description":"Value for requests.","items":{"properties":{"body_shapes":{"description":"Value for body shapes.","properties":{"request":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for request."},"response":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for response."},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for encoded data length."},"initiator":{"description":"Value for initiator.","properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","url","line","column"],"type":"object"},"method":{"description":"Value for method.","type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"request_id":{"description":"Value for request id.","type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for resource type."},"status":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Current lifecycle or verification status."},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"description":"Value for websocket events.","items":{"properties":{"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["sent","received"],"type":"string"},"opcode":{"description":"Value for opcode.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"properties":{"format":{"description":"Declared input artifact format.","enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for json shape."},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}],"description":"Value for payload shape."},"request_id":{"description":"Value for request id.","type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"description":"Value for resources.","items":{"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for content size."},"mime_type":{"description":"Value for mime type.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_key":{"description":"Value for resource key.","pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"scripts":{"description":"Value for scripts.","properties":{"items":{"description":"Value for items.","items":{"properties":{"cdp_hash":{"description":"Value for cdp hash.","type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for frame id."},"is_module":{"description":"Whether is module.","type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for language."},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_reconciliation":{"description":"Value for resource reconciliation.","oneOf":[{"properties":{"resource_key":{"description":"Value for resource key.","type":"string"},"status":{"const":"exact","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","resource_key"],"type":"object"},{"properties":{"candidate_resource_keys":{"description":"Value for candidate resource keys.","items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"properties":{"reason":{"const":"no_exact_sanitized_url","description":"Value for reason.","type":"string"},"status":{"const":"unmatched","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"description":"Value for script key.","pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"description":"Value for source.","oneOf":[{"properties":{"included":{"const":false,"description":"Value for included.","type":"boolean"},"reason":{"description":"Value for reason.","type":"string"}},"required":["included","reason"],"type":"object"},{"properties":{"artifact":{"description":"Value for artifact.","properties":{"bytes":{"description":"Value for bytes.","maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","description":"Value for charset.","type":"string"},"media_type":{"description":"Value for media type.","maxLength":256,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"description":"Value for included.","type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for source map url."},"url":{"description":"Value for url.","type":"string"}},"required":["script_key","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"description":"Value for storage.","properties":{"cache_names":{"description":"Value for cache names.","items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"description":"Value for content fingerprints.","items":{"properties":{"complete":{"description":"Value for complete.","type":"boolean"},"identity_sha256":{"description":"Exact SHA-256 digest of identity.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"description":"Value for scope.","enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of value."}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","description":"Value for fingerprint algorithm.","type":"string"},"fingerprints_complete":{"default":false,"description":"Value for fingerprints complete.","type":"boolean"},"indexed_db_names":{"description":"Value for indexed db names.","items":{"type":"string"},"type":"array"},"local_storage_keys":{"description":"Value for local storage keys.","items":{"type":"string"},"type":"array"},"origin":{"description":"Value for origin.","type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for quota."},"session_storage_keys":{"description":"Value for session storage keys.","items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for usage."},"values_redacted":{"const":true,"description":"Value for values redacted.","type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","values_redacted"],"type":"object"},"target":{"description":"Value for target.","properties":{"attached":{"description":"Value for attached.","type":"boolean"},"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"title":{"description":"Value for title.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"description":"Value for workers.","items":{"properties":{"attached":{"description":"Value for attached.","type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for opener target id."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for parent frame id."},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","url","origin","attached"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"},"webmcp":{"anyOf":[{"properties":{"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["available","unavailable"],"type":"string"},"target":{"description":"Value for target.","properties":{"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"description":"Value for tools.","properties":{"items":{"description":"Value for items.","items":{"properties":{"annotations":{"description":"Value for annotations.","properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for autosubmit."},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for read only."},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for untrusted content."}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"description":"Value for declaration kind.","enum":["declarative","imperative"],"type":"string"},"description":{"description":"Value for description.","type":"string"},"frame_id":{"description":"Value for frame id.","type":"string"},"frame_url":{"description":"Value for frame url.","type":"string"},"input_schema_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for input schema shape."},"name":{"description":"Exact name used by this operation.","type":"string"},"owner_origin":{"description":"Value for owner origin.","type":"string"},"registration_source":{"anyOf":[{"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"url":{"description":"Value for url.","type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}],"description":"Value for registration source."},"tool_key":{"description":"Value for tool key.","pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for webmcp."}},"required":["inspection"],"type":"object"},"max_changes":{"default":2000,"description":"Maximum normalized change records to retain.","maximum":20000,"minimum":1,"type":"integer"}},"required":["before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after_scenario":{"additionalProperties":false,"description":"Later browser scenario capture.","properties":{"browser":{"additionalProperties":false,"description":"Value for browser.","properties":{"cleanup":{"description":"Value for cleanup.","enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"description":"Operation mode that selects the requested behavior.","enum":["launch","connect"],"type":"string"},"process_ownership":{"description":"Value for process ownership.","enum":["provider-owned","external"],"type":"string"},"product":{"description":"Value for product.","maxLength":1024,"minLength":1,"type":"string"},"version":{"description":"Value for version.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"description":"Value for duration ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"description":"Value for events.","properties":{"dropped":{"description":"Value for dropped.","maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"description":"Value for items.","items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","description":"Value for kind.","type":"string"},"level":{"description":"Value for level.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","maxLength":65536,"type":"string"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","description":"Value for kind.","type":"string"},"message":{"description":"Value for message.","maxLength":65536,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}],"description":"Value for stack."},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","maxLength":1024,"minLength":1,"type":"string"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","maxLength":65536,"type":"string"},"payload_type":{"const":"text","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","type":"null"},"payload_type":{"const":"binary","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","description":"Value for kind.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"description":"Value for suggested filename.","maxLength":1024,"type":"string"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"description":"Value for scenario.","properties":{"action_count":{"description":"Value for action count.","maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"description":"Value for secret references.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"description":"Value for start origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"steps":{"description":"Value for steps.","items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","type":"null"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","description":"Current lifecycle or verification status.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","maxLength":4096,"type":"string"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["failed","cancelled"],"type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"},"before_scenario":{"additionalProperties":false,"description":"Earlier browser scenario capture.","properties":{"browser":{"additionalProperties":false,"description":"Value for browser.","properties":{"cleanup":{"description":"Value for cleanup.","enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"description":"Operation mode that selects the requested behavior.","enum":["launch","connect"],"type":"string"},"process_ownership":{"description":"Value for process ownership.","enum":["provider-owned","external"],"type":"string"},"product":{"description":"Value for product.","maxLength":1024,"minLength":1,"type":"string"},"version":{"description":"Value for version.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"description":"Value for duration ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"description":"Value for events.","properties":{"dropped":{"description":"Value for dropped.","maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"description":"Value for items.","items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","description":"Value for kind.","type":"string"},"level":{"description":"Value for level.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","maxLength":65536,"type":"string"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","description":"Value for kind.","type":"string"},"message":{"description":"Value for message.","maxLength":65536,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}],"description":"Value for stack."},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","maxLength":1024,"minLength":1,"type":"string"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","maxLength":65536,"type":"string"},"payload_type":{"const":"text","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","type":"null"},"payload_type":{"const":"binary","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","description":"Value for kind.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"description":"Value for suggested filename.","maxLength":1024,"type":"string"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"description":"Value for scenario.","properties":{"action_count":{"description":"Value for action count.","maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"description":"Value for secret references.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"description":"Value for start origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"steps":{"description":"Value for steps.","items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","type":"null"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","description":"Current lifecycle or verification status.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","maxLength":4096,"type":"string"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["failed","cancelled"],"type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"},"max_changes":{"default":2000,"description":"Maximum normalized change records to retain.","maximum":20000,"minimum":1,"type":"integer"},"normalization":{"additionalProperties":false,"default":{"rules":[]},"description":"Exact-literal normalization policy.","properties":{"rules":{"default":[],"description":"Value for rules.","items":{"additionalProperties":false,"properties":{"artifacts":{"description":"Artifact families whose durable string fields use this rule.","items":{"enum":["action_state","dom","accessibility","url","history","storage","events"],"type":"string"},"maxItems":7,"minItems":1,"type":"array"},"match":{"description":"Exact public literal to replace; regular expressions are not used.","maxLength":4096,"minLength":1,"type":"string"},"replacement":{"description":"Recorded replacement text used in normalized comparison.","maxLength":4096,"type":"string"},"rule_id":{"description":"Stable rule identity; rules execute in rule_id order.","maxLength":64,"minLength":1,"type":"string"}},"required":["rule_id","artifacts","match","replacement"],"type":"object"},"maxItems":128,"type":"array"}},"type":"object"}},"required":["before_scenario","after_scenario"],"type":"object"}],"examples":[{"after_scenario":{"browser":{"cleanup":"disconnected-external","mode":"connect","process_ownership":"external","product":"Chromium","version":"149"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"duration_ms":10,"events":{"dropped":0,"items":[],"retained":0},"limitations":[],"scenario":{"action_count":1,"allowed_origins":["https://app.example.test"],"secret_references":[],"start_origin":"https://app.example.test"},"schema_version":1,"steps":[{"action":"scenario_start","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":0,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"scenario_start","step_index":0},{"action":"click","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":10,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"open-settings","step_index":1}]},"before_scenario":{"browser":{"cleanup":"disconnected-external","mode":"connect","process_ownership":"external","product":"Chromium","version":"149"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"duration_ms":10,"events":{"dropped":0,"items":[],"retained":0},"limitations":[],"scenario":{"action_count":1,"allowed_origins":["https://app.example.test"],"secret_references":[],"start_origin":"https://app.example.test"},"schema_version":1,"steps":[{"action":"scenario_start","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":0,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"scenario_start","step_index":0},{"action":"click","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":10,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"open-settings","step_index":1}]},"max_changes":2000,"normalization":{"rules":[{"artifacts":["dom","accessibility"],"match":"build-123","replacement":"[BUILD_ID]","rule_id":"volatile-build-id"}]}}],"type":"object"},"kind":"browser-provider","name":"compare_web_captures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"after_only":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":129,"type":"array"},"aligned_steps":{"maximum":129,"minimum":0,"type":"integer"},"before_only":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":129,"type":"array"},"failures":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["duplicate_before_step_id","duplicate_after_step_id","missing_before_step","missing_after_step","action_mismatch","capture_context_mismatch"],"type":"string"},"reason":{"maxLength":2048,"minLength":1,"type":"string"},"step_id":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["code","step_id","reason"],"type":"object"},"maxItems":520,"type":"array"},"status":{"enum":["aligned","partial","failed"],"type":"string"}},"required":["status","aligned_steps","before_only","after_only","failures"],"type":"object"},"artifact_diffs":{"additionalProperties":false,"properties":{"omitted":{"maximum":1032,"minimum":0,"type":"integer"},"retained":{"maximum":1032,"minimum":0,"type":"integer"},"total":{"maximum":1032,"minimum":0,"type":"integer"}},"required":["total","retained","omitted"],"type":"object"},"comparison_kind":{"const":"browser_scenario","type":"string"},"limitations":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"normalization":{"additionalProperties":false,"properties":{"built_in_rules":{"items":{"enum":["ignore_step_elapsed_ms","ignore_event_sequence","ignore_event_step_index","compare_screenshot_content_digest","compare_normalized_text_content"],"type":"string"},"maxItems":5,"minItems":5,"type":"array"},"rules":{"items":{"additionalProperties":false,"properties":{"artifacts":{"description":"Artifact families whose durable string fields use this rule.","items":{"enum":["action_state","dom","accessibility","url","history","storage","events"],"type":"string"},"maxItems":7,"minItems":1,"type":"array"},"match":{"description":"Exact public literal to replace; regular expressions are not used.","maxLength":4096,"minLength":1,"type":"string"},"replacement":{"description":"Recorded replacement text used in normalized comparison.","maxLength":4096,"type":"string"},"rule_id":{"description":"Stable rule identity; rules execute in rule_id order.","maxLength":64,"minLength":1,"type":"string"}},"required":["rule_id","artifacts","match","replacement"],"type":"object"},"maxItems":128,"type":"array"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["built_in_rules","rules","sha256"],"type":"object"},"overall_status":{"enum":["changed","unchanged","unknown"],"type":"string"},"schema_version":{"const":1,"type":"number"},"steps":{"items":{"additionalProperties":false,"properties":{"after_action":{"maxLength":64,"minLength":1,"type":"string"},"after_step_index":{"maximum":128,"minimum":0,"type":"integer"},"artifact_diffs":{"items":{"additionalProperties":false,"properties":{"after_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"after_state":{"enum":["captured","not_requested","missing","truncated"],"type":"string"},"artifact":{"enum":["action_state","screenshot","dom","accessibility","url","history","storage","events"],"type":"string"},"before_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"before_state":{"enum":["captured","not_requested","missing","truncated"],"type":"string"},"reason":{"anyOf":[{"maxLength":2048,"minLength":1,"type":"string"},{"type":"null"}]},"status":{"enum":["changed","unknown"],"type":"string"}},"required":["artifact","status","before_state","after_state","before_sha256","after_sha256","reason"],"type":"object"},"maxItems":8,"type":"array"},"before_action":{"maxLength":64,"minLength":1,"type":"string"},"before_step_index":{"maximum":128,"minimum":0,"type":"integer"},"omitted_artifact_diffs":{"maximum":8,"minimum":0,"type":"integer"},"status":{"enum":["changed","unchanged","unknown"],"type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"}},"required":["step_id","before_step_index","after_step_index","before_action","after_action","status","artifact_diffs","omitted_artifact_diffs"],"type":"object"},"maxItems":129,"type":"array"}},"required":["schema_version","comparison_kind","overall_status","normalization","alignment","steps","artifact_diffs","limitations"],"type":"object"},{"additionalProperties":false,"properties":{"after_target":{"additionalProperties":false,"properties":{"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url"],"type":"object"},"before_target":{"additionalProperties":false,"properties":{"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url"],"type":"object"},"dimensions":{"additionalProperties":false,"properties":{"accessibility":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}],"default":{"changes":[],"omitted_changes":0,"reason":"Dimension was not recorded by this version 1 capture diff.","status":"unknown","total_changes":0}},"dom_structure":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"metadata":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"network":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"resources":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"scripts":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"storage":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}],"default":{"changes":[],"omitted_changes":0,"reason":"Dimension was not recorded by this version 1 capture diff.","status":"unknown","total_changes":0}},"webmcp":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]}},"required":["dom_structure","scripts","resources","network","metadata","webmcp","accessibility","storage"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"overall_status":{"enum":["changed","unchanged","unknown"],"type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","overall_status","before_target","after_target","dimensions","limitations"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Web Captures"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Capture the current visible viewport of one approved page as a bounded, content-addressed PNG artifact. Screenshot capture requires separate explicit approval and never scrolls, navigates, or evaluates page JavaScript.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","maximum_image_bytes":4194304,"screenshot_approved":true,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"maximum_image_bytes":{"default":4194304,"description":"Bounded byte count for maximum image.","maximum":8388608,"minimum":1,"type":"integer"},"screenshot_approved":{"const":true,"description":"Explicit operator approval for screenshot.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved","screenshot_approved"],"type":"object"},"kind":"browser-provider","name":"capture_web_screenshot","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"captured_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"target":{"additionalProperties":false,"properties":{"origin":{"type":"string"},"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url","origin"],"type":"object"},"viewport":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"}},"required":["schema_version","browser","target","captured_at","viewport","artifact","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Web Screenshot"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Compare two self-verifying PNG screenshot artifacts with bounded local pixel metrics. Returns exact changed-pixel ratios and channel deltas without OCR or external services.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"after":{"bytes":70,"data_base64":"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==","media_type":"image/png","sha256":"153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c","uri":"rea://web-screenshot/sha256/153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"},"before":{"bytes":70,"data_base64":"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==","media_type":"image/png","sha256":"153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c","uri":"rea://web-screenshot/sha256/153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"},"channel_threshold":0,"maximum_pixels":16000000}],"properties":{"after":{"description":"The later or right-hand observation to compare.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"before":{"description":"The earlier or left-hand observation to compare.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"channel_threshold":{"default":0,"description":"Value for channel threshold.","maximum":255,"minimum":0,"type":"integer"},"maximum_pixels":{"default":16000000,"description":"Value for maximum pixels.","maximum":32000000,"minimum":1,"type":"integer"}},"required":["before","after"],"type":"object"},"kind":"browser-provider","name":"compare_web_screenshots","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"const":0,"type":"number"},"changed_ratio":{"const":0,"type":"number"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"maximum":255,"minimum":0,"type":"integer"},"mean_absolute_channel_delta":{"maximum":255,"minimum":0,"type":"number"},"schema_version":{"const":1,"type":"number"},"status":{"const":"identical","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"changed_ratio":{"exclusiveMinimum":0,"maximum":1,"type":"number"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"exclusiveMinimum":0,"maximum":255,"type":"integer"},"mean_absolute_channel_delta":{"exclusiveMinimum":0,"maximum":255,"type":"number"},"schema_version":{"const":1,"type":"number"},"status":{"const":"different","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"type":"null"},"changed_ratio":{"type":"null"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"const":0,"type":"number"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"type":"null"},"mean_absolute_channel_delta":{"type":"null"},"schema_version":{"const":1,"type":"number"},"status":{"const":"dimension_mismatch","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Web Screenshots"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Run one approved, bounded browser scenario through Playwright. Launch mode owns and terminates a temporary browser profile; connect mode attaches to one exact loopback CDP target and disconnects without terminating the external browser. Only the fixed action vocabulary is accepted. Navigation, storage, requests, redirects, secrets, redaction, captures, and limits must be declared before execution. Returns step-indexed Evidence with screenshots, DOM, accessibility, URL/history/storage state, runtime events, explicit missing/truncated sections, and equality eligibility.","effects":{"accessesNetwork":true,"changesUiState":true,"idempotent":false,"launchesProcess":true,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"actions":[{"action":"wait_for","locator":{"kind":"test_id","value":"application-ready"},"state":"visible","step_id":"ready"}],"allowed_origins":["https://app.example.test"],"approved":true,"browser":{"cleanup":"close-and-delete-profile","executable_path":"/opt/chromium/chrome","headless":true,"mode":"launch","user_data":"temporary-owned"},"capture":{"after_each_step":["screenshot","url","accessibility"],"at_end":["dom","history","storage"],"events":["console","page-errors","network","websockets"]},"environment":{"color_scheme":"light","locale":"en-US","reduced_motion":"reduce","service_workers":"block","timezone":"UTC","viewport":{"device_scale_factor":1,"height":720,"width":1280}},"limits":{"action_timeout_ms":5000,"max_accessibility_nodes":10000,"max_dom_nodes":10000,"max_duration_ms":60000,"max_events":2000,"max_frames":100,"max_popups":10,"max_screenshot_bytes":4194304,"max_screenshots":16,"max_storage_entries":256,"max_total_metadata_bytes":4194304,"max_websockets":100,"max_workers":20,"navigation_timeout_ms":10000},"redaction":{"header_names":["authorization","cookie","proxy-authorization","set-cookie"],"query_parameter_names":[],"secret_values":"replace-with-secret-reference"},"request_replay":{"mode":"disabled"},"schema_version":1,"secrets":[],"start_url":{"query":[],"url":"https://app.example.test/"},"storage":{"cookies":[],"local_storage":[],"session_storage":[]}}],"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"action":{"const":"goto","description":"Value for action.","type":"string"},"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"wait_until":{"description":"Value for wait until.","enum":["commit","domcontentloaded","load"],"type":"string"}},"required":["step_id","action","destination","wait_until"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"click","description":"Value for action.","type":"string"},"button":{"default":"left","description":"Value for button.","enum":["left","middle","right"],"type":"string"},"click_count":{"default":1,"description":"Value for click count.","maximum":3,"minimum":1,"type":"integer"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"fill","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["step_id","action","locator","value"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"press","description":"Value for action.","type":"string"},"key":{"description":"Value for key.","maxLength":64,"minLength":1,"type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator","key"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"select_option","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["step_id","action","locator","value"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","enum":["check","uncheck"],"type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"wait_for","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"state":{"description":"Value for state.","enum":["attached","detached","visible","hidden"],"type":"string"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator","state"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"wait_for_timeout","description":"Value for action.","type":"string"},"duration_ms":{"description":"Value for duration ms.","maximum":60000,"minimum":1,"type":"integer"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["step_id","action","duration_ms"],"type":"object"}]},"maxItems":128,"minItems":1,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"browser":{"description":"Value for browser.","oneOf":[{"additionalProperties":false,"properties":{"cleanup":{"const":"close-and-delete-profile","description":"Value for cleanup.","type":"string"},"executable_path":{"description":"Local filesystem path for executable.","maxLength":4096,"minLength":1,"type":"string"},"headless":{"const":true,"description":"Value for headless.","type":"boolean"},"mode":{"const":"launch","description":"Operation mode that selects the requested behavior.","type":"string"},"user_data":{"const":"temporary-owned","description":"Value for user data.","type":"string"}},"required":["mode","executable_path","headless","user_data","cleanup"],"type":"object"},{"additionalProperties":false,"properties":{"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"cleanup":{"const":"disconnect-only","description":"Value for cleanup.","type":"string"},"mode":{"const":"connect","description":"Operation mode that selects the requested behavior.","type":"string"},"ownership":{"const":"external","description":"Value for ownership.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","cdp_endpoint","target_id","ownership","cleanup"],"type":"object"}]},"capture":{"additionalProperties":false,"description":"Value for capture.","properties":{"after_each_step":{"description":"Value for after each step.","items":{"enum":["screenshot","dom","accessibility","url","history","storage"],"type":"string"},"maxItems":6,"type":"array"},"at_end":{"description":"Value for at end.","items":{"enum":["screenshot","dom","accessibility","url","history","storage"],"type":"string"},"maxItems":6,"type":"array"},"events":{"description":"Value for events.","items":{"enum":["console","page-errors","network","websockets","frames","workers","popups","downloads"],"type":"string"},"type":"array"}},"required":["after_each_step","at_end","events"],"type":"object"},"environment":{"additionalProperties":false,"description":"Value for environment.","properties":{"color_scheme":{"description":"Value for color scheme.","enum":["light","dark","no-preference"],"type":"string"},"locale":{"description":"Value for locale.","maxLength":64,"minLength":2,"pattern":"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$","type":"string"},"reduced_motion":{"description":"Value for reduced motion.","enum":["reduce","no-preference"],"type":"string"},"service_workers":{"const":"block","description":"Value for service workers.","type":"string"},"timezone":{"description":"Value for timezone.","maxLength":128,"minLength":1,"pattern":"^[A-Za-z0-9_+-]+(?:\\\\/[A-Za-z0-9_+-]+)*$","type":"string"},"viewport":{"additionalProperties":false,"description":"Value for viewport.","properties":{"device_scale_factor":{"default":1,"description":"Value for device scale factor.","maximum":4,"minimum":0.5,"type":"number"},"height":{"description":"Value for height.","maximum":4320,"minimum":240,"type":"integer"},"width":{"description":"Value for width.","maximum":7680,"minimum":320,"type":"integer"}},"required":["width","height"],"type":"object"}},"required":["viewport","locale","timezone","color_scheme","reduced_motion","service_workers"],"type":"object"},"limits":{"additionalProperties":false,"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"action_timeout_ms":{"description":"Value for action timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"max_accessibility_nodes":{"description":"Maximum permitted accessibility nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_dom_nodes":{"description":"Maximum permitted dom nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_duration_ms":{"description":"Maximum permitted duration ms for this operation.","maximum":300000,"minimum":100,"type":"integer"},"max_events":{"description":"Maximum permitted events for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_frames":{"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_popups":{"description":"Maximum permitted popups for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_screenshot_bytes":{"description":"Maximum permitted screenshot bytes for this operation.","maximum":8388608,"minimum":1,"type":"integer"},"max_screenshots":{"description":"Maximum permitted screenshots for this operation.","maximum":256,"minimum":0,"type":"integer"},"max_storage_entries":{"description":"Maximum permitted storage entries for this operation.","maximum":512,"minimum":0,"type":"integer"},"max_total_metadata_bytes":{"description":"Maximum permitted total metadata bytes for this operation.","maximum":67108864,"minimum":1024,"type":"integer"},"max_websockets":{"description":"Maximum permitted websockets for this operation.","maximum":10000,"minimum":0,"type":"integer"},"max_workers":{"description":"Maximum permitted workers for this operation.","maximum":1000,"minimum":0,"type":"integer"},"navigation_timeout_ms":{"description":"Value for navigation timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["max_duration_ms","action_timeout_ms","navigation_timeout_ms","max_events","max_frames","max_workers","max_popups","max_websockets","max_dom_nodes","max_accessibility_nodes","max_screenshots","max_screenshot_bytes","max_storage_entries","max_total_metadata_bytes"],"type":"object"},"redaction":{"additionalProperties":false,"description":"Value for redaction.","properties":{"header_names":{"description":"Value for header names.","items":{"maxLength":256,"minLength":1,"type":"string"},"maxItems":128,"type":"array"},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"minLength":1,"type":"string"},"maxItems":128,"type":"array"},"secret_values":{"const":"replace-with-secret-reference","description":"Value for secret values.","type":"string"}},"required":["secret_values"],"type":"object"},"request_replay":{"description":"Value for request replay.","oneOf":[{"additionalProperties":false,"properties":{"mode":{"const":"disabled","description":"Operation mode that selects the requested behavior.","type":"string"}},"required":["mode"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"const":"exact","description":"Operation mode that selects the requested behavior.","type":"string"},"routes":{"description":"Value for routes.","items":{"additionalProperties":false,"properties":{"method":{"description":"Value for method.","enum":["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS"],"type":"string"},"request":{"additionalProperties":false,"description":"Value for request.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"response":{"description":"Value for response.","oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]},"headers":{"description":"Value for headers.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+\\\\-.^_`|~0-9A-Za-z]+$","type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"}},"required":["kind","status"],"type":"object"},{"additionalProperties":false,"properties":{"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"kind":{"const":"redirect","description":"Value for kind.","type":"string"},"status":{"anyOf":[{"const":301,"type":"number"},{"const":302,"type":"number"},{"const":303,"type":"number"},{"const":307,"type":"number"},{"const":308,"type":"number"}],"description":"Current lifecycle or verification status."}},"required":["kind","status","destination"],"type":"object"}]},"route_id":{"description":"Value for route id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["route_id","method","request","response"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"unmatched":{"description":"Value for unmatched.","enum":["abort","passthrough-approved-origins"],"type":"string"}},"required":["mode","unmatched","routes"],"type":"object"}]},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"secrets":{"default":[],"description":"Value for secrets.","items":{"additionalProperties":false,"properties":{"environment_variable":{"description":"Value for environment variable.","pattern":"^[A-Z_][A-Z0-9_]{0,127}$","type":"string"},"purpose":{"description":"Value for purpose.","enum":["input","storage","request-replay"],"type":"string"},"redaction":{"const":"replace-with-secret-reference","description":"Value for redaction.","type":"string"},"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["secret_id","environment_variable","purpose","redaction"],"type":"object"},"maxItems":64,"type":"array"},"start_url":{"additionalProperties":false,"description":"Value for start url.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"storage":{"additionalProperties":false,"description":"Value for storage.","properties":{"cookies":{"description":"Value for cookies.","items":{"additionalProperties":false,"properties":{"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value","destination","http_only","secure","same_site"],"type":"object"},"maxItems":128,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"additionalProperties":false,"properties":{"entries":{"description":"Value for entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":128,"type":"array"},"origin":{"description":"Value for origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["origin","entries"],"type":"object"},"maxItems":32,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"additionalProperties":false,"properties":{"entries":{"description":"Value for entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":128,"type":"array"},"origin":{"description":"Value for origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["origin","entries"],"type":"object"},"maxItems":32,"type":"array"}},"type":"object"}},"required":["schema_version","browser","start_url","allowed_origins","environment","actions","storage","request_replay","redaction","capture","limits","approved"],"type":"object"},"kind":"browser-provider","name":"capture_browser_scenario","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"cleanup":{"enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"enum":["launch","connect"],"type":"string"},"process_ownership":{"enum":["provider-owned","external"],"type":"string"},"product":{"maxLength":1024,"minLength":1,"type":"string"},"version":{"maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"properties":{"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","type":"string"},"level":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"maxLength":65536,"type":"string"},"url":{"anyOf":[{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}]}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","type":"string"},"message":{"maxLength":65536,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}]},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"type":"null"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"type":"null"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"type":"null"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"maximum":599,"minimum":100,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"maxLength":1024,"minLength":1,"type":"string"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"type":"null"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"maxLength":65536,"type":"string"},"payload_type":{"const":"text","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"type":"null"},"payload_type":{"const":"binary","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}]}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"maxLength":1024,"type":"string"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"properties":{"action_count":{"maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"type":"number"},"steps":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"maxLength":64,"minLength":1,"type":"string"},"after_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"properties":{"accessibility":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"current_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"items":{"additionalProperties":false,"properties":{"name":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"cookies":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"null"},"event_sequence_end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"maxLength":64,"minLength":1,"type":"string"},"after_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"properties":{"accessibility":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"current_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"items":{"additionalProperties":false,"properties":{"name":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"cookies":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"maxLength":4096,"type":"string"},"event_sequence_end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"enum":["failed","cancelled"],"type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Browser Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List Electron file:// page targets from an approved user-owned loopback CDP endpoint. Every path is canonicalized and must remain contained by an approved filesystem root, including after symlink resolution.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_file_roots":["/Applications/Example.app/Contents/Resources"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9223","limit":100,"offset":0}],"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["cdp_endpoint","allowed_file_roots","approved"],"type":"object"},"kind":"electron-provider","name":"list_electron_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"excluded":{"additionalProperties":false,"properties":{"non_page":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_root":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_url":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_root","unsupported_url","non_page"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"}},"required":["target_id","type","title","file_path","attached"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","browser","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Electron Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inspect one approved Electron file page through CDP. Returns root-confined frames, DOM structure, resource paths, and scripts without evaluating renderer JavaScript or invoking Electron APIs; script contents require separate approval.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"include_script_sources":{"const":false,"default":false,"description":"Whether to include script sources in the result.","type":"boolean"},"limits":{"default":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":500,"description":"Maximum permitted scripts for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":false,"default":false,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_file_roots","approved","target_id"],"type":"object"},{"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"include_script_sources":{"const":true,"description":"Whether to include script sources in the result.","type":"boolean"},"limits":{"default":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":500,"description":"Maximum permitted scripts for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_file_roots","approved","target_id","include_script_sources","source_capture_approved"],"type":"object"}],"examples":[{"allowed_file_roots":["/Applications/Example.app/Contents/Resources"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9223","include_script_sources":false,"limits":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"observation_ms":100,"source_capture_approved":false,"target_id":"TARGET_ID_FROM_LIST_ELECTRON_TARGETS"}],"type":"object"},"kind":"electron-provider","name":"inspect_electron_page","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"additionalProperties":false,"properties":{"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"dom":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"attribute_names":{"items":{"type":"string"},"type":"array"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"type":"string"},"node_type":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"items":{"additionalProperties":false,"properties":{"file_path":{"type":"string"},"frame_id":{"type":"string"},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["frame_id","parent_frame_id","file_path"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"resources":{"items":{"additionalProperties":false,"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"file_path":{"type":"string"},"mime_type":{"type":"string"},"resource_key":{"pattern":"^electron_resource_[a-f0-9]{64}$","type":"string"},"type":{"type":"string"}},"required":["resource_key","file_path","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":1,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"type":"string"},"file_path":{"type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"is_module":{"type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}]},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"script_key":{"pattern":"^electron_script_[a-f0-9]{64}$","type":"string"},"source":{"oneOf":[{"additionalProperties":false,"properties":{"included":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["included","reason"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"type":"boolean"}},"required":["included","artifact"],"type":"object"}]}},"required":["script_key","frame_id","file_path","cdp_hash","length","is_module","language","source"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"}},"required":["target_id","type","title","file_path","attached"],"type":"object"},"workers":{"default":[],"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"opener_target_id":{"anyOf":[{"maxLength":256,"minLength":1,"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"maxLength":256,"minLength":1,"type":"string"},{"type":"null"}]},"target_id":{"maxLength":256,"minLength":1,"type":"string"},"type":{"maxLength":100,"minLength":1,"type":"string"}},"required":["target_id","type","file_path","attached","opener_target_id","parent_frame_id"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","scripts","resources","workers","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Electron Page"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Statically reconstruct one approved local ASAR or extracted JavaScript application without executing it. The default summary returns architecture/security counts, top evidence-backed findings, unknowns, and paged graph resource URIs; request detail=full only when the complete graph must be returned immediately. Identical inputs are deterministic, so do not repeat the call or reread full Evidence without a specific missing detail.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"detail":"summary","format":"auto","input_path":"/Applications/Example.app/Contents/Resources/app.asar","source_map_read_approved":false}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"detail":{"default":"summary","description":"summary returns bounded findings and paged graph resource URIs; full returns the complete graph only when explicitly required","enum":["summary","full"],"type":"string"},"format":{"default":"auto","description":"Declared input artifact format.","enum":["auto","asar","directory"],"type":"string"},"input_path":{"description":"Local filesystem path for input.","maxLength":16384,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_artifact_entry_bytes":134217728,"max_ast_nodes":2000000,"max_compression_ratio":1000,"max_depth":64,"max_entries":8000,"max_findings":8000,"max_modules":20000,"max_parse_milliseconds":30000,"max_path_bytes":4096,"max_source_map_sources":5000,"max_text_file_bytes":8388608,"max_text_files":5000,"max_total_artifact_bytes":536870912,"max_total_text_bytes":134217728},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_artifact_entry_bytes":{"default":134217728,"description":"Maximum permitted artifact entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_ast_nodes":{"default":2000000,"description":"Maximum permitted ast nodes for this operation.","maximum":20000000,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":64,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_entries":{"default":8000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_findings":{"default":8000,"description":"Maximum permitted findings for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_modules":{"default":20000,"description":"Maximum permitted modules for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_parse_milliseconds":{"default":30000,"description":"Maximum permitted parse milliseconds for this operation.","maximum":300000,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_source_map_sources":{"default":5000,"description":"Maximum permitted source map sources for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_text_file_bytes":{"default":8388608,"description":"Maximum permitted text file bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"},"max_text_files":{"default":5000,"description":"Maximum permitted text files for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_total_artifact_bytes":{"default":536870912,"description":"Maximum permitted total artifact bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_total_text_bytes":{"default":134217728,"description":"Maximum permitted total text bytes for this operation.","maximum":536870912,"minimum":1,"type":"integer"}},"type":"object"},"source_map_read_approved":{"default":false,"description":"Explicit operator approval for source map read.","type":"boolean"}},"required":["input_path","approved"],"type":"object"},"kind":"electron-provider","name":"analyze_javascript_application","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"node_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_kinds":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"}},"required":["kind","count"],"type":"object"},"type":"array"},"pages":{"additionalProperties":false,"properties":{"edges":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"nodes":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"page_limit":{"maximum":500,"minimum":1,"type":"integer"}},"required":["nodes","edges","page_limit"],"type":"object"},"roots":{"additionalProperties":false,"properties":{"items":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["items","total","truncated"],"type":"object"},"top_findings":{"items":{"additionalProperties":false,"properties":{"authority":{"type":"string"},"confidence":{"type":"string"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"$ref":"#/$defs/__schema0"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"state":{"type":"string"}},"required":["node_id","kind","label","authority","state","confidence","location"],"type":"object"},"type":"array"}},"required":["graph_id","node_count","edge_count","roots","node_kinds","top_findings","coverage","limitations","pages"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","summary","statistics","limitations","unknowns","graph"],"type":"object"},{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"node_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_kinds":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"}},"required":["kind","count"],"type":"object"},"type":"array"},"pages":{"additionalProperties":false,"properties":{"edges":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"nodes":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"page_limit":{"maximum":500,"minimum":1,"type":"integer"}},"required":["nodes","edges","page_limit"],"type":"object"},"roots":{"additionalProperties":false,"properties":{"items":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["items","total","truncated"],"type":"object"},"top_findings":{"items":{"additionalProperties":false,"properties":{"authority":{"type":"string"},"confidence":{"type":"string"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"$ref":"#/$defs/__schema0"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"state":{"type":"string"}},"required":["node_id","kind","label","authority","state","confidence","location"],"type":"object"},"type":"array"}},"required":["graph_id","node_count","edge_count","roots","node_kinds","top_findings","coverage","limitations","pages"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":2,"type":"number"},"semantic_graph":{"additionalProperties":false,"properties":{"coverage":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"fingerprints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query_tool":{"const":"trace_javascript_semantics","type":"string"},"relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_frontiers":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["graph_id","nodes","relations","unknown_frontiers","fingerprints","coverage","query_tool"],"type":"object"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","summary","statistics","limitations","unknowns","graph","semantic_graph"],"type":"object"}]},{"oneOf":[{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","graph","summary","statistics","limitations"],"type":"object"},{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":2,"type":"number"},"semantic_graph":{"additionalProperties":false,"properties":{"application_graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"families":{"items":{"additionalProperties":false,"properties":{"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"omitted_relations":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"retained_relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete","partial","unknown","unsupported"],"type":"string"},"unknown_ids":{"items":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"}},"required":["family","status","retained_relations","omitted_relations","unknown_ids"],"type":"object"},"maxItems":12,"minItems":12,"type":"array"},"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_nodes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"omitted_relations":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_nodes","omitted_relations","limits","families"],"type":"object"},"fingerprints":{"items":{"additionalProperties":false,"properties":{"algorithm":{"const":"rea.javascript-semantic-function/v1","type":"string"},"components":{"additionalProperties":false,"properties":{"control_flow_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"effects":{"items":{"enum":["async","child-process","event","network","promise","resource","timer"],"type":"string"},"maxItems":7,"type":"array"},"literal_set_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"normalized_ast_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameter_arity":{"maximum":10000,"minimum":0,"type":"integer"},"relation_shape_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["parameter_arity","normalized_ast_sha256","control_flow_sha256","relation_shape_sha256","literal_set_sha256","effects"],"type":"object"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"fingerprint_id":{"pattern":"^jsrg_fingerprint_[a-f0-9]{64}$","type":"string"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"function_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"status":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["function_node_id","algorithm","status","components","limitations","evidence","fingerprint_id","fingerprint_sha256"],"type":"object"},"maxItems":20000,"type":"array"},"graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"application_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"function_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"role_key":{"maxLength":1024,"minLength":1,"type":"string"},"source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]}},"required":["artifact_sha256","module_path","source_range","role_key"],"type":"object"},"kind":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["kind","identity","function_node_id","application_node_ids","label","properties","evidence","node_id","identifier_strategy"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"relations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"relation_id":{"pattern":"^jsrg_relation_[a-f0-9]{64}$","type":"string"},"resolution":{"enum":["resolved","candidate"],"type":"string"},"source_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","resolution","properties","evidence","relation_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"root_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptSemanticRelationGraph","type":"string"},"schema_version":{"const":1,"type":"number"},"unknowns":{"items":{"additionalProperties":false,"properties":{"candidate_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reason":{"enum":["ambiguous-target","bound-reached","dynamic-call","dynamic-property","eval-or-generated-code","incomplete-module","missing-source","unsupported-syntax"],"type":"string"},"relation_kinds":{"items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":45,"minItems":1,"type":"array"},"unknown_id":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"}},"required":["node_id","family","relation_kinds","reason","detail","candidate_node_ids","evidence","unknown_id"],"type":"object"},"maxItems":100000,"type":"array"}},"required":["schema","schema_version","root_artifact_sha256","application_graph_id","root_node_ids","nodes","relations","fingerprints","unknowns","coverage","limitations","graph_id"],"type":"object"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","graph","summary","statistics","limitations","semantic_graph"],"type":"object"}]}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Javascript Application"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Reconcile verified static JavaScript application graphs with existing passive web/Electron CDP, passive V8 Inspector, or provider-owned active Electron Evidence. Active Electron captures contribute an explicitly partial target-only runtime record; they never invent renderer scripts, frames, workers, or execution claims. Exact captured-source digests take priority over caller-declared file/URL mappings; target, frame, script, and worker ambiguity remains explicit, and source-map authority stays separate.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"runtime_observations":[{"authority":"external-service","confidence":"observed","environment":null,"evidence_id":"ev_e9ffe953ecde3cee6f8b1e2e2fc8be64bf58d17b3c680d1230587294f6b02c3a","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"browser":{"js_version":"1","product":"Electron/example","protocol_version":"1.3","revision":"example","user_agent":"Electron example"},"capture_window":{"ended_at":"2026-07-15T00:00:00.100Z","observation_ms":100,"started_at":"2026-07-15T00:00:00.000Z"},"completeness":{"attach_limited_sections":[],"conditions":["complete_within_window"],"dropped_events":{"console_events":0,"network_requests":0,"scripts":0,"timeline_events":0,"total":0,"webmcp_tools":0,"websocket_connections":0,"websocket_frames":0},"excluded":[],"policy_filtered_sections":[],"status":"complete_within_window","truncated_sections":[],"unavailable_sections":[]},"dom":{"nodes":[],"total_nodes":0},"frames":[],"limitations":["Example passive capture."],"resources":[],"schema_version":1,"scripts":{"items":[{"cdp_hash":"example","file_path":"/Applications/Example.app/Contents/Resources/app/renderer.js","frame_id":null,"is_module":true,"language":"JavaScript","length":29,"script_key":"electron_script_4444444444444444444444444444444444444444444444444444444444444444","source":{"artifact":{"bytes":29,"charset":"utf-8","media_type":"text/javascript","sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","text":"export const example = true;\\n","uri":"rea://web-content/sha256/c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"},"included":true}}],"total":1},"target":{"attached":false,"file_path":"/Applications/Example.app/Contents/Resources/app/index.html","target_id":"example-target","title":"Example","type":"page"},"workers":[]},"operation":"inspect_electron_page","parameters":{"allowed_file_roots":["/Applications/Example.app/Contents/Resources/app"],"cdp_endpoint":"http://127.0.0.1:9223","include_script_sources":true,"source_capture_approved":true,"target_id":"example-target"},"predicate_type":"rea.electron-page-inspection/v1","provider":{"id":"rea-cdp-electron","name":"REA Electron file-page CDP observation provider","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"static_layers":[{"analysis":{"authority":"shipped-artifact","confidence":"derived","environment":null,"evidence_id":"ev_9f1239eec535ee47ca0af92a544b16a3b4be7ce7478e0a7a6b6201b91cc39d5c","evidence_links":[],"limitations":[],"locations":[],"normalized_result":{"format":"directory","graph":{"coverage":{"limits":[],"omitted_count":0,"status":"complete","truncated":false},"edges":[],"graph_id":"jag_361585714eb0138287533474fede3727b19167348e3843c577f82b68337c7234","limitations":[],"nodes":[{"identity":{"sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","stability":"global-exact","strategy":"content-digest"},"kind":"javascript-asset","node_id":"jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e","observations":[{"evidence":{"artifact":{"artifact_id":"art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","available":true,"sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"},"authority":"artifact-bytes","confidence":"exact","coverage":{"limits":[],"omitted_count":0,"status":"complete","truncated":false},"evidence_ids":[],"extractor":{"executable_sha256":null,"name":"rea-javascript-application","operation":"inventory-relevant-file","version":"1"},"limitations":[],"location":{"available":true,"value":{"kind":"artifact-path","path":"renderer.js"}},"state":"observed"},"identifier_strategy":{"stability":"observation-exact","strategy":"semantic-content-sha256"},"label":"renderer.js","observation_id":"jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230","properties":{"bytes":29,"path":"renderer.js"}}]}],"root_node_ids":["jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"],"schema":"JavaScriptApplicationGraph","schema_version":1},"input_path":"/Applications/Example.app/Contents/Resources/app","inventory_graph_sha256":"3333333333333333333333333333333333333333333333333333333333333333","inventory_manifest_id":"agm_2222222222222222222222222222222222222222222222222222222222222222","limitations":[],"root_artifact_sha256":"1111111111111111111111111111111111111111111111111111111111111111","schema_version":1,"statistics":{"findings":0,"invalid_utf8_files":0,"limit_omitted_text_files":0,"modules":0,"nested_asar_containers":0,"omitted_text_files":0,"parse_failures":0,"parsed_javascript_files":1,"policy_filtered_text_files":0,"relevant_files":1,"text_bytes_read":29,"text_files_selected":1,"truncated_scopes":0,"visited_ast_nodes":1},"summary":{"browser_windows":0,"context_bridge_apis":0,"explicit_web_preferences":0,"exposed_api_members":0,"ipc":{"ambiguous_renderer_transmissions":0,"dynamic_channel_operations":0,"literal_channels":0,"main_handlers":0,"operations":0,"paired_renderer_transmissions":0,"renderer_listeners":0,"renderer_transmissions":0,"unpaired_literal_renderer_transmissions":0},"native_addon_bindings":0,"preload_entrypoints":0,"resolved_native_addon_bindings":0,"resolved_utility_entrypoints":0,"sender_validation_observations":0,"utility_processes":0}},"operation":"analyze_javascript_application","parameters":{"approved":true,"source_map_read_approved":false},"predicate_type":"rea.javascript-application-analysis/v1","provider":{"id":"rea-javascript-application","name":"REA JavaScript application analyzer","version":"1"},"raw_result":null,"schema_version":2,"subject":{"architecture":null,"digest":{"sha256":"1111111111111111111111111111111111111111111111111111111111111111"},"format":"directory","local_path":"/Applications/Example.app/Contents/Resources/app","name":"app"}},"role":"application"}]}],"properties":{"limits":{"additionalProperties":false,"default":{"max_reconciliation_items":20000,"max_runtime_entities":10000,"max_static_load_states":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_reconciliation_items":{"default":20000,"description":"Maximum permitted reconciliation items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_runtime_entities":{"default":10000,"description":"Maximum permitted runtime entities for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_static_load_states":{"default":20000,"description":"Maximum permitted static load states for this operation.","maximum":50000,"minimum":1,"type":"integer"}},"type":"object"},"runtime_observations":{"description":"Value for runtime observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"static_layers":{"description":"Value for static layers.","items":{"additionalProperties":false,"properties":{"analysis":{"additionalProperties":false,"description":"Value for analysis.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"role":{"description":"Value for role.","enum":["application","cache","assets"],"type":"string"},"runtime_mappings":{"default":[],"description":"Value for runtime mappings.","items":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","description":"Value for artifact prefix.","maxLength":4096,"type":"string"},"kind":{"const":"file-root","description":"Value for kind.","type":"string"},"root":{"description":"Value for root.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","root"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","description":"Value for artifact prefix.","maxLength":4096,"type":"string"},"kind":{"const":"url-prefix","description":"Value for kind.","type":"string"},"prefix":{"description":"Value for prefix.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","prefix"],"type":"object"}]},"maxItems":32,"type":"array"}},"required":["role","analysis"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"}},"required":["static_layers","runtime_observations"],"type":"object"},"kind":"electron-provider","name":"reconcile_javascript_runtime","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"omitted_graph_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_reconciliation_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_runtime_entities":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_static_load_states":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_runtime_entities","omitted_reconciliation_items","omitted_static_load_states","omitted_graph_items"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":40,"minItems":2,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"reconciliation_id":{"pattern":"^jrr_[a-f0-9]{64}$","type":"string"},"reconciliations":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["content-and-location","content-sha256","module-source-sha256","artifact-path","operator-file-mapping","operator-url-mapping","none"],"type":"string"},"candidate_static_count":{"maximum":800000,"minimum":0,"type":"integer"},"candidate_static_nodes":{"items":{"additionalProperties":false,"properties":{"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["static_layer_id","static_node_id"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"entity_kind":{"enum":["target","frame","script","worker"],"type":"string"},"reason":{"enum":["content-and-location-match","unique-content-match","unique-location-match","ambiguous-static-candidates","captured-content-disagrees-with-static-location","no-static-content-match","no-authorized-location-mapping","runtime-frame-unattributed","static-or-runtime-coverage-incomplete","reconciliation-limit-reached"],"type":"string"},"reconciliation_id":{"pattern":"^jrr_item_[a-f0-9]{64}$","type":"string"},"runtime_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"runtime_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"matched","type":"string"}},"required":["reconciliation_id","entity_kind","runtime_evidence_id","runtime_node_id","basis","confidence","reason","candidate_static_count","candidate_static_nodes","static_layer_id","static_node_id","status"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["content-and-location","content-sha256","module-source-sha256","artifact-path","operator-file-mapping","operator-url-mapping","none"],"type":"string"},"candidate_static_count":{"maximum":800000,"minimum":0,"type":"integer"},"candidate_static_nodes":{"items":{"additionalProperties":false,"properties":{"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["static_layer_id","static_node_id"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"entity_kind":{"enum":["target","frame","script","worker"],"type":"string"},"reason":{"enum":["content-and-location-match","unique-content-match","unique-location-match","ambiguous-static-candidates","captured-content-disagrees-with-static-location","no-static-content-match","no-authorized-location-mapping","runtime-frame-unattributed","static-or-runtime-coverage-incomplete","reconciliation-limit-reached"],"type":"string"},"reconciliation_id":{"pattern":"^jrr_item_[a-f0-9]{64}$","type":"string"},"runtime_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"runtime_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"static_layer_id":{"type":"null"},"static_node_id":{"type":"null"},"status":{"enum":["ambiguous","unmatched","unknown"],"type":"string"}},"required":["reconciliation_id","entity_kind","runtime_evidence_id","runtime_node_id","basis","confidence","reason","candidate_static_count","candidate_static_nodes","static_layer_id","static_node_id","status"],"type":"object"}]},"maxItems":50000,"type":"array"},"runtime_captures":{"items":{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["browser","electron","v8-inspector","electron-active"],"type":"string"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts_complete_within_scope":{"type":"boolean"},"target_key":{"maxLength":4096,"minLength":1,"type":"string"},"target_location":{"maxLength":4096,"minLength":1,"type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"workers":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["evidence_id","capture_sha256","kind","target_node_id","target_key","target_location","frames","scripts","workers","scripts_complete_within_scope"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"schema_version":{"const":1,"type":"number"},"source_map_authority":{"additionalProperties":false,"properties":{"limitation":{"maxLength":4096,"minLength":1,"type":"string"},"runtime_script_declarations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_layers_with_read_approval":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"used_for_primary_matching":{"const":false,"type":"boolean"}},"required":["used_for_primary_matching","static_layers_with_read_approval","runtime_script_declarations","limitation"],"type":"object"},"static_layers":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"format":{"enum":["asar","directory"],"type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"role":{"enum":["application","cache","assets"],"type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_mappings":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","maxLength":4096,"type":"string"},"kind":{"const":"file-root","type":"string"},"root":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","root","artifact_prefix"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","maxLength":4096,"type":"string"},"kind":{"const":"url-prefix","type":"string"},"prefix":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","prefix","artifact_prefix"],"type":"object"}]},"maxItems":32,"type":"array"}},"required":["layer_id","role","evidence_id","graph_id","root_artifact_sha256","input_path","format","runtime_mappings"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"static_load_states":{"items":{"additionalProperties":false,"properties":{"kind":{"enum":["javascript-asset","javascript-chunk","javascript-module"],"type":"string"},"reason":{"enum":["runtime-script-correspondence","containing-asset-was-loaded","not-observed-in-bounded-capture","layer-outside-runtime-scope","static-or-runtime-coverage-incomplete"],"type":"string"},"runtime_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":10000,"type":"array"},"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["loaded","resident-in-loaded-asset","not-observed-in-capture","unknown"],"type":"string"}},"required":["static_layer_id","static_node_id","kind","status","runtime_node_ids","reason"],"type":"object"},"maxItems":50000,"type":"array"},"summary":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"matched":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_targets":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_workers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_loaded":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_not_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_resident":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["runtime_targets","runtime_frames","runtime_scripts","runtime_workers","matched","ambiguous","unmatched","unknown","static_loaded","static_resident","static_not_observed","static_unknown"],"type":"object"}},"required":["schema_version","reconciliation_id","static_layers","runtime_captures","graph","summary","reconciliations","static_load_states","source_map_authority","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Reconcile Javascript Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Use this for an explicitly approved, provider-owned Electron run when passive CDP or Inspector observation cannot exercise application behavior. REA owns startup and teardown, accepts bounded click/wait actions plus window-targeted renderer reload/crash and synthetic open-url/second-instance delivery, and returns correlated window/WebContents/process/preload/session/navigation/shell/IPC evidence without retaining payload values. Results identify observed and unavailable event families, coverage status, action targets, and truncation. External shell, navigation, permission, download, popup, updater, and OS-integration effects are blocked and recorded. Use passive Electron tools for observation-only work.","effects":{"accessesNetwork":true,"changesUiState":true,"idempotent":false,"launchesProcess":true,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"actions":[{"kind":"click","selector":"#run","step_id":"exercise-ipc"}],"application_path":"/Applications/Example.app/Contents/Resources/main.js","application_root":"/Applications/Example.app/Contents/Resources","approved":true,"args":[],"executable_path":"/Applications/Electron.app/Contents/MacOS/Electron","limits":{"action_timeout_ms":5000,"max_actions":20,"max_duration_ms":60000,"max_ipc_events":2000,"max_processes":32,"max_windows":32},"schema_version":1}],"properties":{"actions":{"default":[],"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"click","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":512,"minLength":1,"type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind","selector"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":10000,"minimum":0,"type":"integer"},"kind":{"const":"wait","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind","duration_ms"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"renderer-reload","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"renderer-crash","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind"],"type":"object"},{"additionalProperties":false,"properties":{"delivery":{"description":"Value for delivery.","enum":["open-url","second-instance"],"type":"string"},"kind":{"const":"deep-link","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"url":{"description":"Value for url.","maxLength":4096,"minLength":1,"type":"string"}},"required":["step_id","kind","delivery","url"],"type":"object"}]},"maxItems":100,"type":"array"},"application_path":{"description":"Local filesystem path for application.","maxLength":16384,"minLength":1,"type":"string"},"application_root":{"description":"Approved canonical filesystem application root.","maxLength":16384,"minLength":1,"type":"string"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"args":{"default":[],"description":"Value for args.","items":{"maxLength":4096,"type":"string"},"maxItems":32,"type":"array"},"executable_path":{"description":"Local filesystem path for executable.","maxLength":16384,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"action_timeout_ms":5000,"max_actions":20,"max_duration_ms":60000,"max_ipc_events":2000,"max_processes":32,"max_runtime_events":5000,"max_windows":32},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"action_timeout_ms":{"default":5000,"description":"Value for action timeout ms.","maximum":30000,"minimum":1,"type":"integer"},"max_actions":{"default":20,"description":"Maximum permitted actions for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_duration_ms":{"default":60000,"description":"Maximum permitted duration ms for this operation.","maximum":120000,"minimum":1,"type":"integer"},"max_ipc_events":{"default":2000,"description":"Maximum permitted ipc events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_processes":{"default":32,"description":"Maximum permitted processes for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_runtime_events":{"default":5000,"description":"Maximum permitted runtime events for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_windows":{"default":32,"description":"Maximum permitted windows for this operation.","maximum":100,"minimum":1,"type":"integer"}},"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","executable_path","application_path","application_root","approved"],"type":"object"},"kind":"electron-provider","name":"capture_electron_scenario","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"actions":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"null"},"kind":{"enum":["click","wait","renderer-reload","renderer-crash","deep-link"],"type":"string"},"status":{"const":"completed","type":"string"},"step_id":{"maxLength":128,"minLength":1,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"window_index":{"anyOf":[{"maximum":99,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["step_id","kind","window_index","target","elapsed_ms","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"string"},"kind":{"enum":["click","wait","renderer-reload","renderer-crash","deep-link"],"type":"string"},"status":{"enum":["failed","cancelled"],"type":"string"},"step_id":{"maxLength":128,"minLength":1,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"window_index":{"anyOf":[{"maximum":99,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["step_id","kind","window_index","target","elapsed_ms","status","error"],"type":"object"}]},"maxItems":100,"type":"array"},"application":{"additionalProperties":false,"properties":{"application_path":{"maxLength":16384,"minLength":1,"type":"string"},"cleanup":{"const":"terminated-owned-process","type":"string"},"electron_version":{"maxLength":256,"minLength":1,"type":"string"},"executable_path":{"maxLength":16384,"minLength":1,"type":"string"},"process_ownership":{"const":"provider-owned","type":"string"}},"required":["executable_path","application_path","electron_version","process_ownership","cleanup"],"type":"object"},"coverage":{"additionalProperties":false,"default":{"observed_event_families":[],"observed_roles":[],"pre_capture_activity":"unavailable","status":"partial_attach","unavailable_event_families":[]},"properties":{"observed_event_families":{"items":{"maxLength":128,"type":"string"},"maxItems":32,"type":"array"},"observed_roles":{"items":{"maxLength":128,"type":"string"},"maxItems":16,"type":"array"},"pre_capture_activity":{"const":"unavailable","type":"string"},"status":{"enum":["complete","partial_attach","capture_truncated","hook_conflict","target_exited","cleanup_failed"],"type":"string"},"unavailable_event_families":{"items":{"maxLength":128,"type":"string"},"maxItems":32,"type":"array"}},"required":["status","observed_event_families","unavailable_event_families","observed_roles","pre_capture_activity"],"type":"object"},"ipc":{"additionalProperties":false,"properties":{"events":{"items":{"additionalProperties":false,"properties":{"argument_shapes":{"items":{"maxLength":64,"type":"string"},"maxItems":32,"type":"array"},"argument_shapes_truncated":{"default":false,"type":"boolean"},"artifact_path":{"anyOf":[{"maxLength":16384,"type":"string"},{"type":"null"}],"default":null},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null},"capture_method":{"default":"api-wrapper","enum":["api-wrapper","event-emitter","process-hook"],"type":"string"},"channel":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"channel_truncated":{"default":false,"type":"boolean"},"correlation_id":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"direction":{"anyOf":[{"enum":["renderer-to-main","main-to-renderer","main-to-utility","utility-to-main"],"type":"string"},{"type":"null"}]},"error":{"type":"boolean"},"event":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"frame":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"kind":{"enum":["main-handler-invocation","main-event-invocation","utility-process-fork","utility-process-message","ipc-main-to-renderer","ipc-utility-to-main","ipc-renderer-send","ipc-renderer-invoke","ipc-renderer-post-message"],"type":"string"},"phase":{"anyOf":[{"enum":["attempted","completed","blocked","failed","observed"],"type":"string"},{"type":"null"}]},"process_type":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"receiver":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"result_shape":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"sender":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"default":"electron-active-hook","maxLength":64,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]}},"required":["sequence","correlation_id","kind","channel","channel_truncated","frame","argument_shapes","argument_shapes_truncated","result_shape","process_type","source","capture_method","artifact_path","artifact_sha256","error"],"type":"object"},"maxItems":10000,"type":"array"},"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["events","observed","retained","truncated"],"type":"object"},"limitations":{"items":{"maxLength":4096,"type":"string"},"maxItems":100,"type":"array"},"processes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"name":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"service_name":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"type":{"maxLength":128,"minLength":1,"type":"string"}},"required":["pid","type","name","service_name"],"type":"object"},"maxItems":100,"type":"array"},"truncated":{"type":"boolean"}},"required":["items","truncated"],"type":"object"},"schema_version":{"const":1,"type":"number"},"timeline":{"additionalProperties":false,"default":{"events":[],"observed":0,"retained":0,"truncated":false},"properties":{"events":{"items":{"additionalProperties":false,"properties":{"argument_shapes":{"items":{"maxLength":64,"type":"string"},"maxItems":32,"type":"array"},"argument_shapes_truncated":{"type":"boolean"},"artifact_path":{"anyOf":[{"maxLength":16384,"type":"string"},{"type":"null"}]},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"capture_method":{"enum":["api-wrapper","event-emitter","process-hook"],"type":"string"},"channel":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"channel_truncated":{"type":"boolean"},"correlation_id":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"direction":{"anyOf":[{"enum":["renderer-to-main","main-to-renderer","main-to-utility","utility-to-main"],"type":"string"},{"type":"null"}]},"error":{"type":"boolean"},"event":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"frame":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"kind":{"enum":["main-handler-invocation","main-event-invocation","utility-process-fork","utility-process-message","ipc-main-to-renderer","ipc-utility-to-main","ipc-renderer-send","ipc-renderer-invoke","ipc-renderer-post-message","app-lifecycle","window-lifecycle","web-contents-lifecycle","navigation","shell-attempt","process-lifecycle","permission","popup-attempt","download","protocol","preload","native-addon","updater","error"],"type":"string"},"phase":{"enum":["attempted","completed","blocked","failed","observed"],"type":"string"},"process_type":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"receiver":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"result_shape":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"sender":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"maxLength":64,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]}},"required":["sequence","correlation_id","kind","event","phase","channel","channel_truncated","direction","sender","receiver","frame","target","argument_shapes","argument_shapes_truncated","result_shape","process_type","source","capture_method","artifact_path","artifact_sha256","error"],"type":"object"},"maxItems":20000,"type":"array"},"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["events","observed","retained","truncated"],"type":"object"},"windows":{"items":{"additionalProperties":false,"properties":{"destroyed":{"type":"boolean"},"title":{"maxLength":16384,"type":"string"},"url":{"maxLength":65536,"type":"string"},"visible":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"web_contents_id":{"maxLength":256,"type":"string"},"window_id":{"maxLength":256,"type":"string"}},"required":["window_id","web_contents_id","url","title","visible","destroyed"],"type":"object"},"maxItems":100,"type":"array"},"windows_truncated":{"type":"boolean"}},"required":["schema_version","application","actions","windows","windows_truncated","processes","ipc","timeline","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Electron Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List attachable Node/Electron V8 Inspector targets from one approved literal-loopback endpoint. Only targets inside exact canonical file roots or exact HTTP(S) origins are retained; excluded target locations never enter Evidence.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"allowed_file_roots":["/opt/example-app"],"allowed_origins":[],"approved":true,"inspector_endpoint":"http://127.0.0.1:9229","limit":100,"offset":0}],"properties":{"allowed_file_roots":{"default":[],"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"inspector_endpoint":{"description":"Value for inspector endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["inspector_endpoint","approved"],"type":"object"},"kind":"runtime-provider","name":"list_javascript_runtime_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"excluded":{"additionalProperties":false,"properties":{"outside_file_roots":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_origins":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unconnectable":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_location":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_file_roots","outside_origins","unsupported_location","unconnectable"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"runtime":{"additionalProperties":false,"properties":{"product":{"maxLength":1024,"minLength":1,"type":"string"},"protocol_version":{"maxLength":100,"minLength":1,"type":"string"},"v8_version":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]}},"required":["product","protocol_version","v8_version"],"type":"object"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"protocol_type":{"maxLength":100,"minLength":1,"type":"string"},"target_id":{"maxLength":256,"minLength":1,"type":"string"}},"required":["target_id","protocol_type","attached","location"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","runtime","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Javascript Runtime Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Attach passively to one exact approved Node/Electron V8 Inspector target and capture bounded Debugger.scriptParsed plus Runtime execution-context events. REA sends only Runtime.enable and Debugger.enable: it never evaluates, pauses, resumes, reads source, or instruments the target. require/import edges, EventEmitter activity, and Electron IPC remain explicit unknowns; reconcile the returned Evidence with static Application Graph Evidence using reconcile_javascript_runtime.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"allowed_file_roots":["/opt/example-app"],"allowed_origins":[],"approved":true,"inspector_endpoint":"http://127.0.0.1:9229","limits":{"max_events":10000,"max_execution_contexts":1000,"max_location_bytes":16384,"max_scripts":2000,"max_total_metadata_bytes":4194304},"observation_ms":100,"runtime_kind":"node","target_id":"TARGET_ID_FROM_LIST_JAVASCRIPT_RUNTIME_TARGETS"}],"properties":{"allowed_file_roots":{"default":[],"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"inspector_endpoint":{"description":"Value for inspector endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_events":10000,"max_execution_contexts":1000,"max_location_bytes":16384,"max_scripts":2000,"max_total_metadata_bytes":4194304},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_events":{"default":10000,"description":"Maximum permitted events for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_execution_contexts":{"default":1000,"description":"Maximum permitted execution contexts for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_location_bytes":{"default":16384,"description":"Maximum permitted location bytes for this operation.","maximum":65536,"minimum":64,"type":"integer"},"max_scripts":{"default":2000,"description":"Maximum permitted scripts for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_metadata_bytes":{"default":4194304,"description":"Maximum permitted total metadata bytes for this operation.","maximum":33554432,"minimum":1024,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"runtime_kind":{"description":"Value for runtime kind.","enum":["node","electron-main","electron-preload","electron-renderer"],"type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["inspector_endpoint","approved","target_id","runtime_kind"],"type":"object"},"kind":"runtime-provider","name":"observe_javascript_runtime","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"capture":{"additionalProperties":false,"properties":{"events_dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_bytes_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"truncation_reasons":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"}},"required":["observation_ms","events_observed","events_retained","events_dropped","metadata_bytes_retained","truncated","truncation_reasons"],"type":"object"},"directly_observed":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"execution_contexts":{"items":{"additionalProperties":false,"properties":{"context_key":{"maxLength":64,"minLength":1,"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"origin":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"null"}]},"state":{"enum":["created","destroyed","cleared"],"type":"string"}},"required":["context_key","state","name","origin"],"type":"object"},"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"runtime":{"additionalProperties":false,"properties":{"product":{"maxLength":1024,"minLength":1,"type":"string"},"protocol_version":{"maxLength":100,"minLength":1,"type":"string"},"v8_version":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]}},"required":["product","protocol_version","v8_version"],"type":"object"},"schema_version":{"const":1,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"excluded":{"additionalProperties":false,"properties":{"invalid_protocol_value":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_file_roots":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_origins":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_location":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_file_roots","outside_origins","unsupported_location","invalid_protocol_value"],"type":"object"},"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"anyOf":[{"maxLength":512,"type":"string"},{"type":"null"}]},"execution_context_key":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"is_module":{"type":"boolean"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"script_key":{"pattern":"^v8_script_[a-f0-9]{64}$","type":"string"},"status":{"const":"observed-loaded","type":"string"}},"required":["script_key","location","execution_context_key","cdp_hash","length","is_module","status"],"type":"object"},"type":"array"},"observed_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","observed_total","excluded"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"protocol_type":{"maxLength":100,"minLength":1,"type":"string"},"runtime_kind":{"enum":["node","electron-main","electron-preload","electron-renderer"],"type":"string"},"runtime_kind_authority":{"const":"caller-declared-unverified","type":"string"},"target_id":{"maxLength":256,"minLength":1,"type":"string"}},"required":["target_id","protocol_type","attached","location","runtime_kind","runtime_kind_authority"],"type":"object"},"unavailable_without_instrumentation":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["schema_version","runtime","target","capture","scripts","execution_contexts","directly_observed","unavailable_without_instrumentation","unknowns","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Observe Javascript Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a typed literal seed through an authenticated JavaScript Application Graph supplied as full Evidence or an Evidence ID returned earlier in this session. Explicit direction, depth, node, edge, and path bounds apply. Original static, native, passive-runtime, inferred, and unknown authorities remain distinct; native addon handoffs never open a provider or execute the application.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"direction":{"default":"both","description":"Direction in which to traverse or compare relationships.","enum":["outgoing","incoming","both"],"type":"string"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_nodes":2000,"max_paths":100,"max_seed_matches":25},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_paths":{"default":100,"description":"Maximum permitted paths for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"native_observations":{"default":[],"description":"Value for native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"seed":{"additionalProperties":false,"description":"Value for seed.","properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"kind":{"description":"Value for kind.","enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null,"description":"Value for match."},"value":{"description":"Value for value.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"}},"required":["seed","application"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"direction":{"default":"both","description":"Direction in which to traverse or compare relationships.","enum":["outgoing","incoming","both"],"type":"string"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_nodes":2000,"max_paths":100,"max_seed_matches":25},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_paths":{"default":100,"description":"Maximum permitted paths for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"native_observations":{"default":[],"description":"Value for native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"seed":{"additionalProperties":false,"description":"Value for seed.","properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"kind":{"description":"Value for kind.","enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null,"description":"Value for match."},"value":{"description":"Value for value.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"}},"required":["seed","application_evidence_id"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","direction":"both","seed":{"case_sensitive":false,"kind":"module","match":"exact","value":"renderer.js"}}],"type":"object"},"kind":"application","name":"trace_application_feature","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"frontier_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"type":"array"},"omitted_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_paths":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scanned_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"enum":["complete-within-source","partial","truncated","no-match"],"type":"string"},"total_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","source_graph_status","scanned_nodes","total_seed_matches","omitted_seed_matches","omitted_nodes","omitted_edges","omitted_paths","frontier_node_ids"],"type":"object"},"direction":{"enum":["outgoing","incoming","both"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":65,"minItems":1,"type":"array"},"graph":{"anyOf":[{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},{"type":"null"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"native_handoffs":{"items":{"additionalProperties":false,"properties":{"artifact_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"export_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"native_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"maxItems":64,"type":"array"},"recommended_tools":{"items":{"enum":["open_binary","binary_overview","search_procedures","analyze_function","xrefs"],"type":"string"},"maxItems":5,"type":"array"},"requested_exports":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"status":{"enum":["evidence-linked","requires-provider-analysis"],"type":"string"}},"required":["native_node_id","artifact_sha256","artifact_path","export_node_ids","requested_exports","status","providers","evidence_ids","recommended_tools"],"type":"object"},"maxItems":10000,"type":"array"},"paths":{"items":{"additionalProperties":false,"properties":{"authorities":{"items":{"maxLength":128,"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"contains_inference":{"type":"boolean"},"edge_ids":{"items":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"end_kind":{"maxLength":128,"minLength":1,"type":"string"},"end_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":65,"minItems":1,"type":"array"},"path_id":{"pattern":"^jatp_[a-f0-9]{64}$","type":"string"},"start_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["path_id","start_node_id","end_node_id","end_kind","node_ids","edge_ids","authorities","contains_inference"],"type":"object"},"maxItems":1000,"type":"array"},"schema_version":{"const":1,"type":"number"},"seed":{"additionalProperties":false,"properties":{"case_sensitive":{"default":false,"type":"boolean"},"kind":{"enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null},"value":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value","match","case_sensitive"],"type":"object"},"seed_matches":{"items":{"additionalProperties":false,"properties":{"basis":{"enum":["node-id","label","identity","property"],"type":"string"},"field":{"maxLength":256,"minLength":1,"type":"string"},"kind":{"maxLength":128,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","kind","basis","field"],"type":"object"},"maxItems":1000,"type":"array"},"source_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"source_graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"summary":{"additionalProperties":false,"properties":{"inferred_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"matched_seeds":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_handoffs":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observed_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"terminal_paths":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traced_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traced_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unavailable_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["matched_seeds","traced_nodes","traced_edges","terminal_paths","native_handoffs","observed_facts","inferred_facts","unknown_facts","unavailable_facts"],"type":"object"},"trace_id":{"pattern":"^jatr_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","trace_id","source_evidence_id","source_graph_id","seed","direction","seed_matches","graph","paths","native_handoffs","summary","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Application Feature"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Trace bounded static JavaScript data-flow, direct call/return, and closure relations from authenticated analyze_javascript_application v2 Evidence. Queries declare direction and exact node, relation, depth, function, module, and page limits. Dynamic or unsupported semantics remain explicit unknowns; static reachability never claims runtime execution.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"query":{"additionalProperties":false,"description":"Non-empty feature or text query to investigate.","properties":{"allowed_relations":{"description":"Value for allowed relations.","items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":44,"minItems":1,"type":"array"},"cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null,"description":"Value for cursor."},"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"expected":{"anyOf":[{"additionalProperties":false,"properties":{"classes":{"description":"Value for classes.","items":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"maxItems":24,"minItems":1,"type":"array"},"role":{"description":"Value for role.","enum":["source","sink"],"type":"string"}},"required":["role","classes"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for expected."},"include_ambiguous_dynamic_edges":{"default":false,"description":"Whether to include ambiguous dynamic edges in the result.","type":"boolean"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_functions":500,"max_modules":500,"max_nodes":2000,"max_seed_matches":25,"max_unknowns":1000,"page_size":200},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"description":"Maximum permitted functions for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"description":"Maximum permitted modules for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"description":"Maximum permitted unknowns for this operation.","maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"description":"Value for page size.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"seed":{"description":"Value for seed.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","description":"Value for kind.","type":"string"},"value":{"$ref":"#/$defs/__schema0","description":"Value for value."}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"description":"Exact SHA-256 digest of fingerprint.","pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"description":"Value for field.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","description":"Value for kind.","type":"string"}},"required":["kind","field"],"type":"object"}]},"source_map_authority":{"additionalProperties":false,"default":{"authority":"none"},"description":"Value for source map authority.","properties":{"authority":{"const":"none","description":"Value for authority.","type":"string"}},"required":["authority"],"type":"object"}},"required":["seed","direction"],"type":"object"}},"required":["application","query"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"query":{"additionalProperties":false,"description":"Non-empty feature or text query to investigate.","properties":{"allowed_relations":{"description":"Value for allowed relations.","items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":44,"minItems":1,"type":"array"},"cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null,"description":"Value for cursor."},"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"expected":{"anyOf":[{"additionalProperties":false,"properties":{"classes":{"description":"Value for classes.","items":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"maxItems":24,"minItems":1,"type":"array"},"role":{"description":"Value for role.","enum":["source","sink"],"type":"string"}},"required":["role","classes"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for expected."},"include_ambiguous_dynamic_edges":{"default":false,"description":"Whether to include ambiguous dynamic edges in the result.","type":"boolean"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_functions":500,"max_modules":500,"max_nodes":2000,"max_seed_matches":25,"max_unknowns":1000,"page_size":200},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"description":"Maximum permitted functions for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"description":"Maximum permitted modules for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"description":"Maximum permitted unknowns for this operation.","maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"description":"Value for page size.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"seed":{"description":"Value for seed.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","description":"Value for kind.","type":"string"},"value":{"$ref":"#/$defs/__schema0","description":"Value for value."}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"description":"Exact SHA-256 digest of fingerprint.","pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"description":"Value for field.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","description":"Value for kind.","type":"string"}},"required":["kind","field"],"type":"object"}]},"source_map_authority":{"additionalProperties":false,"default":{"authority":"none"},"description":"Value for source map authority.","properties":{"authority":{"const":"none","description":"Value for authority.","type":"string"}},"required":["authority"],"type":"object"}},"required":["seed","direction"],"type":"object"}},"required":["application_evidence_id","query"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","query":{"direction":"backward-provenance","seed":{"kind":"semantic-node","node_id":"jsrg_node_0000000000000000000000000000000000000000000000000000000000000000"},"source_map_authority":{"authority":"none"}}}],"type":"object"},"kind":"application","name":"trace_javascript_semantics","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"accepted_limit_ranges":{"additionalProperties":false,"properties":{"max_depth":{"additionalProperties":false,"properties":{"maximum":{"const":64,"type":"number"},"minimum":{"const":0,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_edges":{"additionalProperties":false,"properties":{"maximum":{"const":100000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_functions":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_modules":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_nodes":{"additionalProperties":false,"properties":{"maximum":{"const":50000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_seed_matches":{"additionalProperties":false,"properties":{"maximum":{"const":1000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_unknowns":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":0,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"page_size":{"additionalProperties":false,"properties":{"maximum":{"const":1000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"}},"required":["max_seed_matches","max_nodes","max_edges","max_depth","max_functions","max_modules","max_unknowns","page_size"],"type":"object"},"applied_limits":{"additionalProperties":false,"properties":{"max_depth":{"default":12,"maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"maximum":1000,"minimum":1,"type":"integer"}},"required":["max_seed_matches","max_nodes","max_edges","max_depth","max_functions","max_modules","max_unknowns","page_size"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"frontier":{"items":{"additionalProperties":false,"properties":{"depth":{"maximum":65,"minimum":0,"type":"integer"},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"reason":{"enum":["max-depth","max-edges","max-functions","max-modules","max-nodes","max-seed-matches"],"type":"string"}},"required":["node_id","depth","reason"],"type":"object"},"maxItems":100000,"type":"array"},"status":{"enum":["complete","partial","truncated","unavailable"],"type":"string"}},"required":["status","frontier"],"type":"object"},"direction":{"enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"expected_match_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"application_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"function_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"role_key":{"maxLength":1024,"minLength":1,"type":"string"},"source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]}},"required":["artifact_sha256","module_path","source_range","role_key"],"type":"object"},"kind":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["kind","identity","function_node_id","application_node_ids","label","properties","evidence","node_id","identifier_strategy"],"type":"object"},"maxItems":3000,"type":"array"},"page":{"additionalProperties":false,"properties":{"next_cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"size":{"maximum":1000,"minimum":0,"type":"integer"}},"required":["offset","size","next_cursor"],"type":"object"},"query_id":{"pattern":"^jsrq_[a-f0-9]{64}$","type":"string"},"relations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"relation_id":{"pattern":"^jsrg_relation_[a-f0-9]{64}$","type":"string"},"resolution":{"enum":["resolved","candidate"],"type":"string"},"source_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","resolution","properties","evidence","relation_id","identifier_strategy"],"type":"object"},"maxItems":1000,"type":"array"},"schema_version":{"const":1,"type":"number"},"seed":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","type":"string"},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","type":"string"},"name":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","type":"string"},"value":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","type":"string"},"name":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","type":"string"}},"required":["kind","field"],"type":"object"}]},"seed_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"source_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"source_graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"status":{"enum":["found","no-match","ambiguous","partial","truncated","unsupported"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"relevant_unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_unknowns":{"maximum":10000,"minimum":0,"type":"integer"},"total_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_functions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_seed_matches","retained_seed_matches","traversed_nodes","traversed_relations","traversed_functions","traversed_modules","relevant_unknowns","retained_unknowns"],"type":"object"},"unknowns":{"items":{"additionalProperties":false,"properties":{"candidate_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reason":{"enum":["ambiguous-target","bound-reached","dynamic-call","dynamic-property","eval-or-generated-code","incomplete-module","missing-source","unsupported-syntax"],"type":"string"},"relation_kinds":{"items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":45,"minItems":1,"type":"array"},"unknown_id":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"}},"required":["node_id","family","relation_kinds","reason","detail","candidate_node_ids","evidence","unknown_id"],"type":"object"},"maxItems":100000,"type":"array"}},"required":["schema_version","query_id","source_graph_id","seed","direction","status","seed_node_ids","nodes","relations","unknowns","expected_match_node_ids","summary","coverage","page","applied_limits","accepted_limit_ranges","limitations","source_evidence_id","evidence_links"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Javascript Semantics"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two authenticated JavaScript Application Graph versions supplied as full Evidence or Evidence IDs returned earlier in this session. Uses unique-only exact digest, module source digest, source-map identity, structural fingerprint, and non-module semantic-key tiers. Reports added, removed, changed, ambiguous, and unknown entities plus a bounded changed_from graph without fuzzy or module-ordinal pairing.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left","right"],"type":"object"},{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left","right_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"}],"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111"}],"type":"object"},"kind":"application","name":"compare_application_versions","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"comparison_id":{"pattern":"^javc_[a-f0-9]{64}$","type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"const":0,"type":"number"},"omitted_comparison_items":{"const":0,"type":"number"},"omitted_graph_edges":{"const":0,"type":"number"},"omitted_graph_nodes":{"const":0,"type":"number"},"omitted_graph_observations":{"const":0,"type":"number"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"complete-within-inputs","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"},{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"const":0,"type":"number"},"omitted_comparison_items":{"const":0,"type":"number"},"omitted_graph_edges":{"const":0,"type":"number"},"omitted_graph_nodes":{"const":0,"type":"number"},"omitted_graph_observations":{"const":0,"type":"number"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"partial","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"},{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_comparison_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"truncated","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"anyOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["exact-node-identity","exact-content-digest","exact-module-source-digest"],"type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"exact","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"source-map-identity","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"high","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["structural-fingerprint","semantic-key"],"type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"medium","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"}]},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"prefixItems":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"prefixItems":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"unknown","type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"left":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"matching":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_content_digest":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_module_source_digest":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_node_identity":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"semantic_key":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_map_identity":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural_fingerprint":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["exact_node_identity","exact_content_digest","exact_module_source_digest","source_map_identity","structural_fingerprint","semantic_key","ambiguous","unmatched"],"type":"object"},"right":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","added","removed","changed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","left","right","summary","matching","items","graph","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Application Versions"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare a cryptographically committed HistoricalSourceGraph/v1 with authenticated JavaScript Application Graph Evidence supplied directly or by session Evidence ID. Uses explicit exact-digest, source-map path, current-path, suffix, and basename signals with stable weights. Classifies unchanged, modified, removed, split, merged, duplicated, and unknown; incomplete coverage and ambiguous weak signals never become absence or forced matches.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"limits":{"additionalProperties":false,"default":{"max_application_nodes":20000,"max_candidate_evaluations":1000000,"max_candidate_nodes":100,"max_source_files":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_application_nodes":{"default":20000,"description":"Maximum permitted application nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_candidate_evaluations":{"default":1000000,"description":"Maximum permitted candidate evaluations for this operation.","maximum":10000000,"minimum":1,"type":"integer"},"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_source_files":{"default":10000,"description":"Maximum permitted source files for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"reference":{"additionalProperties":false,"description":"Value for reference.","properties":{"authority":{"const":"historical-reference","description":"Value for authority.","type":"string"},"entries":{"description":"Value for entries.","items":{"anyOf":[{"anyOf":[{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"const":"hashed","description":"Value for content state.","type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"description":"Value for size.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"description":"Value for content state.","enum":["redacted-secret","excluded","unreadable","too-large","unknown"],"type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","type":"null"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for size."}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"}]},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"directory","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"tree_state":{"description":"Value for tree state.","enum":["enumerated","partial","excluded","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","tree_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"symlink","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"target":{"description":"Value for target.","maxLength":4096,"minLength":1,"type":"string"},"target_state":{"description":"Value for target state.","enum":["internal","external","missing","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","target","target_state"],"type":"object"}]},"maxItems":100000,"type":"array"},"exclusions":{"description":"Value for exclusions.","items":{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","enum":["configured-secret","symlink-escape","size-limit","inventory-limit","unreadable","caller-excluded"],"type":"string"}},"required":["path","reason"],"type":"object"},"maxItems":100000,"type":"array"},"inventory_state":{"description":"Value for inventory state.","enum":["complete","partial","unknown"],"type":"string"},"languages":{"description":"Value for languages.","items":{"maxLength":100,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"manifests":{"description":"Value for manifests.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":10000,"type":"array"},"parse_failures":{"description":"Value for parse failures.","items":{"additionalProperties":false,"properties":{"parser":{"description":"Value for parser.","maxLength":100,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"}},"required":["path","parser","reason"],"type":"object"},"maxItems":10000,"type":"array"},"provenance":{"additionalProperties":false,"description":"Value for provenance.","properties":{"caller":{"description":"Value for caller.","maxLength":200,"minLength":1,"pattern":"^[\\\\w .:@/+-]+$","type":"string"},"importer":{"description":"Value for importer.","maxLength":100,"minLength":1,"type":"string"},"importer_version":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for importer version."}},"required":["importer","importer_version","caller"],"type":"object"},"relationships":{"description":"Value for relationships.","items":{"additionalProperties":false,"properties":{"from_path":{"description":"Local filesystem path for from.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"description":"Value for kind.","enum":["imports","requires","references","declares-module"],"type":"string"},"parse_state":{"description":"Value for parse state.","enum":["parsed","partial","unknown"],"type":"string"},"resolution":{"description":"Value for resolution.","enum":["internal","external","unresolved","unknown"],"type":"string"},"to":{"description":"Value for to.","maxLength":4096,"minLength":1,"type":"string"}},"required":["from_path","to","kind","resolution","parse_state"],"type":"object"},"maxItems":200000,"type":"array"},"root_alias":{"const":"$REFERENCE_ROOT","description":"Value for root alias.","type":"string"},"root_sha256":{"description":"Exact SHA-256 digest of root.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema":{"const":"HistoricalSourceGraph/v1","description":"Value for schema.","type":"string"},"vcs":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"dirty":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for dirty."},"head":{"description":"Value for head.","pattern":"^(?:[a-f0-9]{40}|[a-f0-9]{64})$","type":"string"},"kind":{"const":"git","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"none","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"unknown","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"}]},{"type":"null"}],"description":"Value for vcs."}},"required":["schema","authority","root_alias","root_sha256","inventory_state","entries","relationships","parse_failures","exclusions","languages","manifests","vcs","provenance","limitations"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["reference","application"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"limits":{"additionalProperties":false,"default":{"max_application_nodes":20000,"max_candidate_evaluations":1000000,"max_candidate_nodes":100,"max_source_files":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_application_nodes":{"default":20000,"description":"Maximum permitted application nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_candidate_evaluations":{"default":1000000,"description":"Maximum permitted candidate evaluations for this operation.","maximum":10000000,"minimum":1,"type":"integer"},"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_source_files":{"default":10000,"description":"Maximum permitted source files for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"reference":{"additionalProperties":false,"description":"Value for reference.","properties":{"authority":{"const":"historical-reference","description":"Value for authority.","type":"string"},"entries":{"description":"Value for entries.","items":{"anyOf":[{"anyOf":[{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"const":"hashed","description":"Value for content state.","type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"description":"Value for size.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"description":"Value for content state.","enum":["redacted-secret","excluded","unreadable","too-large","unknown"],"type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","type":"null"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for size."}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"}]},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"directory","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"tree_state":{"description":"Value for tree state.","enum":["enumerated","partial","excluded","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","tree_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"symlink","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"target":{"description":"Value for target.","maxLength":4096,"minLength":1,"type":"string"},"target_state":{"description":"Value for target state.","enum":["internal","external","missing","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","target","target_state"],"type":"object"}]},"maxItems":100000,"type":"array"},"exclusions":{"description":"Value for exclusions.","items":{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","enum":["configured-secret","symlink-escape","size-limit","inventory-limit","unreadable","caller-excluded"],"type":"string"}},"required":["path","reason"],"type":"object"},"maxItems":100000,"type":"array"},"inventory_state":{"description":"Value for inventory state.","enum":["complete","partial","unknown"],"type":"string"},"languages":{"description":"Value for languages.","items":{"maxLength":100,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"manifests":{"description":"Value for manifests.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":10000,"type":"array"},"parse_failures":{"description":"Value for parse failures.","items":{"additionalProperties":false,"properties":{"parser":{"description":"Value for parser.","maxLength":100,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"}},"required":["path","parser","reason"],"type":"object"},"maxItems":10000,"type":"array"},"provenance":{"additionalProperties":false,"description":"Value for provenance.","properties":{"caller":{"description":"Value for caller.","maxLength":200,"minLength":1,"pattern":"^[\\\\w .:@/+-]+$","type":"string"},"importer":{"description":"Value for importer.","maxLength":100,"minLength":1,"type":"string"},"importer_version":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for importer version."}},"required":["importer","importer_version","caller"],"type":"object"},"relationships":{"description":"Value for relationships.","items":{"additionalProperties":false,"properties":{"from_path":{"description":"Local filesystem path for from.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"description":"Value for kind.","enum":["imports","requires","references","declares-module"],"type":"string"},"parse_state":{"description":"Value for parse state.","enum":["parsed","partial","unknown"],"type":"string"},"resolution":{"description":"Value for resolution.","enum":["internal","external","unresolved","unknown"],"type":"string"},"to":{"description":"Value for to.","maxLength":4096,"minLength":1,"type":"string"}},"required":["from_path","to","kind","resolution","parse_state"],"type":"object"},"maxItems":200000,"type":"array"},"root_alias":{"const":"$REFERENCE_ROOT","description":"Value for root alias.","type":"string"},"root_sha256":{"description":"Exact SHA-256 digest of root.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema":{"const":"HistoricalSourceGraph/v1","description":"Value for schema.","type":"string"},"vcs":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"dirty":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for dirty."},"head":{"description":"Value for head.","pattern":"^(?:[a-f0-9]{40}|[a-f0-9]{64})$","type":"string"},"kind":{"const":"git","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"none","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"unknown","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"}]},{"type":"null"}],"description":"Value for vcs."}},"required":["schema","authority","root_alias","root_sha256","inventory_state","entries","relationships","parse_failures","exclusions","languages","manifests","vcs","provenance","limitations"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["reference","application_evidence_id"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","reference":{"authority":"historical-reference","entries":[{"classifications":["source"],"kind":"directory","limitations":[],"path":"src","tree_state":"enumerated"},{"classifications":["source"],"content_state":"hashed","kind":"file","language":"TypeScript","limitations":[],"path":"src/main.ts","sha256":"2222222222222222222222222222222222222222222222222222222222222222","size":128}],"exclusions":[],"inventory_state":"complete","languages":["TypeScript"],"limitations":[],"manifests":[],"parse_failures":[],"provenance":{"caller":"contract-example","importer":"rea","importer_version":"1"},"relationships":[],"root_alias":"$REFERENCE_ROOT","root_sha256":"683969414c3e674a368392213c78021322fb39609b0c57f346b22da6464b2110","schema":"HistoricalSourceGraph/v1","vcs":{"dirty":null,"head":null,"kind":"none"}}}],"type":"object"},"kind":"application","name":"compare_source_to_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"comparison_id":{"pattern":"^stbc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"application_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"candidate_evaluations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_application_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_candidate_evaluations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_candidate_references":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_source_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_unmapped_current_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reference_inventory_state":{"enum":["complete","partial","unknown"],"type":"string"},"retained_application_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_source_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","reference_inventory_state","application_graph_status","retained_source_files","omitted_source_files","retained_application_nodes","omitted_application_nodes","candidate_evaluations","omitted_candidate_evaluations","omitted_candidate_references","omitted_unmapped_current_nodes"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"items":{"items":{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["exact","high","medium","low"],"type":"string"},"current_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"current_node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"score":{"maximum":300,"minimum":1,"type":"integer"},"signals":{"items":{"additionalProperties":false,"properties":{"current_values":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":64,"minItems":1,"type":"array"},"kind":{"enum":["exact-source-digest","source-map-original-path","current-path-exact","current-path-suffix","basename-match","language-extension"],"type":"string"},"source_value":{"maxLength":4096,"minLength":1,"type":"string"},"weight":{"maximum":100,"minimum":1,"type":"integer"}},"required":["kind","weight","source_value","current_values"],"type":"object"},"maxItems":6,"minItems":1,"type":"array"}},"required":["current_node_id","current_node_kind","score","confidence","signals"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","unknown"],"type":"string"},"current_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"mapping_id":{"pattern":"^stbc_item_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"source_path":{"maxLength":4096,"minLength":1,"type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["unchanged","modified","removed","split","merged","duplicated","unknown"],"type":"string"}},"required":["mapping_id","source_path","source_sha256","source_language","status","confidence","current_node_ids","candidates","omitted_candidates","limitations"],"type":"object"},"maxItems":100000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"reference":{"additionalProperties":false,"properties":{"inventory_state":{"enum":["complete","partial","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["root_sha256","inventory_state"],"type":"object"},"schema_version":{"const":1,"type":"number"},"scoring":{"additionalProperties":false,"properties":{"algorithm":{"const":"rea-source-to-bundle-signals/v1","type":"string"},"minimum_candidate_score":{"const":20,"type":"number"},"weights":{"items":{"additionalProperties":false,"properties":{"signal":{"enum":["exact-source-digest","source-map-original-path","current-path-exact","current-path-suffix","basename-match","language-extension"],"type":"string"},"weight":{"maximum":100,"minimum":1,"type":"integer"}},"required":["signal","weight"],"type":"object"},"type":"array"}},"required":["algorithm","minimum_candidate_score","weights"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"duplicated":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"merged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modified":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"split":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","modified","removed","split","merged","duplicated","unknown"],"type":"object"},"unmapped_current_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"}},"required":["schema_version","comparison_id","reference","application","scoring","summary","items","unmapped_current_node_ids","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Source To Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare bounded static return shapes for one exact module/export selector on each authenticated JavaScript Application Graph, supplied as full Evidence or session Evidence IDs. Variants pair only by reciprocal unique literal discriminants; dynamic values, incomplete properties, and ambiguous variants remain unknown. Reports JSON Pointer changes and recommends controlled replay separately without executing JavaScript.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left","right_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left_evidence_id","right"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left_evidence_id","right_evidence_id"],"type":"object"}],"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","left_export_name":"default","left_module_path":"parser.mjs","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111","right_export_name":"default","right_module_path":"parser.mjs"}],"type":"object"},"kind":"application","name":"compare_javascript_export_shapes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change_id":{"pattern":"^jesc_change_[a-f0-9]{64}$","type":"string"},"discriminant":{"anyOf":[{"additionalProperties":false,"properties":{"path":{"maxLength":4096,"type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["path","value"],"type":"object"},{"type":"null"}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"left":{"oneOf":[{"additionalProperties":false,"properties":{"availability":{"const":"absent","type":"string"}},"required":["availability"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"literal","type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["availability","value"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"union","type":"string"},"values":{"items":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"maxItems":32,"minItems":1,"type":"array"}},"required":["availability","values"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"unknown","type":"string"},"reason":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["availability","reason"],"type":"object"}]},"left_source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"path":{"maxLength":4096,"type":"string"},"right":{"oneOf":[{"additionalProperties":false,"properties":{"availability":{"const":"absent","type":"string"}},"required":["availability"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"literal","type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["availability","value"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"union","type":"string"},"values":{"items":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"maxItems":32,"minItems":1,"type":"array"}},"required":["availability","values"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"unknown","type":"string"},"reason":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["availability","reason"],"type":"object"}]},"right_source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]},"status":{"enum":["added","removed","changed","unknown"],"type":"string"}},"required":["change_id","status","path","discriminant","left","right","left_source_range","right_source_range","evidence_links","limitations"],"type":"object"},"maxItems":10000,"type":"array"},"comparison_id":{"pattern":"^jesc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"left_omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left_omitted_property_coverage":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left_source_omitted_variants":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_left_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_right_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"right_omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_omitted_property_coverage":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_source_omitted_variants":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"},"unpaired_left_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_right_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","left_graph_status","right_graph_status","paired_variants","unpaired_left_variants","unpaired_right_variants","omitted_left_variants","omitted_right_variants","left_source_omitted_variants","right_source_omitted_variants","left_omitted_fields","right_omitted_fields","left_omitted_property_coverage","right_omitted_property_coverage","omitted_candidates","omitted_changes"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"left":{"anyOf":[{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"selected","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"type":"null"},"status":{"enum":["missing","ambiguous"],"type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"const":"unavailable","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"right":{"anyOf":[{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"selected","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"type":"null"},"status":{"enum":["missing","ambiguous"],"type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"const":"unavailable","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"}]},"runtime_validation":{"additionalProperties":false,"properties":{"automatically_started":{"const":false,"type":"boolean"},"recommended_tool":{"const":"run_controlled_replay","type":"string"},"required_for":{"const":"runtime-semantics","type":"string"}},"required":["recommended_tool","automatically_started","required_for"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added","removed","changed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","left","right","summary","changes","coverage","evidence_links","limitations","runtime_validation"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Javascript Export Shapes"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Plan or execute a content-bound extracted-module JavaScript replay inside the Linux Bubblewrap, seccomp, and cgroup boundary. Execution requires approved: true and the exact plan digest. Supports deterministic boundary cases and optional left/right differential comparison; observations have controlled-replay authority and do not claim real application runtime behavior.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"cases":[{"arguments":[""],"case_id":"empty"}],"determinism":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"left":{"entry_alias":"parser","entry_export":"default","modules":[{"alias":"parser","dependencies":{},"format":"esm","path":"/approved/parser.mjs","role":"module"}]},"limits":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"mode":"plan"}],"oneOf":[{"additionalProperties":false,"properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"execute","description":"Operation mode that selects the requested behavior.","type":"string"},"plan_digest":{"description":"Value for plan digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode","approved","plan_digest"],"type":"object"}],"type":"object"},"kind":"application","name":"run_controlled_replay","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"additionalProperties":false,"properties":{"evidence":{"type":"null"},"phase":{"const":"plan","type":"string"},"plan":{"additionalProperties":false,"properties":{"cases":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},"case_id":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["case_id","arguments","sha256"],"type":"object"},"type":"array"},"determinism":{"additionalProperties":false,"properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","type":"string"},"platform":{"const":"linux","default":"linux","type":"string"},"random_seed":{"default":0,"maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","type":"string"}},"required":["clock_iso","random_seed","locale","timezone","platform"],"type":"object"},"effects":{"items":{"type":"string"},"type":"array"},"filesystem":{"additionalProperties":false,"properties":{"host_writes":{"const":false,"type":"boolean"},"private_tmpfs_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["host_writes","private_tmpfs_bytes"],"type":"object"},"left":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"limits":{"additionalProperties":false,"properties":{"cpu_quota_percent":{"default":50,"maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"maximum":10000,"minimum":100,"type":"integer"}},"required":["wall_time_ms","memory_bytes","tasks","cpu_quota_percent","tmpfs_bytes","module_bytes","input_bytes","protocol_bytes","output_bytes","stderr_bytes","result_depth","result_nodes"],"type":"object"},"network":{"const":"none","type":"string"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_version":{"const":"linux-bwrap-systemd-v1","type":"string"},"reproducer_export":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"const":"evidence_write","type":"string"},"include_sources":{"type":"boolean"},"path":{"minLength":1,"type":"string"}},"required":["path","include_sources","authority"],"type":"object"},{"type":"null"}]},"right":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"runtime":{"additionalProperties":false,"properties":{"executable":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"read_only_files":{"items":{"additionalProperties":false,"properties":{"destination_path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["source_path","destination_path","sha256"],"type":"object"},"minItems":1,"type":"array"},"worker":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["executable","worker","read_only_files"],"type":"object"},"sandbox":{"additionalProperties":false,"properties":{"bubblewrap":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"seccomp_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"shell":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemctl":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemd_run":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["bubblewrap","systemd_run","systemctl","shell","seccomp_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","plan_digest","policy_version","policy_sha256","network","filesystem","runtime","sandbox","left","cases","determinism","limits","effects","reproducer_export"],"type":"object"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"maxItems":0,"minItems":0,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"phase":{"const":"execute","type":"string"},"plan":{"type":"null"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"minItems":1,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"}],"type":"object"},"requiresSession":false,"title":"Run Controlled Replay"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Prepare a hash-bound Node/JavaScript characterization plan and deterministic reversible export transformation without executing target code. The exact source, selected byte range, runtime closure, sandbox profile, cases, and limits are committed for separate execution approval.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"expected_effect":"pure","instrumentation":{"artifact_path":"/approved/bundle.js","artifact_sha256":"0000000000000000000000000000000000000000000000000000000000000000","selection":{"byte_end":120,"byte_start":100,"export_name":"selected","selected_sha256":"0000000000000000000000000000000000000000000000000000000000000000"}},"preparation_approved":true,"replay":{"cases":[{"arguments":[""],"case_id":"empty"}],"left":{"entry_alias":"bundle","entry_export":"selected","modules":[{"alias":"bundle","dependencies":{},"format":"commonjs-factory","path":"/approved/bundle.js","role":"module"}]},"mode":"plan"},"selected_alias":"bundle"}],"properties":{"expected_effect":{"description":"Expected effect used to reject stale or mismatched input.","enum":["pure","observation-only"],"type":"string"},"instrumentation":{"additionalProperties":false,"description":"Value for instrumentation.","properties":{"artifact_path":{"description":"Local filesystem path for artifact.","maxLength":4096,"minLength":1,"type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"selection":{"additionalProperties":false,"description":"Value for selection.","properties":{"byte_end":{"description":"Value for byte end.","maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"description":"Value for byte start.","maximum":9007199254740991,"minimum":0,"type":"integer"},"export_name":{"description":"Value for export name.","pattern":"^[A-Za-z_$][A-Za-z0-9_$]{0,199}$","type":"string"},"selected_sha256":{"description":"Exact SHA-256 digest of selected.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256","export_name"],"type":"object"}},"required":["artifact_path","artifact_sha256","selection"],"type":"object"},"preparation_approved":{"const":true,"description":"Explicit operator approval for preparation.","type":"boolean"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},"selected_alias":{"description":"Value for selected alias.","maxLength":200,"minLength":1,"type":"string"}},"required":["preparation_approved","selected_alias","expected_effect","instrumentation","replay"],"type":"object"},"kind":"application","name":"prepare_node_characterization","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"phase":{"const":"preparation","type":"string"},"plan":{"additionalProperties":false,"properties":{"allowed_boundaries":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length"],"type":"object"},"authority":{"additionalProperties":false,"properties":{"execution_approved":{"const":false,"type":"boolean"},"network":{"enum":["none","loopback"],"type":"string"},"preparation_approved":{"const":true,"type":"boolean"},"provider_owned_process_only":{"const":true,"type":"boolean"}},"required":["preparation_approved","execution_approved","network","provider_owned_process_only"],"type":"object"},"callable":{"additionalProperties":false,"properties":{"callable_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"export_name":{"maxLength":1000,"minLength":1,"type":"string"},"module_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selector_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"semantic_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["callable_id","module_id","export_name","semantic_evidence_id","selector_sha256"],"type":"object"},"determinism":{"additionalProperties":false,"properties":{"clock":{"enum":["fixed","real"],"type":"string"},"identifiers":{"enum":["deterministic","runtime"],"type":"string"},"randomness":{"enum":["seeded","system"],"type":"string"},"seed":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["clock","randomness","identifiers","seed"],"type":"object"},"expected_effect":{"enum":["pure","observation-only"],"type":"string"},"isolated_home":{"maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"properties":{"idle_timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"},"max_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_calls":{"maximum":10000,"minimum":1,"type":"integer"},"max_files":{"maximum":100000,"minimum":0,"type":"integer"},"max_handles":{"maximum":100000,"minimum":0,"type":"integer"},"max_processes":{"maximum":1000,"minimum":0,"type":"integer"},"timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"}},"required":["max_calls","max_processes","max_files","max_bytes","max_handles","timeout_ms","idle_timeout_ms"],"type":"object"},"plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"preparation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime":{"additionalProperties":false,"properties":{"executable_path":{"maxLength":4096,"minLength":1,"type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"family":{"maxLength":100,"minLength":1,"type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"provider_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"version":{"maxLength":500,"minLength":1,"type":"string"}},"required":["family","provider_id","executable_path","executable_sha256","version","profile_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"working_directory":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["schema_version","plan_sha256","preparation_sha256","artifact","runtime","callable","working_directory","isolated_home","expected_effect","allowed_boundaries","limits","determinism","authority"],"type":"object"},"replay":{"additionalProperties":false,"properties":{"evidence":{"type":"null"},"phase":{"const":"plan","type":"string"},"plan":{"additionalProperties":false,"properties":{"cases":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},"case_id":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["case_id","arguments","sha256"],"type":"object"},"type":"array"},"determinism":{"additionalProperties":false,"properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","type":"string"},"platform":{"const":"linux","default":"linux","type":"string"},"random_seed":{"default":0,"maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","type":"string"}},"required":["clock_iso","random_seed","locale","timezone","platform"],"type":"object"},"effects":{"items":{"type":"string"},"type":"array"},"filesystem":{"additionalProperties":false,"properties":{"host_writes":{"const":false,"type":"boolean"},"private_tmpfs_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["host_writes","private_tmpfs_bytes"],"type":"object"},"left":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"limits":{"additionalProperties":false,"properties":{"cpu_quota_percent":{"default":50,"maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"maximum":10000,"minimum":100,"type":"integer"}},"required":["wall_time_ms","memory_bytes","tasks","cpu_quota_percent","tmpfs_bytes","module_bytes","input_bytes","protocol_bytes","output_bytes","stderr_bytes","result_depth","result_nodes"],"type":"object"},"network":{"const":"none","type":"string"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_version":{"const":"linux-bwrap-systemd-v1","type":"string"},"reproducer_export":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"const":"evidence_write","type":"string"},"include_sources":{"type":"boolean"},"path":{"minLength":1,"type":"string"}},"required":["path","include_sources","authority"],"type":"object"},{"type":"null"}]},"right":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"runtime":{"additionalProperties":false,"properties":{"executable":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"read_only_files":{"items":{"additionalProperties":false,"properties":{"destination_path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["source_path","destination_path","sha256"],"type":"object"},"minItems":1,"type":"array"},"worker":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["executable","worker","read_only_files"],"type":"object"},"sandbox":{"additionalProperties":false,"properties":{"bubblewrap":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"seccomp_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"shell":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemctl":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemd_run":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["bubblewrap","systemd_run","systemctl","shell","seccomp_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","plan_digest","policy_version","policy_sha256","network","filesystem","runtime","sandbox","left","cases","determinism","limits","effects","reproducer_export"],"type":"object"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"maxItems":0,"minItems":0,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},"schema_version":{"const":1,"type":"number"},"transformation":{"additionalProperties":false,"properties":{"artifact_path":{"maxLength":4096,"minLength":1,"type":"string"},"inserted_ranges":{"items":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inserted_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"purpose":{"enum":["factory-prefix","export-binding","factory-suffix"],"type":"string"}},"required":["byte_start","byte_end","inserted_sha256","purpose"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"instrumented_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"instrumented_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"commonjs-factory-export-v1","type":"string"},"original_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_format":{"const":"commonjs-factory","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_range":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"selected_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256"],"type":"object"},"source_map":{"const":null,"type":"null"}},"required":["schema_version","kind","artifact_path","original_sha256","original_byte_length","instrumented_sha256","instrumented_byte_length","selected_range","inserted_ranges","output_format","source_map"],"type":"object"},"transformation_evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]}},"required":["schema_version","phase","plan","transformation","transformation_evidence","replay"],"type":"object"},"requiresSession":false,"title":"Prepare Node Characterization"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Recompute and execute one separately approved exact Node characterization plan in the owned controlled-replay boundary. Returns transformation, replay, cleanup, and provider-neutral characterization Evidence v2; stale plans fail before execution.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved_plan_sha256":"0000000000000000000000000000000000000000000000000000000000000000","execution_approved":true,"preparation":{"expected_effect":"pure","instrumentation":{"artifact_path":"/approved/bundle.js","artifact_sha256":"0000000000000000000000000000000000000000000000000000000000000000","selection":{"byte_end":120,"byte_start":100,"export_name":"selected","selected_sha256":"0000000000000000000000000000000000000000000000000000000000000000"}},"preparation_approved":true,"replay":{"cases":[{"arguments":[""],"case_id":"empty"}],"left":{"entry_alias":"bundle","entry_export":"selected","modules":[{"alias":"bundle","dependencies":{},"format":"commonjs-factory","path":"/approved/bundle.js","role":"module"}]},"mode":"plan"},"selected_alias":"bundle"}}],"properties":{"approved_plan_sha256":{"description":"Exact SHA-256 digest of approved plan.","pattern":"^[a-f0-9]{64}$","type":"string"},"execution_approved":{"const":true,"description":"Explicit operator approval for execution.","type":"boolean"},"preparation":{"additionalProperties":false,"description":"Value for preparation.","properties":{"expected_effect":{"description":"Expected effect used to reject stale or mismatched input.","enum":["pure","observation-only"],"type":"string"},"instrumentation":{"additionalProperties":false,"description":"Value for instrumentation.","properties":{"artifact_path":{"description":"Local filesystem path for artifact.","maxLength":4096,"minLength":1,"type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"selection":{"additionalProperties":false,"description":"Value for selection.","properties":{"byte_end":{"description":"Value for byte end.","maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"description":"Value for byte start.","maximum":9007199254740991,"minimum":0,"type":"integer"},"export_name":{"description":"Value for export name.","pattern":"^[A-Za-z_$][A-Za-z0-9_$]{0,199}$","type":"string"},"selected_sha256":{"description":"Exact SHA-256 digest of selected.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256","export_name"],"type":"object"}},"required":["artifact_path","artifact_sha256","selection"],"type":"object"},"preparation_approved":{"const":true,"description":"Explicit operator approval for preparation.","type":"boolean"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},"selected_alias":{"description":"Value for selected alias.","maxLength":200,"minLength":1,"type":"string"}},"required":["preparation_approved","selected_alias","expected_effect","instrumentation","replay"],"type":"object"}},"required":["execution_approved","approved_plan_sha256","preparation"],"type":"object"},"kind":"application","name":"execute_node_characterization","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"phase":{"const":"execution","type":"string"},"plan":{"additionalProperties":false,"properties":{"allowed_boundaries":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length"],"type":"object"},"authority":{"additionalProperties":false,"properties":{"execution_approved":{"const":false,"type":"boolean"},"network":{"enum":["none","loopback"],"type":"string"},"preparation_approved":{"const":true,"type":"boolean"},"provider_owned_process_only":{"const":true,"type":"boolean"}},"required":["preparation_approved","execution_approved","network","provider_owned_process_only"],"type":"object"},"callable":{"additionalProperties":false,"properties":{"callable_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"export_name":{"maxLength":1000,"minLength":1,"type":"string"},"module_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selector_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"semantic_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["callable_id","module_id","export_name","semantic_evidence_id","selector_sha256"],"type":"object"},"determinism":{"additionalProperties":false,"properties":{"clock":{"enum":["fixed","real"],"type":"string"},"identifiers":{"enum":["deterministic","runtime"],"type":"string"},"randomness":{"enum":["seeded","system"],"type":"string"},"seed":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["clock","randomness","identifiers","seed"],"type":"object"},"expected_effect":{"enum":["pure","observation-only"],"type":"string"},"isolated_home":{"maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"properties":{"idle_timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"},"max_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_calls":{"maximum":10000,"minimum":1,"type":"integer"},"max_files":{"maximum":100000,"minimum":0,"type":"integer"},"max_handles":{"maximum":100000,"minimum":0,"type":"integer"},"max_processes":{"maximum":1000,"minimum":0,"type":"integer"},"timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"}},"required":["max_calls","max_processes","max_files","max_bytes","max_handles","timeout_ms","idle_timeout_ms"],"type":"object"},"plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"preparation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime":{"additionalProperties":false,"properties":{"executable_path":{"maxLength":4096,"minLength":1,"type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"family":{"maxLength":100,"minLength":1,"type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"provider_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"version":{"maxLength":500,"minLength":1,"type":"string"}},"required":["family","provider_id","executable_path","executable_sha256","version","profile_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"working_directory":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["schema_version","plan_sha256","preparation_sha256","artifact","runtime","callable","working_directory","isolated_home","expected_effect","allowed_boundaries","limits","determinism","authority"],"type":"object"},"replay":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema1"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"phase":{"const":"execute","type":"string"},"plan":{"type":"null"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema1"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"minItems":1,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},"schema_version":{"const":1,"type":"number"},"transformation":{"additionalProperties":false,"properties":{"artifact_path":{"maxLength":4096,"minLength":1,"type":"string"},"inserted_ranges":{"items":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inserted_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"purpose":{"enum":["factory-prefix","export-binding","factory-suffix"],"type":"string"}},"required":["byte_start","byte_end","inserted_sha256","purpose"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"instrumented_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"instrumented_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"commonjs-factory-export-v1","type":"string"},"original_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_format":{"const":"commonjs-factory","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_range":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"selected_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256"],"type":"object"},"source_map":{"const":null,"type":"null"}},"required":["schema_version","kind","artifact_path","original_sha256","original_byte_length","instrumented_sha256","instrumented_byte_length","selected_range","inserted_ranges","output_format","source_map"],"type":"object"},"transformation_evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]}},"required":["schema_version","phase","plan","transformation","transformation_evidence","evidence","replay"],"type":"object"},"requiresSession":false,"title":"Execute Node Characterization"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Generate one deterministic page of a ReconstructionObligationLedger/v1 from an authenticated Evidence v2 bundle, reviewed obligations, and an explicit reconstruction manifest. Static candidates remain candidates; duplicate ownership, missing original or reconstruction cases, missing parser/type, weak verifier authority, unenumerated claims, contradictions, dependencies, and residual unknowns fail closed. Every page carries the same full-ledger closure digest and typed per-obligation diagnostics.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[],"records":[],"scenarios":[],"unknowns":[]},"limits":{"max_obligations":1000},"manifest":{"bindings":[],"contradictions":[],"schema_version":1},"page":{"limit":50,"offset":0},"reviewed_obligations":[]}],"properties":{"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"limits":{"additionalProperties":false,"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_obligations":{"description":"Maximum permitted obligations for this operation.","maximum":10000,"minimum":1,"type":"integer"}},"required":["max_obligations"],"type":"object"},"manifest":{"additionalProperties":false,"description":"Value for manifest.","properties":{"bindings":{"description":"Value for bindings.","items":{"additionalProperties":false,"properties":{"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"description":"Value for case kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"description":"Value for original cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"description":"Value for owner.","properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"description":"Value for domain type.","maxLength":4096,"minLength":1,"type":"string"},"parser":{"description":"Value for parser.","maxLength":4096,"minLength":1,"type":"string"},"schema":{"description":"Value for schema.","maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}],"description":"Value for parser type."},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"description":"Value for command.","maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"description":"Value for enumerated obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"description":"Value for nondeterminism.","properties":{"mode":{"description":"Operation mode that selects the requested behavior.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"description":"Value for specification.","maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"description":"Exact Evidence v2 identifier for the result observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}],"description":"Value for verifier."}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},"maxItems":10000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":2,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","bindings","contradictions"],"type":"object"},"page":{"additionalProperties":false,"description":"Value for page.","properties":{"limit":{"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"description":"Zero-based index of the first result to return.","maximum":10000,"minimum":0,"type":"integer"}},"required":["offset","limit"],"type":"object"},"reviewed_obligations":{"description":"Value for reviewed obligations.","items":{"additionalProperties":false,"properties":{"application_layer":{"description":"Value for application layer.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"dependency_obligation_ids":{"description":"Value for dependency obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"disposition":{"description":"Value for disposition.","enum":["active","blocked","out-of-scope"],"type":"string"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"description":"Value for obligation version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"required":{"description":"Value for required.","type":"boolean"},"required_case_kinds":{"description":"Value for required case kinds.","items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"description":"Value for required fixture authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"description":"Value for required next evidence.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"description":"Value for required original authority.","enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"description":"Value for required verifier authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"description":"Value for requires parser type.","type":"boolean"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"review_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the review observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"target":{"additionalProperties":false,"description":"Value for target.","properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for application node id."},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of artifact."},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for semantic node id."}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"description":"Value for unavailable authority.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","application_layer","family","target","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","disposition","review_evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"}},"required":["evidence_bundle","reviewed_obligations","manifest","limits","page"],"type":"object"},"kind":"application","name":"build_reconstruction_obligation_ledger","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"closure_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"max_obligations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"omitted_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete","partial"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_count","max_obligations"],"type":"object"},"dependency_graph":{"items":{"additionalProperties":false,"properties":{"depends_on_obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","depends_on_obligation_id"],"type":"object"},"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"ledger_id":{"pattern":"^rol_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"obligations":{"items":{"additionalProperties":false,"properties":{"application_layer":{"enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"authority_references":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"},"state":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["evidence_id","authority","state","location"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"binding":{"anyOf":[{"additionalProperties":false,"properties":{"fixtures":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"properties":{"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"maxLength":4096,"minLength":1,"type":"string"},"parser":{"maxLength":4096,"minLength":1,"type":"string"},"schema":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}]},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"properties":{"mode":{"enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}]}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},{"type":"null"}]},"dependency_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"diagnostics":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["duplicate-definition","missing-owner","ambiguous-owner","missing-parser-type","missing-original-case","weak-original-case-authority","missing-case","weak-fixture-authority","missing-verifier","verifier-does-not-enumerate","missing-verifier-result","weak-verifier-authority","verifier-failed","static-only","contradiction","contradiction-evidence-missing","residual-unknown","dependency-missing","dependency-open","unavailable-authority","blocked","out-of-scope"],"type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["code","detail"],"type":"object"},"maxItems":1000,"type":"array"},"family":{"maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_cases":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"origin":{"enum":["generated","reviewed"],"type":"string"},"required":{"type":"boolean"},"required_case_kinds":{"items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"type":"boolean"},"residual_unknown_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"source_state":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"},"status":{"enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"},"target":{"additionalProperties":false,"properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"location":{"maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","origin","application_layer","family","target","authority_references","source_state","observed_cases","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","binding","status","diagnostics"],"type":"object"},"maxItems":100,"type":"array"},"ownership_graph":{"items":{"additionalProperties":false,"properties":{"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"symbol":{"maxLength":1024,"minLength":1,"type":"string"}},"required":["obligation_id","module_path","symbol"],"type":"object"},"type":"array"},"page":{"additionalProperties":false,"properties":{"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offset","limit","total","returned","next_offset"],"type":"object"},"reports":{"additionalProperties":false,"properties":{"contradicted_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_owner_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_verifier_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"residual_unknown_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"}},"required":["missing_owner_obligation_ids","missing_verifier_obligation_ids","contradicted_obligation_ids","residual_unknown_ids"],"type":"object"},"schema":{"const":"ReconstructionObligationLedger","type":"string"},"schema_version":{"const":1,"type":"number"},"status":{"enum":["ready","open","failed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"by_application_layer":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_evidence_authority":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_status":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"required":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_open":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","required","verified","required_open","by_status","by_application_layer","by_evidence_authority"],"type":"object"}},"required":["schema","schema_version","ledger_id","closure_digest","status","coverage","summary","reports","ownership_graph","dependency_graph","evidence_links","limitations","page","obligations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Build Reconstruction Obligation Ledger"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate the fixed nine-stage public reconstruction journey into a deterministic ReconstructionReadinessReport/v1. Exact capability limits, provider routing, CLI/MCP status parity, bounded authority, partial-order comparison, contradictions, obligation closure, cleanup, and replay digests fail closed. Aggregate pass is emitted only when every required stage and check passes with attributable Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"capabilities":[{"authority_scopes":["investigation-input"],"available":true,"bounded":true,"capability_id":"analyze-javascript-application","limits":[{"name":"max-ast-nodes","unit":"count","value":2000000}],"side_effect":"reads-target","unavailable_reason":null}],"cleanup":[{"cancelled":true,"diagnostic_evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"owned_resources_remaining":0,"run_id":"run.cancelled"}],"client":{"name":"synthetic-mcp-client","negotiated_capabilities":["elicitation","progress","resources"],"version":"1"},"closure_history":[{"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_digest":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","newly_verified_obligation_ids":[],"required_open":1,"sequence":0,"status":"open"},{"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","newly_verified_obligation_ids":["obl.readiness"],"required_open":0,"sequence":1,"status":"ready"}],"comparisons":[{"comparison_id":"comparison.concurrent","concurrent":true,"contradiction_ids":[],"deliberate_divergence_ref":null,"divergence_refs":[],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"partial-order","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"equivalent"},{"comparison_id":"comparison.divergence","concurrent":true,"contradiction_ids":[],"deliberate_divergence_ref":"/events/primary","divergence_refs":["/events/primary"],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"finite-traces","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"different"},{"comparison_id":"comparison.contradicted","concurrent":false,"contradiction_ids":["contradiction.artifact"],"deliberate_divergence_ref":null,"divergence_refs":[],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"finite-traces","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"unknown"}],"contradictions":[{"affected_comparison_ids":["comparison.contradicted"],"contradiction_id":"contradiction.artifact","declared_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91"],"observed_sha256":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","policy":"record-and-continue"}],"delegation_checks":[{"candidate_id":"candidate.reconstructed","delegates_to_authority":false,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"]}],"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"}],"records":[{"authority":"controlled-replay","confidence":"observed","environment":null,"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"passed":true,"variant":"authority"},"operation":"run_reconstruction_readiness_fixture","parameters":{"variant":"authority"},"predicate_type":"rea.reconstruction-readiness-fixture/v1","provider":{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"},"raw_result":null,"schema_version":2,"subject":null},{"authority":"controlled-replay","confidence":"observed","environment":null,"evidence_id":"ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"passed":true,"variant":"contradiction"},"operation":"run_reconstruction_readiness_fixture","parameters":{"variant":"contradiction"},"predicate_type":"rea.reconstruction-readiness-fixture/v1","provider":{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"scenarios":[{"authority":"controlled-replay","evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","operation":"run_reconstruction_readiness_fixture"},{"authority":"controlled-replay","evidence_id":"ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91","operation":"run_reconstruction_readiness_fixture"}],"unknowns":[]},"fixtures":[{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.native"],"environment_id":"environment.synthetic","fixture_id":"fixture.native","kind":"native"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.javascript-cli"],"environment_id":"environment.synthetic","fixture_id":"fixture.javascript-cli","kind":"javascript-cli"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.electron"],"environment_id":"environment.synthetic","fixture_id":"fixture.electron","kind":"electron"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.incomplete-reconstruction"],"environment_id":"environment.synthetic","fixture_id":"fixture.incomplete-reconstruction","kind":"incomplete-reconstruction"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.broken-runtime"],"environment_id":"environment.synthetic","fixture_id":"fixture.broken-runtime","kind":"broken-runtime"}],"grants":[{"decision":"denied","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"grant_id":"grant.denied","launched_process":false,"scope":"process-capture"},{"decision":"granted","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"grant_id":"grant.session","launched_process":true,"scope":"process-capture"}],"identity":{"catalog_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","cli_version":"2.4.0","providers":[{"digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","provider_id":"javascript-application","reason_code":null,"state":"available","version":"1"},{"digest":null,"provider_id":"broken-runtime-probe","reason_code":"host-runtime-linker-failure","state":"broken-host","version":null}],"server_version":"2.4.0","skill_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","versions":[{"component":"rea-cli","digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","remediation":null,"state":"current","version":"2.4.0"},{"component":"rea-server","digest":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","remediation":"Restart the connected MCP server.","state":"stale","version":"2.3.0"},{"component":"rea-server","digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","remediation":null,"state":"current","version":"2.4.0"}]},"obligation_ledger":{"closure_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","coverage":{"max_obligations":100,"omitted_count":0,"status":"complete","truncated":false},"dependency_graph":[],"evidence_links":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_id":"rol_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","limitations":[],"obligations":[{"application_layer":"process","authority_references":[{"authority":"controlled-replay","evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","location":"/fixture","state":"observed"}],"binding":{"fixtures":[{"authority":"packaged-process","case_kind":"positive","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.positive"},{"authority":"packaged-process","case_kind":"negative","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.negative"},{"authority":"packaged-process","case_kind":"malformed","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.malformed"},{"authority":"packaged-process","case_kind":"cancellation","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.cancellation"},{"authority":"packaged-process","case_kind":"teardown","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.teardown"}],"obligation_id":"obl.readiness","original_cases":[{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"positive","location":"/original/positive"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"negative","location":"/original/negative"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"malformed","location":"/original/malformed"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"cancellation","location":"/original/cancellation"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"teardown","location":"/original/teardown"}],"owner":{"module_path":"src/readiness.ts","owner_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","symbol":"runReadiness"},"parser_type":null,"verifier":{"authority":"packaged-process","claim_id":"claim.readiness","command":"npm run verify:readiness","enumerated_obligation_ids":["obl.readiness"],"nondeterminism":{"mode":"partial-order","specification":"Startup precedes teardown."},"result_evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","status":"pass","verifier_id":"verifier.readiness"}},"dependency_obligation_ids":[],"diagnostics":[],"family":"packaged-process-lifecycle","obligation_id":"obl.readiness","obligation_version":1,"observed_cases":[{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"positive","location":"/original/positive"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"negative","location":"/original/negative"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"malformed","location":"/original/malformed"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"cancellation","location":"/original/cancellation"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"teardown","location":"/original/teardown"}],"origin":"reviewed","required":true,"required_case_kinds":["positive","negative","malformed","cancellation","teardown"],"required_fixture_authority":"packaged-process","required_next_evidence":[],"required_original_authority":"process","required_verifier_authority":"packaged-process","requires_parser_type":false,"residual_unknown_ids":[],"source_state":"observed","status":"verified","target":{"application_node_id":null,"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","location":"/fixture","semantic_node_id":null},"title":"Preserve the packaged readiness fixture lifecycle","unavailable_authority":[]}],"ownership_graph":[{"module_path":"src/readiness.ts","obligation_id":"obl.readiness","symbol":"runReadiness"}],"reports":{"contradicted_obligation_ids":[],"missing_owner_obligation_ids":[],"missing_verifier_obligation_ids":[],"residual_unknown_ids":[]},"schema":"ReconstructionObligationLedger","schema_version":1,"status":"ready","summary":{"by_application_layer":[{"count":0,"key":"cli"},{"count":0,"key":"protocol"},{"count":0,"key":"electron"},{"count":0,"key":"persistence"},{"count":1,"key":"process"},{"count":0,"key":"runtime"},{"count":0,"key":"packaging"},{"count":0,"key":"native-abi"},{"count":0,"key":"application"},{"count":0,"key":"other"}],"by_evidence_authority":[{"count":0,"key":"candidate"},{"count":1,"key":"observed"},{"count":0,"key":"reviewed"},{"count":0,"key":"unknown"}],"by_status":[{"count":0,"key":"unowned"},{"count":0,"key":"characterized"},{"count":0,"key":"implemented"},{"count":1,"key":"verified"},{"count":0,"key":"contradicted"},{"count":0,"key":"blocked"},{"count":0,"key":"out-of-scope"},{"count":0,"key":"unknown"}],"required":1,"required_open":0,"total":1,"verified":1}},"operation_outcomes":[{"call_kind":"valid","cli_exit_code":0,"error_code":null,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":true,"mcp_status":null,"operation":"inspect-artifact","recovered":false,"sequence":0,"surface":"cli"},{"call_kind":"valid","cli_exit_code":null,"error_code":null,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":true,"mcp_status":"success","operation":"inspect-artifact","recovered":false,"sequence":1,"surface":"mcp"},{"call_kind":"permission","cli_exit_code":2,"error_code":"permission-required","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":false,"mcp_status":null,"operation":"capture-process","recovered":true,"sequence":2,"surface":"cli"},{"call_kind":"permission","cli_exit_code":null,"error_code":"permission-required","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":false,"mcp_status":"non-success","operation":"capture-process","recovered":true,"sequence":3,"surface":"mcp"}],"replay":{"deterministic":true,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_source_digest":null,"stale_input_detected":true,"tamper_detected":true},"schema_version":1,"stages":[{"capability_issue":null,"checks":[{"check_id":"target-free-start","detail":"Synthetic conformance proved target-free-start.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"artifact-inventory","detail":"Synthetic conformance proved artifact-inventory.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"compatible-workflow-selected","detail":"Synthetic conformance proved compatible-workflow-selected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"limits-visible","detail":"Synthetic conformance proved limits-visible.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"discover-classify","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"broken-runtime-distinguished","detail":"Synthetic conformance proved broken-runtime-distinguished.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"version-skew-detected","detail":"Synthetic conformance proved version-skew-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"revision-changed-after-recovery","detail":"Synthetic conformance proved revision-changed-after-recovery.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"diagnose-environment","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"missing-scope-reported","detail":"Synthetic conformance proved missing-scope-reported.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"narrow-grant-resumed","detail":"Synthetic conformance proved narrow-grant-resumed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"expansion-reprompted","detail":"Synthetic conformance proved expansion-reprompted.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"denial-launched-nothing","detail":"Synthetic conformance proved denial-launched-nothing.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"acquire-authority","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"native-routed","detail":"Synthetic conformance proved native-routed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"javascript-routed","detail":"Synthetic conformance proved javascript-routed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"unknowns-preserved","detail":"Synthetic conformance proved unknowns-preserved.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"static-analysis","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"predicate-driven","detail":"Synthetic conformance proved predicate-driven.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"descendant-settled","detail":"Synthetic conformance proved descendant-settled.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"electron-correlated","detail":"Synthetic conformance proved electron-correlated.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"cancel-cleanup-preserved-evidence","detail":"Synthetic conformance proved cancel-cleanup-preserved-evidence.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"reactive-scenarios","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"partial-order-accepted","detail":"Synthetic conformance proved partial-order-accepted.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"divergence-localized","detail":"Synthetic conformance proved divergence-localized.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"incomplete-is-unknown","detail":"Synthetic conformance proved incomplete-is-unknown.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"compare-authority-candidate","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"record-and-continue","detail":"Synthetic conformance proved record-and-continue.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"affected-equivalence-blocked","detail":"Synthetic conformance proved affected-equivalence-blocked.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"unaffected-comparison-continued","detail":"Synthetic conformance proved unaffected-comparison-continued.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"preserve-contradictions","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"incomplete-detected","detail":"Synthetic conformance proved incomplete-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"incremental-verifier-closure","detail":"Synthetic conformance proved incremental-verifier-closure.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"delegation-rejected","detail":"Synthetic conformance proved delegation-rejected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"verify-reconstruction-closure","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"cli-mcp-parity","detail":"Synthetic conformance proved cli-mcp-parity.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"failure-status-parity","detail":"Synthetic conformance proved failure-status-parity.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"deterministic-replay","detail":"Synthetic conformance proved deterministic-replay.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"tamper-detected","detail":"Synthetic conformance proved tamper-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"stale-input-detected","detail":"Synthetic conformance proved stale-input-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"export-replay","status":"pass"}],"workflow_candidates":[{"compatibility":"compatible","fixture_id":"fixture.native","invoked":true,"provider_id":"provider.native","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.native"},{"compatibility":"compatible","fixture_id":"fixture.javascript-cli","invoked":true,"provider_id":"provider.javascript-cli","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.javascript-cli"},{"compatibility":"compatible","fixture_id":"fixture.electron","invoked":true,"provider_id":"provider.electron","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.electron"},{"compatibility":"compatible","fixture_id":"fixture.incomplete-reconstruction","invoked":true,"provider_id":"provider.incomplete-reconstruction","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.incomplete-reconstruction"},{"compatibility":"compatible","fixture_id":"fixture.broken-runtime","invoked":true,"provider_id":null,"reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.broken-runtime"}]}],"properties":{"capabilities":{"description":"Value for capabilities.","items":{"additionalProperties":false,"properties":{"authority_scopes":{"description":"Value for authority scopes.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"available":{"description":"Value for available.","type":"boolean"},"bounded":{"description":"Value for bounded.","type":"boolean"},"capability_id":{"description":"Value for capability id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"limits":{"description":"Bounded resource-consumption and result-size limits for this operation.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"unit":{"description":"Value for unit.","enum":["count","bytes","milliseconds","ratio"],"type":"string"},"value":{"description":"Value for value.","minimum":0,"type":"number"}},"required":["name","value","unit"],"type":"object"},"maxItems":100,"type":"array"},"side_effect":{"description":"Value for side effect.","enum":["none","reads-target","launches-process","writes-workspace","network-observation"],"type":"string"},"unavailable_reason":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for unavailable reason."}},"required":["capability_id","available","bounded","side_effect","authority_scopes","limits","unavailable_reason"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"cleanup":{"description":"Value for cleanup.","items":{"additionalProperties":false,"properties":{"cancelled":{"description":"Value for cancelled.","type":"boolean"},"diagnostic_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the diagnostic observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"owned_resources_remaining":{"description":"Value for owned resources remaining.","maximum":9007199254740991,"minimum":0,"type":"integer"},"run_id":{"description":"Value for run id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["run_id","cancelled","owned_resources_remaining","diagnostic_evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"client":{"additionalProperties":false,"description":"Value for client.","properties":{"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"negotiated_capabilities":{"description":"Value for negotiated capabilities.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"version":{"description":"Value for version.","maxLength":4096,"minLength":1,"type":"string"}},"required":["name","version","negotiated_capabilities"],"type":"object"},"closure_history":{"description":"Value for closure history.","items":{"additionalProperties":false,"properties":{"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"ledger_digest":{"description":"Value for ledger digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"newly_verified_obligation_ids":{"description":"Value for newly verified obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"type":"array"},"required_open":{"description":"Value for required open.","maximum":9007199254740991,"minimum":0,"type":"integer"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["ready","open","failed","unknown"],"type":"string"}},"required":["sequence","ledger_digest","status","required_open","newly_verified_obligation_ids","evidence_ids"],"type":"object"},"maxItems":1000,"minItems":2,"type":"array"},"comparisons":{"description":"Validated comparison Evidence records to aggregate.","items":{"additionalProperties":false,"properties":{"comparison_id":{"description":"Value for comparison id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"concurrent":{"description":"Value for concurrent.","type":"boolean"},"contradiction_ids":{"description":"Value for contradiction ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"deliberate_divergence_ref":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for deliberate divergence ref."},"divergence_refs":{"description":"Value for divergence refs.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schedule_semantics":{"description":"Value for schedule semantics.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"},"unavailable_authority":{"description":"Value for unavailable authority.","type":"boolean"},"unstable":{"description":"Value for unstable.","type":"boolean"},"verdict":{"description":"Value for verdict.","enum":["equivalent","different","unknown"],"type":"string"}},"required":["comparison_id","verdict","schedule_semantics","concurrent","truncated","unavailable_authority","unstable","deliberate_divergence_ref","divergence_refs","contradiction_ids","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"affected_comparison_ids":{"description":"Value for affected comparison ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"contradiction_id":{"description":"Value for contradiction id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"declared_sha256":{"description":"Exact SHA-256 digest of declared.","pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":2,"type":"array"},"observed_sha256":{"description":"Exact SHA-256 digest of observed.","pattern":"^[a-f0-9]{64}$","type":"string"},"policy":{"const":"record-and-continue","description":"Value for policy.","type":"string"}},"required":["contradiction_id","declared_sha256","observed_sha256","policy","affected_comparison_ids","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"delegation_checks":{"description":"Value for delegation checks.","items":{"additionalProperties":false,"properties":{"candidate_id":{"description":"Value for candidate id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"delegates_to_authority":{"description":"Value for delegates to authority.","type":"boolean"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"}},"required":["candidate_id","delegates_to_authority","evidence_ids"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"deliberate_faults":{"description":"Value for deliberate faults.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"environment_id":{"description":"Value for environment id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"kind":{"description":"Value for kind.","enum":["native","javascript-cli","electron","incomplete-reconstruction","broken-runtime"],"type":"string"}},"required":["fixture_id","kind","artifact_sha256","environment_id","deliberate_faults"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"grants":{"description":"Value for grants.","items":{"additionalProperties":false,"properties":{"decision":{"description":"Value for decision.","enum":["granted","denied","cancelled","restart-required"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"grant_id":{"description":"Value for grant id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"launched_process":{"description":"Value for launched process.","type":"boolean"},"scope":{"description":"Value for scope.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["grant_id","scope","decision","launched_process","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"identity":{"additionalProperties":false,"description":"Value for identity.","properties":{"catalog_digest":{"description":"Value for catalog digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"cli_version":{"description":"Value for cli version.","maxLength":4096,"minLength":1,"type":"string"},"providers":{"description":"Value for providers.","items":{"additionalProperties":false,"properties":{"digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for digest."},"provider_id":{"description":"Exact deep-analysis provider ID, or automatic selection when omitted.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"reason_code":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for reason code."},"state":{"description":"Value for state.","enum":["available","unavailable","incompatible","broken-host"],"type":"string"},"version":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["provider_id","version","digest","state","reason_code"],"type":"object"},"maxItems":100,"type":"array"},"server_version":{"description":"Value for server version.","maxLength":4096,"minLength":1,"type":"string"},"skill_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for skill digest."},"versions":{"description":"Value for versions.","items":{"additionalProperties":false,"properties":{"component":{"description":"Value for component.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for digest."},"remediation":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for remediation."},"state":{"description":"Value for state.","enum":["current","stale","unavailable"],"type":"string"},"version":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["component","version","digest","state","remediation"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}},"required":["cli_version","server_version","catalog_digest","skill_digest","versions","providers"],"type":"object"},"obligation_ledger":{"additionalProperties":false,"description":"Value for obligation ledger.","properties":{"closure_digest":{"description":"Value for closure digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"description":"Exact reconstruction-coverage commitment to verify.","properties":{"max_obligations":{"description":"Maximum permitted obligations for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"omitted_count":{"description":"Value for omitted count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["complete","partial"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["status","truncated","omitted_count","max_obligations"],"type":"object"},"dependency_graph":{"description":"Value for dependency graph.","items":{"additionalProperties":false,"properties":{"depends_on_obligation_id":{"description":"Value for depends on obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","depends_on_obligation_id"],"type":"object"},"type":"array"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"ledger_id":{"description":"Value for ledger id.","pattern":"^rol_[a-f0-9]{64}$","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"obligations":{"description":"Value for obligations.","items":{"additionalProperties":false,"properties":{"application_layer":{"description":"Value for application layer.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"authority_references":{"description":"Value for authority references.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"state":{"description":"Value for state.","enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["evidence_id","authority","state","location"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"binding":{"anyOf":[{"additionalProperties":false,"properties":{"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"description":"Value for case kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"description":"Value for original cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"description":"Value for owner.","properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"description":"Value for domain type.","maxLength":4096,"minLength":1,"type":"string"},"parser":{"description":"Value for parser.","maxLength":4096,"minLength":1,"type":"string"},"schema":{"description":"Value for schema.","maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}],"description":"Value for parser type."},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"description":"Value for command.","maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"description":"Value for enumerated obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"description":"Value for nondeterminism.","properties":{"mode":{"description":"Operation mode that selects the requested behavior.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"description":"Value for specification.","maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"description":"Exact Evidence v2 identifier for the result observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}],"description":"Value for verifier."}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},{"type":"null"}],"description":"Value for binding."},"dependency_obligation_ids":{"description":"Value for dependency obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"diagnostics":{"description":"Value for diagnostics.","items":{"additionalProperties":false,"properties":{"code":{"description":"Value for code.","enum":["duplicate-definition","missing-owner","ambiguous-owner","missing-parser-type","missing-original-case","weak-original-case-authority","missing-case","weak-fixture-authority","missing-verifier","verifier-does-not-enumerate","missing-verifier-result","weak-verifier-authority","verifier-failed","static-only","contradiction","contradiction-evidence-missing","residual-unknown","dependency-missing","dependency-open","unavailable-authority","blocked","out-of-scope"],"type":"string"},"detail":{"description":"Requested response detail level.","maxLength":4096,"minLength":1,"type":"string"}},"required":["code","detail"],"type":"object"},"maxItems":1000,"type":"array"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"description":"Value for obligation version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_cases":{"description":"Value for observed cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"origin":{"description":"Value for origin.","enum":["generated","reviewed"],"type":"string"},"required":{"description":"Value for required.","type":"boolean"},"required_case_kinds":{"description":"Value for required case kinds.","items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"description":"Value for required fixture authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"description":"Value for required next evidence.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"description":"Value for required original authority.","enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"description":"Value for required verifier authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"description":"Value for requires parser type.","type":"boolean"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"source_state":{"description":"Value for source state.","enum":["candidate","observed","reviewed","unknown"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"},"target":{"additionalProperties":false,"description":"Value for target.","properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for application node id."},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of artifact."},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for semantic node id."}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"description":"Value for unavailable authority.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","origin","application_layer","family","target","authority_references","source_state","observed_cases","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","binding","status","diagnostics"],"type":"object"},"maxItems":10000,"type":"array"},"ownership_graph":{"description":"Value for ownership graph.","items":{"additionalProperties":false,"properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["obligation_id","module_path","symbol"],"type":"object"},"type":"array"},"reports":{"additionalProperties":false,"description":"Value for reports.","properties":{"contradicted_obligation_ids":{"description":"Value for contradicted obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_owner_obligation_ids":{"description":"Value for missing owner obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_verifier_obligation_ids":{"description":"Value for missing verifier obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"}},"required":["missing_owner_obligation_ids","missing_verifier_obligation_ids","contradicted_obligation_ids","residual_unknown_ids"],"type":"object"},"schema":{"const":"ReconstructionObligationLedger","description":"Value for schema.","type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["ready","open","failed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"description":"Concise evidence-backed summary of the result.","properties":{"by_application_layer":{"description":"Value for by application layer.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_evidence_authority":{"description":"Value for by evidence authority.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_status":{"description":"Value for by status.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"required":{"description":"Value for required.","maximum":9007199254740991,"minimum":0,"type":"integer"},"required_open":{"description":"Value for required open.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"description":"Value for verified.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","required","verified","required_open","by_status","by_application_layer","by_evidence_authority"],"type":"object"}},"required":["schema","schema_version","ledger_id","closure_digest","status","coverage","summary","reports","ownership_graph","dependency_graph","obligations","evidence_links","limitations"],"type":"object"},"operation_outcomes":{"description":"Value for operation outcomes.","items":{"additionalProperties":false,"properties":{"call_kind":{"description":"Value for call kind.","enum":["valid","malformed","over-limit","incompatible-provider","setup","permission","operation"],"type":"string"},"cli_exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for cli exit code."},"error_code":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for error code."},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_success":{"description":"Expected success used to reject stale or mismatched input.","type":"boolean"},"mcp_status":{"anyOf":[{"enum":["success","non-success"],"type":"string"},{"type":"null"}],"description":"Value for mcp status."},"operation":{"description":"Value for operation.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"recovered":{"description":"Value for recovered.","type":"boolean"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":0,"type":"integer"},"surface":{"description":"Value for surface.","enum":["cli","mcp"],"type":"string"}},"required":["sequence","operation","surface","call_kind","expected_success","cli_exit_code","mcp_status","error_code","recovered","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"deterministic":{"description":"Value for deterministic.","type":"boolean"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_source_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Expected source digest used to reject stale or mismatched input."},"stale_input_detected":{"description":"Value for stale input detected.","type":"boolean"},"tamper_detected":{"description":"Value for tamper detected.","type":"boolean"}},"required":["expected_source_digest","deterministic","tamper_detected","stale_input_detected","evidence_ids"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"stages":{"description":"Value for stages.","items":{"additionalProperties":false,"properties":{"capability_issue":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for capability issue."},"checks":{"description":"Value for checks.","items":{"additionalProperties":false,"properties":{"check_id":{"description":"Value for check id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"detail":{"description":"Requested response detail level.","maxLength":4096,"minLength":1,"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"}},"required":["check_id","status","detail","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"next_action":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for next action."},"required":{"description":"Value for required.","type":"boolean"},"stage_id":{"description":"Value for stage id.","enum":["discover-classify","diagnose-environment","acquire-authority","static-analysis","reactive-scenarios","compare-authority-candidate","preserve-contradictions","verify-reconstruction-closure","export-replay"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"}},"required":["stage_id","required","status","capability_issue","next_action","evidence_ids","checks"],"type":"object"},"maxItems":9,"minItems":9,"type":"array"},"workflow_candidates":{"description":"Value for workflow candidates.","items":{"additionalProperties":false,"properties":{"compatibility":{"description":"Value for compatibility.","enum":["compatible","incompatible","unavailable"],"type":"string"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"invoked":{"description":"Value for invoked.","type":"boolean"},"provider_id":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Exact deep-analysis provider ID, or automatic selection when omitted."},"reason_code":{"description":"Value for reason code.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selected":{"description":"Value for selected.","type":"boolean"},"workflow_id":{"description":"Value for workflow id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","workflow_id","provider_id","selected","invoked","compatibility","reason_code"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"}},"required":["schema_version","identity","client","capabilities","fixtures","workflow_candidates","grants","evidence_bundle","comparisons","contradictions","obligation_ledger","operation_outcomes","cleanup","closure_history","delegation_checks","replay","stages"],"type":"object"},"kind":"application","name":"evaluate_reconstruction_readiness","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"metrics":{"additionalProperties":false,"properties":{"cleanup_leak_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"divergence_localization_precision":{"maximum":1,"minimum":0,"type":"number"},"failed_calls_before_prerequisites":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"false_equivalence_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_valid_workflow_selection_rate":{"maximum":1,"minimum":0,"type":"number"},"incompatible_provider_invocations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"malformed_or_over_limit_call_rate":{"maximum":1,"minimum":0,"type":"number"},"nondeterministic_replay_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"recovery_rate":{"maximum":1,"minimum":0,"type":"number"},"unowned_obligation_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["first_valid_workflow_selection_rate","malformed_or_over_limit_call_rate","incompatible_provider_invocations","failed_calls_before_prerequisites","recovery_rate","divergence_localization_precision","false_equivalence_count","unowned_obligation_count","cleanup_leak_count","nondeterministic_replay_count"],"type":"object"},"report_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"report_id":{"pattern":"^rr_[a-f0-9]{64}$","type":"string"},"report_resource_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}\\\\/reconstruction-readiness-report$","type":"string"},"schema":{"const":"ReconstructionReadinessReport","type":"string"},"schema_version":{"const":1,"type":"number"},"source_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"failed_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"passed_required_stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["stages","required_stages","passed_required_stages","findings","failed_findings","unknown_findings"],"type":"object"}},"required":["schema","schema_version","report_id","source_digest","report_digest","status","summary","metrics","report_resource_uri"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Evaluate Reconstruction Readiness"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Atomically commit one canonical evidence-backed reconstruction coverage workspace revision under an approved root. CAS revisions reject lost updates; every Evidence and residual-unknown reference must resolve in the embedded canonical bundle.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"expected_revision":null,"workspace":{"artifacts":[],"boundaries":[],"claims":[],"contradictions":[],"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[],"records":[],"scenarios":[],"unknowns":[]},"name":"replacement","owners":[],"package_proofs":[],"previous_revision_sha256":null,"residual_unknown_ids":[],"revision":1,"revision_sha256":"0000000000000000000000000000000000000000000000000000000000000000","schema_version":1,"surfaces":[],"verifier_contracts":[],"verifier_results":[],"workspace_id":"rcw_0000000000000000000000000000000000000000000000000000000000000000"},"workspace_path":"/approved/coverage.json"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_revision":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Expected revision used to reject stale or mismatched input."},"workspace":{"additionalProperties":false,"description":"Value for workspace.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"additionalProperties":false,"properties":{"artifact_id":{"description":"Value for artifact id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"environment_sha256":{"description":"Exact SHA-256 digest of environment.","pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"version":{"description":"Value for version.","maxLength":500,"minLength":1,"type":"string"}},"required":["artifact_id","artifact_sha256","version","environment_sha256","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"boundaries":{"description":"Value for boundaries.","items":{"additionalProperties":false,"properties":{"allowed_dispositions":{"description":"Value for allowed dispositions.","items":{"enum":["external","non-goal"],"type":"string"},"maxItems":2,"type":"array"},"allowed_unknown_ids":{"description":"Value for allowed unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"required_claim_ids":{"description":"Value for required claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"required_package_proof_kinds":{"description":"Value for required package proof kinds.","items":{"enum":["build","clean-install","package-contents","runtime-routing","authority-independence"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_surface_ids":{"description":"Value for required surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["boundary_id","title","required_surface_ids","required_claim_ids","required_package_proof_kinds","allowed_dispositions","allowed_unknown_ids"],"type":"object"},"maxItems":1000,"type":"array"},"claims":{"description":"Value for claims.","items":{"additionalProperties":false,"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"kind":{"description":"Value for kind.","maxLength":100,"minLength":1,"type":"string"},"required_authority":{"description":"Value for required authority.","enum":["shipped-artifact","controlled-replay","live-observation","external"],"type":"string"},"required_dimensions":{"description":"Value for required dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"surface_ids":{"description":"Value for surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","kind","surface_ids","required_dimensions","required_authority"],"type":"object"},"maxItems":10000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"claim_ids":{"description":"Value for claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"contradiction_id":{"description":"Value for contradiction id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":2,"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["active","resolved"],"type":"string"},"surface_ids":{"description":"Value for surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"}},"required":["contradiction_id","status","surface_ids","claim_ids","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"name":{"description":"Exact name used by this operation.","maxLength":200,"minLength":1,"type":"string"},"owners":{"description":"Value for owners.","items":{"additionalProperties":false,"properties":{"ownership":{"description":"Value for ownership.","oneOf":[{"additionalProperties":false,"properties":{"authority_route":{"description":"Value for authority route.","enum":["none","detected","unknown"],"type":"string"},"disposition":{"const":"implemented","description":"Value for disposition.","type":"string"},"owner_export":{"anyOf":[{"maxLength":500,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for owner export."},"owner_path":{"description":"Local filesystem path for owner.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"package_state":{"description":"Value for package state.","enum":["distributed","missing","unknown"],"type":"string"},"path_state":{"description":"Value for path state.","enum":["present","missing","unknown"],"type":"string"}},"required":["disposition","owner_path","owner_export","owner_sha256","path_state","package_state","authority_route"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"description":"Value for disposition.","enum":["external","non-goal"],"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":4096,"minLength":1,"type":"string"}},"required":["disposition","rationale"],"type":"object"}]},"surface_id":{"description":"Value for surface id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["surface_id","ownership"],"type":"object"},"maxItems":10000,"type":"array"},"package_proofs":{"description":"Value for package proofs.","items":{"additionalProperties":false,"properties":{"artifact_sha256s":{"description":"Value for artifact sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"kind":{"description":"Value for kind.","enum":["build","clean-install","package-contents","runtime-routing","authority-independence"],"type":"string"},"proof_id":{"description":"Value for proof id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"}},"required":["proof_id","kind","status","artifact_sha256s","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"previous_revision_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of previous revision."},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"type":"array"},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"description":"Exact SHA-256 digest of revision.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"surfaces":{"description":"Value for surfaces.","items":{"additionalProperties":false,"properties":{"artifact_id":{"description":"Value for artifact id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"authority":{"description":"Value for authority.","enum":["observed","derived","inferred","historical","external"],"type":"string"},"dependency_surface_ids":{"description":"Value for dependency surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"occurrence_id":{"anyOf":[{"maxLength":500,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for occurrence id."},"surface_id":{"description":"Value for surface id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["surface_id","family","artifact_id","occurrence_id","location","authority","dependency_surface_ids","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"verifier_contracts":{"description":"Value for verifier contracts.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","live-observation","external"],"type":"string"},"claim_ids":{"description":"Value for claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"contract_sha256":{"description":"Exact SHA-256 digest of contract.","pattern":"^[a-f0-9]{64}$","type":"string"},"dimensions":{"description":"Value for dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"max_age_ms":{"description":"Maximum permitted age ms for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"minimum_repeats":{"description":"Value for minimum repeats.","maximum":1000,"minimum":1,"type":"integer"},"normalization_removes_dimensions":{"const":false,"description":"Value for normalization removes dimensions.","type":"boolean"},"normalization_sha256":{"description":"Exact SHA-256 digest of normalization.","pattern":"^[a-f0-9]{64}$","type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_ids","dimensions","authority","max_age_ms","minimum_repeats","normalization_sha256","normalization_removes_dimensions","contract_sha256"],"type":"object"},"maxItems":10000,"type":"array"},"verifier_results":{"description":"Value for verifier results.","items":{"additionalProperties":false,"properties":{"artifact_sha256s":{"description":"Value for artifact sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"contract_sha256":{"description":"Exact SHA-256 digest of contract.","pattern":"^[a-f0-9]{64}$","type":"string"},"covered_claim_ids":{"description":"Value for covered claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"covered_dimensions":{"description":"Value for covered dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"normalization_sha256":{"description":"Exact SHA-256 digest of normalization.","pattern":"^[a-f0-9]{64}$","type":"string"},"observed_at":{"description":"Value for observed at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z|([+-](?:[01]\\\\d|2[0-3]):[0-5]\\\\d)))$","type":"string"},"owner_sha256s":{"description":"Value for owner sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"repeats":{"description":"Value for repeats.","maximum":1000,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","contract_sha256","observed_at","status","covered_claim_ids","covered_dimensions","artifact_sha256s","owner_sha256s","normalization_sha256","repeats","evidence_ids"],"type":"object"},"maxItems":100000,"type":"array"},"workspace_id":{"description":"Value for workspace id.","pattern":"^rcw_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","workspace_id","name","revision","previous_revision_sha256","evidence_bundle","artifacts","surfaces","owners","claims","verifier_contracts","verifier_results","residual_unknown_ids","contradictions","package_proofs","boundaries","revision_sha256"],"type":"object"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","expected_revision","workspace"],"type":"object"},"kind":"application","name":"commit_reconstruction_coverage","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"workspace_id":{"pattern":"^rcw_[a-f0-9]{64}$","type":"string"},"workspace_path":{"type":"string"}},"required":["workspace_path","bytes","workspace_id","revision","revision_sha256","evidence_records"],"type":"object"},"requiresSession":false,"title":"Commit Reconstruction Coverage"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate one named reconstruction boundary from a canonical coverage workspace. Missing ownership or inventory is partial; stale, weak, truncated, skipped, or unresolved proof is unknown; contradictions, failed proof, missing owners, and authority routing fail closed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"boundary_id":"replacement.cli","workspace_path":"/approved/coverage.json"}],"properties":{"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["workspace_path","boundary_id"],"type":"object"},"kind":"application","name":"query_reconstruction_coverage","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"boundary_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"reasons":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["surface-missing","owner-missing","owner-duplicate","owner-path-missing","owner-path-unknown","owner-undistributed","owner-distribution-unknown","authority-routing-detected","authority-routing-unknown","disposition-not-allowed","dependency-surface-missing","claim-missing","verifier-missing","verifier-duplicate","verifier-result-missing","verifier-result-stale","verifier-result-incompatible","verifier-failed","verifier-unknown","active-unknown","active-contradiction","package-proof-missing","package-proof-failed","package-proof-unknown"],"type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"subject_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["code","subject_id","detail"],"type":"object"},"maxItems":100000,"type":"array"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"},"subject_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["operation","subject_id","rationale"],"type":"object"},"maxItems":100000,"type":"array"},"status":{"enum":["partial","failed","unknown","ready"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"reasons":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_claims":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_surfaces":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["required_surfaces","required_claims","reasons"],"type":"object"},"workspace_revision_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["boundary_id","status","workspace_revision_sha256","summary","reasons","recommended_probes","evidence_ids"],"type":"object"},"requiresSession":false,"title":"Query Reconstruction Coverage"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Open a local executable, application bundle, archive, JavaScript, source map, plist, or analysis database after validation. provider_id selects one deep provider or deterministic auto selection; the binding remains stable until close or an explicit switch, with no failure fallback. An optional snapshot v2 is imported atomically and must match the binary identity, concrete provider, and canonical analysis profile exactly.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"path":"/tmp/fixture"}],"properties":{"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"},"provider_id":{"anyOf":[{"const":"auto","type":"string"},{"maxLength":64,"minLength":1,"pattern":"^[a-z][a-z0-9-]*$","type":"string"}],"description":"Exact deep-analysis provider ID, or automatic selection when omitted."},"snapshot_path":{"description":"Local filesystem path for snapshot.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"open_binary","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"loaderArgs":{"items":{"type":"string"},"type":"array"},"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","format","kind","loaderArgs","sha256","architecture"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Open Binary"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Optionally write a provider-neutral analysis snapshot atomically, then close the active target and every provider resource started for it. Snapshot files require an operator-approved root and explicit overwrite; a failed save leaves the session open so cached analysis is not lost.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"overwrite":false}],"properties":{"overwrite":{"default":false,"description":"Whether an existing destination may be replaced.","type":"boolean"},"snapshot_path":{"description":"Local filesystem path for snapshot.","minLength":1,"type":"string"}},"type":"object"},"kind":"session","name":"close_binary","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"anyOf":[{"type":"null"},{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"entries":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"}},"required":["path","bytes","entries"],"type":"object"}]}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Close Binary"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Report compact target, provider, and alignment state without starting analysis. The default summary is the routing check agents should use; detail=capabilities returns one family-filtered availability page, while detail=full is reserved for complete provider diagnostics.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"cursor":0,"detail":"summary","limit":25}],"properties":{"capability_family":{"description":"Optional tool family for detail=capabilities","enum":["official-proxy","enhanced","native-provider","artifact-provider","managed-provider","browser-provider","electron-provider","runtime-provider","application","session"],"type":"string"},"cursor":{"default":0,"description":"Zero-based capability cursor for detail=capabilities","maximum":9007199254740991,"minimum":0,"type":"integer"},"detail":{"default":"summary","description":"summary returns routing state; capabilities returns one filtered tool-availability page; full returns complete diagnostics only when required","enum":["summary","capabilities","full"],"type":"string"},"expected_catalog_digest":{"description":"Expected catalog digest used to reject stale or mismatched input.","pattern":"^[a-f0-9]{64}$","type":"string"},"expected_package_version":{"description":"Expected package version used to reject stale or mismatched input.","minLength":1,"type":"string"},"expected_server_path":{"description":"Expected server path used to reject stale or mismatched input.","minLength":1,"type":"string"},"limit":{"default":25,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"}},"type":"object"},"kind":"session","name":"binary_session","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"anyOf":[{"additionalProperties":false,"properties":{"active_provider":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},{"type":"null"}]},"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"open":{"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"recommended_actions":{"items":{"type":"string"},"type":"array"},"target":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","format","kind","sha256","architecture"],"type":"object"},{"type":"null"}]},"view":{"const":"summary","type":"string"}},"required":["view","open","provider","active_provider","target","alignment","analysis_activity","recommended_actions"],"type":"object"},{"additionalProperties":false,"properties":{"active_provider":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},{"type":"null"}]},"capabilities":{"additionalProperties":false,"properties":{"cursor":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"has_more":{"type":"boolean"},"items":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_cursor":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","cursor","limit","total","next_cursor","has_more"],"type":"object"},"capability_family":{"anyOf":[{"type":"string"},{"type":"null"}]},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"open":{"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"view":{"const":"capabilities","type":"string"}},"required":["view","open","provider","active_provider","capability_family","capabilities","client_features"],"type":"object"},{"anyOf":[{"additionalProperties":false,"properties":{"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"analysis_provider_binding":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selection_source":{"enum":["request","environment","auto-single-candidate"],"type":"string"}},"required":["provider","selection_source","analysis_profile"],"type":"object"},{"type":"null"}]},"analysis_provider_candidates":{"items":{"additionalProperties":false,"properties":{"availability":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"available","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selected":{"type":"boolean"},"target_support":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"supported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unsupported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]}},"required":["provider","availability","target_support","selected","capabilities"],"type":"object"},"type":"array"},"analysis_run":{"anyOf":[{"additionalProperties":false,"properties":{"process_lineage":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"not_observed","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"snapshots":{"items":{"additionalProperties":false,"properties":{"observation":{"oneOf":[{"additionalProperties":false,"properties":{"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","observed_at","launcher_pid","process_group_id","reason"],"type":"object"},{"additionalProperties":false,"properties":{"descendants":{"items":{"additionalProperties":false,"properties":{"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["pid","parent_pid","process_group_id"],"type":"object"},"type":"array"},"launcher_parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"},"status":{"const":"verified","type":"string"}},"required":["status","observed_at","schema_version","launcher_pid","process_group_id","launcher_parent_pid","descendants"],"type":"object"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"}},"required":["provider","observation"],"type":"object"},"type":"array"},"status":{"const":"snapshots","type":"string"}},"required":["status","snapshots"],"type":"object"}]},"run_id":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","type":"string"}},"required":["run_id","process_lineage"],"type":"object"},{"type":"null"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"open":{"const":false,"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"type":"array"},"server_identity":{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"catalog":{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"},"client":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},{"type":"null"}]},"negotiated_protocol_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"package":{"additionalProperties":false,"properties":{"build_commit":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"root_path":{"type":"string"},"version":{"type":"string"}},"required":["name","version","root_path","build_commit"],"type":"object"},"protocol_features":{"additionalProperties":false,"properties":{"cancellation":{"type":"boolean"},"elicitation":{"type":"boolean"},"evidence_resources":{"type":"boolean"},"progress":{"type":"boolean"}},"required":["progress","cancellation","evidence_resources","elicitation"],"type":"object"},"sdk":{"additionalProperties":false,"properties":{"client_test":{"type":"string"},"core":{"type":"string"},"server":{"type":"string"}},"required":["server","client_test","core"],"type":"object"},"server":{"additionalProperties":false,"properties":{"command_path":{"type":"string"},"name":{"type":"string"},"started_at":{"type":"string"},"version":{"type":"string"}},"required":["name","version","started_at","command_path"],"type":"object"},"skill":{"additionalProperties":false,"properties":{"expected_version":{"type":"string"},"name":{"type":"string"}},"required":["name","expected_version"],"type":"object"}},"required":["package","server","sdk","negotiated_protocol_version","client","skill","catalog","protocol_features","alignment"],"type":"object"},"tool_availability":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"view":{"const":"full","type":"string"}},"required":["provider","providers","capabilities","analysis_run","analysis_activity","analysis_provider_binding","analysis_provider_candidates","tool_availability","client_features","server_identity","view","open"],"type":"object"},{"additionalProperties":false,"properties":{"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"analysis_provider_binding":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selection_source":{"enum":["request","environment","auto-single-candidate"],"type":"string"}},"required":["provider","selection_source","analysis_profile"],"type":"object"},{"type":"null"}]},"analysis_provider_candidates":{"items":{"additionalProperties":false,"properties":{"availability":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"available","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selected":{"type":"boolean"},"target_support":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"supported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unsupported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]}},"required":["provider","availability","target_support","selected","capabilities"],"type":"object"},"type":"array"},"analysis_run":{"anyOf":[{"additionalProperties":false,"properties":{"process_lineage":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"not_observed","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"snapshots":{"items":{"additionalProperties":false,"properties":{"observation":{"oneOf":[{"additionalProperties":false,"properties":{"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","observed_at","launcher_pid","process_group_id","reason"],"type":"object"},{"additionalProperties":false,"properties":{"descendants":{"items":{"additionalProperties":false,"properties":{"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["pid","parent_pid","process_group_id"],"type":"object"},"type":"array"},"launcher_parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"},"status":{"const":"verified","type":"string"}},"required":["status","observed_at","schema_version","launcher_pid","process_group_id","launcher_parent_pid","descendants"],"type":"object"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"}},"required":["provider","observation"],"type":"object"},"type":"array"},"status":{"const":"snapshots","type":"string"}},"required":["status","snapshots"],"type":"object"}]},"run_id":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","type":"string"}},"required":["run_id","process_lineage"],"type":"object"},{"type":"null"}]},"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"open":{"const":true,"type":"boolean"},"path":{"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"type":"array"},"server_identity":{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"catalog":{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"},"client":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},{"type":"null"}]},"negotiated_protocol_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"package":{"additionalProperties":false,"properties":{"build_commit":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"root_path":{"type":"string"},"version":{"type":"string"}},"required":["name","version","root_path","build_commit"],"type":"object"},"protocol_features":{"additionalProperties":false,"properties":{"cancellation":{"type":"boolean"},"elicitation":{"type":"boolean"},"evidence_resources":{"type":"boolean"},"progress":{"type":"boolean"}},"required":["progress","cancellation","evidence_resources","elicitation"],"type":"object"},"sdk":{"additionalProperties":false,"properties":{"client_test":{"type":"string"},"core":{"type":"string"},"server":{"type":"string"}},"required":["server","client_test","core"],"type":"object"},"server":{"additionalProperties":false,"properties":{"command_path":{"type":"string"},"name":{"type":"string"},"started_at":{"type":"string"},"version":{"type":"string"}},"required":["name","version","started_at","command_path"],"type":"object"},"skill":{"additionalProperties":false,"properties":{"expected_version":{"type":"string"},"name":{"type":"string"}},"required":["name","expected_version"],"type":"object"}},"required":["package","server","sdk","negotiated_protocol_version","client","skill","catalog","protocol_features","alignment"],"type":"object"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"tool_availability":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"view":{"const":"full","type":"string"}},"required":["provider","providers","capabilities","analysis_run","analysis_activity","analysis_provider_binding","analysis_provider_candidates","tool_availability","client_features","server_identity","view","open","path","format","kind","sha256","architecture"],"type":"object"}]}]}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Binary Session"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Atomically write the session\'s deterministic Evidence v2 bundle beneath an operator-approved root. Existing files require overwrite: true; records and manifests use canonical byte-stable ordering. For an in-session read, use snapshot_evidence_bundle and read its exact resource URI instead.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"overwrite":false,"path":"/tmp/evidence.json"}],"properties":{"overwrite":{"default":false,"description":"Whether an existing destination may be replaced.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"export_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","bytes","records","unknowns"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Export Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read a bounded local JSON bundle beneath an operator-approved root, validate every Evidence v2 ID and canonical manifest, then atomically merge it. Imported content is data only and is never executed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"path":"evidence.json"}],"properties":{"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"import_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"imported":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["imported","unknowns_added","total"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Import Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Run one bounded process under a PTY using operator-approved executable and working roots. Produces Process Capture v4; legacy v3 captures cannot be upgraded and must be recaptured with this tool. Requires approved: true; unknown_registry_approved: true separately records capture residuals. Captures raw and xterm-rendered terminal frames, scripted interactions, lifecycle filesystem checkpoints, process ownership, declarative command shims, and loopback replay. Disabled unless operator policy enables it; not a security sandbox.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":false,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"oneOf":[{"additionalProperties":false,"properties":{"cardinality":{"additionalProperties":false,"description":"Value for cardinality.","properties":{"max":{"description":"Value for max.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"min":{"description":"Value for min.","exclusiveMinimum":0,"maximum":256,"type":"integer"}},"required":["min","max"],"type":"object"},"consume":{"description":"Value for consume.","type":"boolean"},"exact":{"$ref":"#/$defs/__schema1","description":"Value for exact."},"ignore_fields":{"description":"Value for ignore fields.","items":{"enum":["sequence","at_ms","scheduled_at_ms","dispatched_at_ms","elapsed_ms"],"type":"string"},"maxItems":5,"type":"array"},"kind":{"const":"event","description":"Value for kind.","type":"string"},"since":{"description":"Value for since.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"scenario_start","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"state_entry","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checkpoint","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"event_id":{"description":"Value for event id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"kind":{"const":"event_id","description":"Value for kind.","type":"string"}},"required":["kind","event_id"],"type":"object"}]},"source":{"description":"Value for source.","enum":["terminal_raw","terminal_rendered","interaction","lifecycle","process","filesystem","http","websocket","shim","replay_transition"],"type":"string"}},"required":["kind","source","exact","ignore_fields","since","consume","cardinality"],"type":"object"},{"additionalProperties":false,"properties":{"case_sensitive":{"const":true,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"consume":{"description":"Value for consume.","type":"boolean"},"control_sequences":{"const":"include","description":"Value for control sequences.","type":"string"},"encoding":{"const":"utf8","description":"Value for encoding.","type":"string"},"kind":{"const":"terminal_text","description":"Value for kind.","type":"string"},"literal":{"description":"Value for literal.","maxLength":10000,"minLength":1,"type":"string"},"occurrence":{"description":"Value for occurrence.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"since":{"description":"Value for since.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"scenario_start","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"state_entry","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checkpoint","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"event_id":{"description":"Value for event id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"kind":{"const":"event_id","description":"Value for kind.","type":"string"}},"required":["kind","event_id"],"type":"object"}]},"view":{"const":"decoded","description":"Value for view.","type":"string"}},"required":["kind","view","encoding","literal","case_sensitive","control_sequences","occurrence","since","consume"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"all","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":2,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"any","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":2,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"sequence","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":1,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"repeat","description":"Value for kind.","type":"string"},"max":{"description":"Value for max.","exclusiveMinimum":0,"maximum":64,"type":"integer"},"min":{"description":"Value for min.","exclusiveMinimum":0,"maximum":64,"type":"integer"},"trigger":{"$ref":"#/$defs/__schema0","description":"Value for trigger."}},"required":["kind","trigger","min","max"],"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"arguments":[],"checkpoints":[],"command_shims":[],"environment":{},"events":[],"executable":"/usr/bin/true","filesystem_roots":[],"idle_timeout_ms":30000,"inherit_environment":[],"limits":{"connections":100,"file_bytes":10000000,"files":10000,"filesystem_depth":16,"frames":10000,"output_bytes":1000000,"processes":1000,"protocol_body_bytes":1000000,"protocol_events":10000},"network_access":"host","normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"reactive":null,"replay":{"http":[],"machine":null,"websocket_connections":[],"websocket_messages":[]},"secret_aliases":[],"settle_ms":100,"terminal":{"columns":80,"rows":24,"scrollback":1000},"timeout_ms":30000,"working_directory":"/tmp"}],"properties":{"approved":{"const":true,"description":"Explicit per-call acknowledgement that this operation launches the target","type":"boolean"},"arguments":{"default":[],"description":"Value for arguments.","items":{"type":"string"},"maxItems":256,"type":"array"},"checkpoints":{"default":[],"description":"Value for checkpoints.","items":{"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"properties":{"at_ms":{"description":"Value for at ms.","maximum":300000,"minimum":0,"type":"integer"},"type":{"const":"time","description":"Value for type.","type":"string"}},"required":["type","at_ms"],"type":"object"},{"properties":{"occurrence":{"default":1,"description":"Value for occurrence.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"type":{"const":"terminal_literal","description":"Value for type.","type":"string"},"value":{"description":"Value for value.","maxLength":10000,"minLength":1,"type":"string"}},"required":["type","value"],"type":"object"},{"properties":{"type":{"const":"root_exit","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"properties":{"type":{"const":"settled","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"}]}},"required":["name","trigger"],"type":"object"},"maxItems":64,"type":"array"},"command_shims":{"default":[],"description":"Value for command shims.","items":{"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$","type":"string"},"routes":{"description":"Value for routes.","items":{"properties":{"arguments":{"description":"Value for arguments.","items":{"type":"string"},"maxItems":256,"type":"array"},"max_calls":{"default":1,"description":"Maximum permitted calls for this operation.","exclusiveMinimum":0,"maximum":100,"type":"integer"},"outputs":{"default":[],"description":"Value for outputs.","items":{"properties":{"at_ms":{"description":"Value for at ms.","maximum":300000,"minimum":0,"type":"integer"},"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"stream":{"description":"Value for stream.","enum":["stdout","stderr"],"type":"string"}},"required":["at_ms","stream","data"],"type":"object"},"maxItems":1000,"type":"array"},"termination":{"description":"Value for termination.","oneOf":[{"properties":{"code":{"description":"Value for code.","maximum":255,"minimum":0,"type":"integer"},"type":{"const":"exit","description":"Value for type.","type":"string"}},"required":["type","code"],"type":"object"},{"properties":{"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"type":{"const":"signal","description":"Value for type.","type":"string"}},"required":["type","signal"],"type":"object"}]}},"required":["arguments","termination"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}},"required":["name","routes"],"type":"object"},"maxItems":32,"type":"array"},"environment":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for environment.","propertyNames":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"type":"object"},"events":{"default":[],"description":"Value for events.","items":{"oneOf":[{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"description":"Value for data.","type":"string"},"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"type":{"const":"input","description":"Value for type.","type":"string"}},"required":["at_ms","type","data"],"type":"object"},{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"columns":{"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"type":{"const":"resize","description":"Value for type.","type":"string"}},"required":["at_ms","type","columns","rows"],"type":"object"},{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"type":{"const":"signal","description":"Value for type.","type":"string"}},"required":["at_ms","type","signal"],"type":"object"}]},"maxItems":1000,"type":"array"},"executable":{"description":"Approved absolute path of the executable to run.","pattern":"^\\\\/.*","type":"string"},"filesystem_roots":{"default":[],"description":"Approved canonical filesystem filesystem roots.","items":{"pattern":"^\\\\/.*","type":"string"},"maxItems":16,"type":"array"},"idle_timeout_ms":{"default":30000,"description":"Value for idle timeout ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"inherit_environment":{"default":[],"description":"Value for inherit environment.","items":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"maxItems":64,"type":"array"},"limits":{"default":{"connections":100,"file_bytes":10000000,"files":10000,"filesystem_depth":16,"frames":10000,"output_bytes":1000000,"processes":1000,"protocol_body_bytes":1000000,"protocol_events":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"connections":{"default":100,"description":"Value for connections.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"file_bytes":{"default":10000000,"description":"Bounded byte count for file.","exclusiveMinimum":0,"maximum":100000000,"type":"integer"},"files":{"default":10000,"description":"Value for files.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"filesystem_depth":{"default":16,"description":"Value for filesystem depth.","maximum":64,"minimum":1,"type":"integer"},"frames":{"default":10000,"description":"Value for frames.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"output_bytes":{"default":1000000,"description":"Bounded byte count for output.","exclusiveMinimum":0,"maximum":10000000,"type":"integer"},"processes":{"default":1000,"description":"Value for processes.","exclusiveMinimum":0,"maximum":10000,"type":"integer"},"protocol_body_bytes":{"default":1000000,"description":"Bounded byte count for protocol body.","exclusiveMinimum":0,"maximum":10000000,"type":"integer"},"protocol_events":{"default":10000,"description":"Value for protocol events.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"network_access":{"const":"host","default":"host","description":"Value for network access.","type":"string"},"normalization":{"default":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"description":"Value for normalization.","properties":{"paths":{"default":true,"description":"Value for paths.","type":"boolean"},"patterns":{"default":[],"description":"Value for patterns.","items":{"properties":{"pattern":{"description":"Text or bounded pattern used to filter matching results.","maxLength":500,"type":"string"},"replacement":{"description":"Value for replacement.","maxLength":100,"type":"string"}},"required":["pattern","replacement"],"type":"object"},"maxItems":32,"type":"array"},"pids":{"default":true,"description":"Value for pids.","type":"boolean"},"ports":{"default":true,"description":"Value for ports.","type":"boolean"},"time_bucket_ms":{"default":10,"description":"Value for time bucket ms.","exclusiveMinimum":0,"maximum":60000,"type":"integer"}},"type":"object"},"reactive":{"anyOf":[{"additionalProperties":false,"properties":{"deadline_ms":{"description":"Value for deadline ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"deadline_ms":{"description":"Value for deadline ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"max_visits":{"description":"Maximum permitted visits for this operation.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"on":{"description":"Value for on.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"sensitive":{"description":"Value for sensitive.","type":"boolean"},"type":{"const":"send_input","description":"Value for type.","type":"string"}},"required":["type","data","sensitive"],"type":"object"},{"additionalProperties":false,"properties":{"columns":{"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"type":{"const":"resize","description":"Value for type.","type":"string"}},"required":["type","columns","rows"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"close_stdin","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"target":{"description":"Value for target.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"root","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"process_group","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"subject_id","description":"Value for kind.","type":"string"},"subject_id":{"description":"Value for subject id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["kind","subject_id"],"type":"object"}]},"type":{"const":"send_signal","description":"Value for type.","type":"string"}},"required":["type","target","signal"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"},"type":{"const":"checkpoint","description":"Value for type.","type":"string"}},"required":["type","name"],"type":"object"}]},"maxItems":16,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"priority":{"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"target":{"description":"Value for target.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"goto","description":"Value for kind.","type":"string"},"state":{"description":"Value for state.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["kind","state"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"finish","description":"Value for kind.","type":"string"},"outcome":{"const":"passed","description":"Value for outcome.","type":"string"}},"required":["kind","outcome"],"type":"object"}]},"when":{"$ref":"#/$defs/__schema0","description":"Value for when."}},"required":["id","priority","max_uses","when","actions","target"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["id","max_visits","deadline_ms","on"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"version":{"const":1,"description":"Value for version.","type":"number"}},"required":["version","initial_state","deadline_ms","states"],"type":"object"},{"type":"null"}],"description":"Value for reactive."},"replay":{"description":"Value for replay.","properties":{"http":{"default":[],"description":"Value for http.","items":{"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"delay_ms":{"default":0,"description":"Value for delay ms.","maximum":30000,"minimum":0,"type":"integer"},"disconnect":{"default":false,"description":"Value for disconnect.","type":"boolean"},"max_calls":{"default":1,"description":"Maximum permitted calls for this operation.","maximum":100,"minimum":1,"type":"integer"},"method":{"description":"Value for method.","maxLength":16,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"request_body":{"description":"Value for request body.","maxLength":1000000,"type":"string"},"request_headers":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for request headers.","propertyNames":{"type":"string"},"type":"object"},"response_headers":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for response headers.","propertyNames":{"type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"}},"required":["method","path","status","body"],"type":"object"},"maxItems":100,"type":"array"},"machine":{"anyOf":[{"additionalProperties":false,"properties":{"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"default":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"bytes":{"default":1000000,"description":"Value for bytes.","maximum":10000000,"minimum":1,"type":"integer"},"connections":{"default":100,"description":"Value for connections.","maximum":1000,"minimum":1,"type":"integer"},"duration_ms":{"default":30000,"description":"Value for duration ms.","maximum":300000,"minimum":1,"type":"integer"},"messages":{"default":10000,"description":"Value for messages.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"max_transitions":{"description":"Maximum permitted transitions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"max_visits":{"default":100000,"description":"Maximum permitted visits for this operation.","maximum":100000,"minimum":1,"type":"integer"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"terminal":{"default":false,"description":"Value for terminal.","type":"boolean"}},"required":["name"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"transitions":{"description":"Value for transitions.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"default":{},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","description":"Value for type.","type":"string"}},"required":["type","status","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","description":"Value for type.","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","description":"Value for type.","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"minItems":1,"type":"array"},"captures":{"description":"Value for captures.","items":{"additionalProperties":false,"properties":{"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"from":{"description":"Value for from.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"guards":{"description":"Value for guards.","items":{"additionalProperties":false,"properties":{"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","maximum":10000,"minimum":1,"type":"integer"},"priority":{"default":100,"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"to":{"description":"Value for to.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","method","path"],"type":"object"},{"additionalProperties":false,"properties":{"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"}]}},"required":["id","from","to","trigger","actions","max_uses"],"type":"object"},"maxItems":2000,"minItems":1,"type":"array"}},"required":["initial_state","states","transitions","max_transitions"],"type":"object"},{"type":"null"}],"description":"Value for machine."},"websocket_connections":{"default":[],"description":"Value for websocket connections.","items":{"properties":{"disconnect_after":{"default":false,"description":"Value for disconnect after.","type":"boolean"},"messages":{"description":"Value for messages.","items":{"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"delay_ms":{"default":0,"description":"Value for delay ms.","maximum":30000,"minimum":0,"type":"integer"}},"required":["data"],"type":"object"},"maxItems":100,"type":"array"}},"required":["messages"],"type":"object"},"maxItems":100,"type":"array"},"websocket_messages":{"default":[],"description":"Value for websocket messages.","items":{"maxLength":1000000,"type":"string"},"maxItems":100,"type":"array"}},"type":"object"},"secret_aliases":{"default":[],"description":"Value for secret aliases.","items":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"maxItems":64,"type":"array"},"settle_ms":{"default":100,"description":"Value for settle ms.","maximum":10000,"minimum":0,"type":"integer"},"terminal":{"default":{"columns":80,"rows":24,"scrollback":1000},"description":"Value for terminal.","properties":{"columns":{"default":80,"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"default":24,"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"scrollback":{"default":1000,"description":"Value for scrollback.","maximum":10000,"minimum":0,"type":"integer"}},"type":"object"},"timeout_ms":{"default":30000,"description":"Value for timeout ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record capture residuals durably","type":"boolean"},"working_directory":{"description":"Value for working directory.","pattern":"^\\\\/.*","type":"string"}},"required":["approved","executable","working_directory"],"type":"object"},"kind":"session","name":"capture_process_scenario","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"owned_process_group":{"const":"verified","type":"string"},"temporary_root":{"const":"removed","type":"string"}},"required":["owned_process_group","temporary_root"],"type":"object"},"event_journal":{"default":[],"items":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["capture_order","collection","index"],"type":"object"},"type":"array"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"reason":{"enum":["exited","timeout","idle_timeout"],"type":"string"},"signal":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]}},"required":["code","signal","reason"],"type":"object"},"files_after":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"files_before":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"filesystem_checkpoints":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"effects":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"type":"null"},"path":{"type":"string"},"status":{"const":"created","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"type":"null"},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"const":"deleted","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"enum":["modified","unchanged"],"type":"string"}},"required":["path","status","before","after"],"type":"object"}]},"type":"array"},"files":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"truncated":{"type":"boolean"}},"required":["name","at_ms","files","effects","truncated"],"type":"object"},"type":"array"},"filesystem_effects":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"type":"null"},"path":{"type":"string"},"status":{"const":"created","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"type":"null"},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"const":"deleted","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"enum":["modified","unchanged"],"type":"string"}},"required":["path","status","before","after"],"type":"object"}]},"type":"array"},"frames":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","at_ms","data"],"type":"object"},"type":"array"},"interaction_events":{"items":{"additionalProperties":false,"properties":{"data":{"type":"string"},"dispatched_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outcome":{"enum":["dispatched","target_exited","failed"],"type":"string"},"scheduled_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"type":{"enum":["input","resize","stdin_close","signal"],"type":"string"}},"required":["sequence","scheduled_at_ms","dispatched_at_ms","type","data","outcome"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"manifest":{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"comparison_contract":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"comparison_contract_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"completed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"full_scenario_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"normalization_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"platform":{"minLength":1,"type":"string"},"provider_version":{"minLength":1,"type":"string"},"pty_backend":{"const":"node-pty","type":"string"},"rea_version":{"minLength":1,"type":"string"},"replay_plan":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"replay_plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scenario":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"shim_plan":{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},"shim_plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["rea_version","provider_version","platform","architecture","pty_backend","started_at","completed_at","scenario","comparison_contract","shim_plan","replay_plan","full_scenario_sha256","comparison_contract_sha256","executable_sha256","normalization_sha256","shim_plan_sha256","replay_plan_sha256"],"type":"object"},"normalization":{"additionalProperties":false,"properties":{"paths":{"type":"boolean"},"patterns":{"items":{"additionalProperties":false,"properties":{"pattern":{"maxLength":500,"type":"string"},"replacement":{"maxLength":100,"type":"string"}},"required":["pattern","replacement"],"type":"object"},"type":"array"},"pids":{"type":"boolean"},"ports":{"type":"boolean"},"time_bucket_ms":{"exclusiveMinimum":0,"maximum":60000,"type":"integer"}},"required":["paths","pids","ports","time_bucket_ms","patterns"],"type":"object"},"process_samples":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"command":{"type":"string"},"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"process_group_id":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"session_id":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["at_ms","pid","parent_pid","command","process_group_id","session_id"],"type":"object"},"type":"array"},"protocol_events":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"type":"string"},"direction":{"enum":["request","response","received","sent"],"type":"string"},"method":{"anyOf":[{"type":"string"},{"type":"null"}]},"outcome":{"enum":["matched","unmatched","script_exhausted","disconnected","invalid_state","guard_failed","transition_exhausted","invalid_capture","unexpected_reconnect","limit_exhausted"],"type":"string"},"path":{"anyOf":[{"type":"string"},{"type":"null"}]},"protocol":{"enum":["http","websocket"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","at_ms","protocol","direction","method","path","data","outcome"],"type":"object"},"type":"array"},"reactive_run":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"active_state":{"maxLength":64,"minLength":1,"type":"string"},"controls":{"default":[],"items":{"additionalProperties":false,"properties":{"after_capture_order":{"maximum":9007199254740991,"minimum":-1,"type":"integer"},"kind":{"enum":["state_deadline","scenario_deadline","target_lost","cancelled","cleanup_failed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","kind","after_capture_order"],"type":"object"},"type":"array"},"outcome":{"type":"null"},"status":{"const":"running","type":"string"},"transitions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"type":"null"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"},{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"const":"passed","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"type":"null"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"}]},"maxItems":128,"type":"array"}},"required":["status","outcome","active_state","controls","transitions"],"type":"object"},{"additionalProperties":false,"properties":{"active_state":{"maxLength":64,"minLength":1,"type":"string"},"controls":{"default":[],"items":{"additionalProperties":false,"properties":{"after_capture_order":{"maximum":9007199254740991,"minimum":-1,"type":"integer"},"kind":{"enum":["state_deadline","scenario_deadline","target_lost","cancelled","cleanup_failed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","kind","after_capture_order"],"type":"object"},"type":"array"},"outcome":{"enum":["passed","predicate_timeout","scenario_deadline","ambiguous_match","action_rejected","target_lost","capture_incomplete","cancelled","cleanup_failed"],"type":"string"},"status":{"const":"finished","type":"string"},"transitions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"type":"null"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"},{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"const":"passed","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"type":"null"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"}]},"maxItems":128,"type":"array"}},"required":["status","outcome","active_state","controls","transitions"],"type":"object"}]},{"type":"null"}],"default":null},"rendered_frames":{"items":{"additionalProperties":false,"properties":{"active_buffer":{"enum":["normal","alternate"],"type":"string"},"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"columns":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"cursor_x":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"cursor_y":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"lines":{"items":{"type":"string"},"type":"array"},"rows":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"serialized_state":{"type":"string"}},"required":["sequence","at_ms","columns","rows","cursor_x","cursor_y","active_buffer","lines","serialized_state"],"type":"object"},"type":"array"},"replay_transitions":{"default":[],"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sensitive_aliases":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"}},"required":["sequence","at_ms","transition_id","state_before","state_after","sensitive_aliases"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"additionalProperties":false,"properties":{"reason":{"type":"string"},"scope":{"enum":["terminal","interaction","exit","process","filesystem","protocol","shim","cleanup","network"],"type":"string"}},"required":["scope","reason"],"type":"object"},"type":"array"},"schema_version":{"const":4,"type":"number"},"settlement":{"oneOf":[{"additionalProperties":false,"properties":{"cleanup_outcome":{"const":"not_required","type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"quiesced","type":"string"}},"required":["state","elapsed_ms","cleanup_outcome"],"type":"object"},{"additionalProperties":false,"properties":{"cleanup_outcome":{"enum":["cleaned","failed"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"enum":["alive_at_deadline","unverifiable"],"type":"string"}},"required":["state","elapsed_ms","cleanup_outcome"],"type":"object"}]},"shim_events":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"type":"string"},"type":"array"},"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"command":{"type":"string"},"outcome":{"enum":["matched","unmatched","exhausted"],"type":"string"},"route_index":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"working_directory":{"type":"string"}},"required":["sequence","at_ms","command","route_index","arguments","working_directory","outcome"],"type":"object"},"type":"array"},"truncated":{"type":"boolean"}},"required":["schema_version","manifest","normalization","frames","rendered_frames","interaction_events","exit","settlement","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions","reactive_run","event_journal","files_before","files_after","filesystem_effects","truncated","limitations","residual_unknowns","cleanup"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Capture Process Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two compatible Process Capture v4 observations across terminal, interaction, lifecycle, process, filesystem, command-shim, HTTP, and WebSocket evidence. Optional trace_spec validates exact events against an explicit partial order or finite trace language; concurrency is never inferred from timestamps or broad sorting. Missing, journal-free, or truncated observations are never treated as equivalent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111"}],"properties":{"left_evidence_id":{"description":"Exact Evidence v2 identifier for the left observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"max_capture_age_ms":{"description":"Maximum permitted capture age ms for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_id":{"description":"Exact Evidence v2 identifier for the right observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"trace_spec":{"additionalProperties":false,"description":"Value for trace spec.","properties":{"events":{"description":"Value for events.","items":{"additionalProperties":false,"properties":{"cardinality":{"default":{"kind":"required"},"description":"Value for cardinality.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"required","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"optional","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":10000,"minimum":0,"type":"integer"},"kind":{"const":"exact","description":"Value for kind.","type":"string"}},"required":["kind","count"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"range","description":"Value for kind.","type":"string"},"max":{"description":"Value for max.","maximum":10000,"minimum":0,"type":"integer"},"min":{"description":"Value for min.","maximum":10000,"minimum":0,"type":"integer"}},"required":["kind","min","max"],"type":"object"}]},"exact":{"$ref":"#/$defs/__schema0","description":"Value for exact."},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"ignore_fields":{"description":"Value for ignore fields.","items":{"enum":["sequence","at_ms","scheduled_at_ms","dispatched_at_ms","elapsed_ms"],"type":"string"},"maxItems":5,"type":"array"},"source":{"description":"Value for source.","enum":["terminal_raw","terminal_rendered","interaction","lifecycle","process","filesystem","http","websocket","shim","replay_transition"],"type":"string"}},"required":["id","source","exact"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"language":{"description":"Value for language.","oneOf":[{"additionalProperties":false,"properties":{"happens_before":{"default":[],"description":"Value for happens before.","items":{"additionalProperties":false,"properties":{"after":{"description":"The later or right-hand observation to compare.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"before":{"description":"The earlier or left-hand observation to compare.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["before","after"],"type":"object"},"maxItems":4096,"type":"array"},"kind":{"const":"partial_order","description":"Value for kind.","type":"string"},"not_before":{"default":[],"description":"Value for not before.","items":{"additionalProperties":false,"properties":{"anchor":{"description":"Value for anchor.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"event":{"description":"Value for event.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["event","anchor"],"type":"object"},"maxItems":4096,"type":"array"},"prefix":{"default":[],"description":"Value for prefix.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":4096,"type":"array"},"suffix":{"default":[],"description":"Value for suffix.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":4096,"type":"array"},"unordered_groups":{"default":[],"description":"Value for unordered groups.","items":{"additionalProperties":false,"properties":{"events":{"description":"Value for events.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":256,"minItems":2,"type":"array"}},"required":["events"],"type":"object"},"maxItems":256,"type":"array"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"finite_traces","description":"Value for kind.","type":"string"},"variants":{"description":"Value for variants.","items":{"additionalProperties":false,"properties":{"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"trace":{"description":"Value for trace.","items":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"additionalProperties":false,"properties":{"unordered":{"description":"Value for unordered.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":256,"minItems":2,"type":"array"}},"required":["unordered"],"type":"object"}]},"maxItems":4096,"type":"array"}},"required":["id","trace"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["kind","variants"],"type":"object"}]},"version":{"const":1,"description":"Value for version.","type":"number"}},"required":["version","events","language"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record capture disagreement durably","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"kind":"session","name":"compare_process_captures","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"exit":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"filesystem":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"first_divergence":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"none","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"left_at_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"right_at_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"found","type":"string"}},"required":["status","dimension","index","left_at_ms","right_at_ms","left","right"],"type":"object"}]},"interaction":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"process":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"protocol":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"shim":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"terminal":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"trace":{"additionalProperties":false,"properties":{"diagnostic":{"anyOf":[{"additionalProperties":false,"properties":{"event_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"type":"array"},"kind":{"enum":["journal","predicate","cardinality","edge","prefix","suffix","trace"],"type":"string"},"locations":{"items":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"},"type":"array"},"message":{"type":"string"},"side":{"enum":["left","right"],"type":"string"}},"required":["kind","side","message","event_ids","locations"],"type":"object"},{"type":"null"}]},"left":{"anyOf":[{"additionalProperties":false,"properties":{"matched_variant":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"type":"null"}]},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"const":"pass","type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"},{"additionalProperties":false,"properties":{"matched_variant":{"type":"null"},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"enum":["fail","unknown"],"type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"}]},"right":{"anyOf":[{"additionalProperties":false,"properties":{"matched_variant":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"type":"null"}]},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"const":"pass","type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"},{"additionalProperties":false,"properties":{"matched_variant":{"type":"null"},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"enum":["fail","unknown"],"type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"}]},"verdict":{"enum":["equivalent","different","nonconforming","unknown"],"type":"string"}},"required":["verdict","left","right","diagnostic"],"type":"object"}},"required":["status","terminal","interaction","exit","filesystem","protocol","process","shim","first_divergence","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Process Captures"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two bounded sets of inventory_artifact Evidence pages by logical occurrence path, content identity, metadata, and graph relations. Pages must share and satisfy their graph commitment; every delta cites both sets, and gaps yield truncated or unknown, never equivalence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_ids":["ev_b74d3ff6cdf54af4e4f3dab00965780cb5ef2b375188c75c1980d0998c5a05a4"],"limit":100,"offset":0,"right_evidence_ids":["ev_74ecec364f3987b332db851177d2117a89d49df4ba89ab5d87299940092d7bb4"]}],"properties":{"left_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the left observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the right observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record incomplete or differing evidence","type":"boolean"}},"required":["left_evidence_ids","right_evidence_ids"],"type":"object"},"kind":"session","name":"compare_artifacts","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["added","removed","changed","unknown","contradiction"],"type":"string"},"dimensions":{"items":{"enum":["content","kind","format","size","executable","relations","metadata","availability","integrity"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"left_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"right_artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"right_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["classification","logical_path","dimensions","left_occurrence_id","right_occurrence_id","left_artifact_id","right_artifact_id","evidence_links"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"left_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"contradiction":{"default":0,"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","added","removed","changed","unknown","contradiction"],"type":"object"}},"required":["status","left_manifest_id","right_manifest_id","summary","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Artifacts"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two explicit bounded sets of analyze_function Evidence pages across identity, exact provider text, calls, references, strings, and address-normalized CFG topology. Missing or provider-incompatible facets remain truncated or unknown; every conclusion cites both Evidence sets.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]}],"properties":{"left_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the left observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the right observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_ids","right_evidence_ids"],"type":"object"},"kind":"session","name":"compare_functions","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"derived_relationship","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"unchanged","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"enum":["derived_relationship","contradiction"],"type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"changed","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"unresolved_branch","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"type":"null"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"type":"null"},"status":{"enum":["truncated","unknown"],"type":"string"},"text_delta":{"type":"null"}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"}]},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"dimensions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"derived_relationship","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"unchanged","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"enum":["derived_relationship","contradiction"],"type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"changed","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"unresolved_branch","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"type":"null"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"type":"null"},"status":{"enum":["truncated","unknown"],"type":"string"},"text_delta":{"type":"null"}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"}]},"maxItems":8,"minItems":8,"type":"array"},"function_match":{"anyOf":[{"additionalProperties":false,"properties":{"left_name":{"type":"string"},"method":{"const":"symbol","type":"string"},"right_name":{"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","method","left_name","right_name"],"type":"object"},{"additionalProperties":false,"properties":{"left_name":{"type":"string"},"method":{"const":"explicit","type":"string"},"right_name":{"type":"string"},"status":{"enum":["mismatched","ambiguous"],"type":"string"}},"required":["status","method","left_name","right_name"],"type":"object"}]},"left_subject_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_subject_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","truncated","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","changed","truncated","unknown"],"type":"object"}},"required":["status","function_match","left_subject_sha256","right_subject_sha256","summary","dimensions","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Functions"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two canonical Evidence v2 bundles by exact record membership, explicit one-to-one observation pairs, and complete residual-unknown revision histories. Missing bundle members describe omission only, never behavioral equivalence; output is digest-anchored and deterministically paginated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_bundle_path":"/approved/left-evidence.json","limit":100,"offset":0,"record_pairs":[],"right_bundle_path":"/approved/right-evidence.json"}],"properties":{"left_bundle_path":{"description":"Local filesystem path for left bundle.","maxLength":4096,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"record_pairs":{"default":[],"description":"Value for record pairs.","items":{"properties":{"left_evidence_id":{"description":"Exact Evidence v2 identifier for the left observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_evidence_id":{"description":"Exact Evidence v2 identifier for the right observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"right_bundle_path":{"description":"Local filesystem path for right bundle.","maxLength":4096,"minLength":1,"type":"string"}},"required":["left_bundle_path","right_bundle_path"],"type":"object"},"kind":"session","name":"compare_bundles","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["added","removed","changed","unknown","history_advanced","history_diverged"],"type":"string"},"conclusion_kind":{"enum":["observed_change","contradiction","unresolved_branch"],"type":"string"},"entity":{"enum":["evidence","residual_unknown"],"type":"string"},"key":{"minLength":1,"type":"string"},"left_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"left_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"right_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"right_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"}},"required":["entity","key","classification","conclusion_kind","left_evidence_ids","right_evidence_ids","left_digest","right_digest","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"left_bundle_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_bundle_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"records_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_advanced":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_diverged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["records_unchanged","records_added","records_removed","records_changed","unknowns_unchanged","unknowns_added","unknowns_removed","unknowns_advanced","unknowns_diverged","unresolved"],"type":"object"}},"required":["status","left_bundle_sha256","right_bundle_sha256","summary","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Bundles"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Aggregate validated comparison Evidence, or automatically run and resume a persistent cross-version artifact investigation beneath an approved evidence root. Runtime observations remain distinct from static behavior candidates; missing or incomplete comparisons produce unresolved findings, never causal claims.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"changes":{"items":[{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null}],"limit":100,"next_offset":null,"offset":0,"total":2},"dimensions":[{"conclusion_kind":"derived_relationship","dimension":"identity","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":null,"left_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","limitations":[],"right_count":null,"right_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"comments","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"calls","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"references","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"strings_names","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"cfg","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":1,"left_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","limitations":[],"right_count":1,"right_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","status":"unchanged","text_delta":null}],"function_match":{"left_name":"main","method":"symbol","right_name":"main","status":"matched"},"left_subject_sha256":"0000000000000000000000000000000000000000000000000000000000000000","limitations":[],"right_subject_sha256":"1111111111111111111111111111111111111111111111111111111111111111","status":"unknown","summary":{"changed":1,"truncated":0,"unchanged":6,"unknown":1}},"operation":"compare_functions","parameters":{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]},"predicate_type":"rea.function-comparison/v1","provider":{"id":"rea-function-comparison","name":"REA function comparison","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"limit":100,"offset":0}],"properties":{"comparisons":{"default":[],"description":"Validated comparison Evidence records to aggregate.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"investigation_run":{"anyOf":[{"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_workspace_revision":{"description":"Expected workspace revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"left_path":{"description":"Local filesystem path for left.","maxLength":4096,"minLength":1,"type":"string"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"options":{"default":{"change_limit":500,"max_compression_ratio":1000,"max_depth":20,"max_entries":10000,"max_entry_bytes":268435456,"max_path_bytes":4096,"max_total_bytes":1073741824,"page_size":500},"description":"Value for options.","properties":{"change_limit":{"default":500,"description":"Maximum number of change entries to return.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"page_size":{"default":500,"description":"Value for page size.","maximum":500,"minimum":1,"type":"integer"}},"type":"object"},"replay_run_id":{"description":"Value for replay run id.","pattern":"^run_[a-f0-9]{64}$","type":"string"},"right_path":{"description":"Local filesystem path for right.","maxLength":4096,"minLength":1,"type":"string"},"workspace_name":{"default":"default","description":"Value for workspace name.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","left_path","right_path"],"type":"object"},{"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_workspace_revision":{"description":"Expected workspace revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"left_path":{"description":"Local filesystem path for left.","maxLength":4096,"minLength":1,"type":"string"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"options":{"default":{"change_limit":500,"max_compression_ratio":1000,"max_depth":20,"max_entries":10000,"max_entry_bytes":268435456,"max_path_bytes":4096,"max_total_bytes":1073741824,"page_size":500},"description":"Value for options.","properties":{"change_limit":{"default":500,"description":"Maximum number of change entries to return.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"page_size":{"default":500,"description":"Value for page size.","maximum":500,"minimum":1,"type":"integer"}},"type":"object"},"replay_run_id":{"description":"Value for replay run id.","pattern":"^run_[a-f0-9]{64}$","type":"string"},"right_path":{"description":"Local filesystem path for right.","maxLength":4096,"minLength":1,"type":"string"},"workspace_name":{"default":"default","description":"Value for workspace name.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","left_path","right_path","integrity_policy","integrity_continue_approved"],"type":"object"}],"description":"Value for investigation run."},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"type":"object"},"kind":"session","name":"find_changed_behavior","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"behavior_status":{"enum":["observed_changed","observed_unchanged","unknown","truncated"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":3,"type":"array"},"findings":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["observed_change","derived_relationship","contradiction","unresolved_branch"],"type":"string"},"dimension":{"minLength":1,"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":201,"minItems":3,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"scope":{"enum":["runtime","protocol","resource","static_candidate"],"type":"string"},"source_comparison_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["scope","dimension","classification","status","source_comparison_id","evidence_links","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"investigation_run":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"inventory_evidence_count":{"maximum":200,"minimum":2,"type":"integer"},"left_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"type":"string"},"maxItems":100,"type":"array"},"right_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"run_id":{"pattern":"^run_[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"workspace_id":{"pattern":"^ws_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","workspace_id","run_id","left_manifest_id","right_manifest_id","inventory_evidence_count","comparison_evidence_id","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"summary":{"additionalProperties":false,"properties":{"contradictions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observed_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["observed_changes","static_candidates","contradictions","unresolved"],"type":"object"}},"required":["behavior_status","summary","findings","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Find Changed Behavior"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Build bounded shortest-first direct-callee paths from explicit analyze_function Evidence groups using exact canonical addresses. Missing dossiers, incomplete callee pages, provider mixing, and depth frontiers remain unknown; every node and edge cites source Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"functions":[{"authority":"shipped-artifact","confidence":"derived","environment":null,"evidence_id":"ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","evidence_links":[],"limitations":[],"locations":[],"normalized_result":{"assembly":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"basic_blocks":{"items":[{"end":"0x1001","start":"0x1000","successors":[]}],"next_offset":null,"returned":1,"total":1,"truncated":false},"callees":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"callers":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"comments":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"incoming_references":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"instruction_scan":{"scanned":1,"truncated":false},"outgoing_references":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"procedure":{"address":"0x1000","locals":[],"name":"main","signature":"int main(void)"},"pseudocode":{"next_offset":null,"returned_chars":9,"text":"return 0;","total_chars":9,"truncated":false},"referenced_names":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"referenced_strings":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false}},"operation":"analyze_function","parameters":{"assembly_offset":0,"collection_offset":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"include_assembly":false,"limit":100,"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main","pseudocode_offset":0},"predicate_type":"rea.analysis/v2","provider":{"id":"rea-workflow","name":"REA composed investigation workflow","version":"1"},"raw_result":null,"schema_version":2,"subject":{"architecture":null,"digest":{"sha256":"0000000000000000000000000000000000000000000000000000000000000000"},"format":"mach-o","local_path":"/tmp/function-0","name":"function-0"}}],"goal":{"address":"0x1000"},"limit":100,"max_depth":8,"max_paths":10,"offset":0,"start":{"address":"0x1000"}}],"properties":{"functions":{"description":"Value for functions.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}]},"maxItems":500,"minItems":1,"type":"array"},"goal":{"additionalProperties":false,"description":"Value for goal.","properties":{"address":{"description":"Value for address.","pattern":"^0[xX][0-9a-fA-F]+$","type":"string"}},"required":["address"],"type":"object"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_depth":{"default":8,"description":"Maximum permitted depth for this operation.","maximum":32,"minimum":0,"type":"integer"},"max_paths":{"default":10,"description":"Maximum permitted paths for this operation.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"start":{"additionalProperties":false,"description":"Value for start.","properties":{"address":{"description":"Value for address.","pattern":"^0[xX][0-9a-fA-F]+$","type":"string"}},"required":["address"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["functions","start","goal"],"type":"object"},"kind":"session","name":"build_call_path","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"source":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"target":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"}},"required":["source","target","evidence_links"],"type":"object"},"maxItems":32,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3300,"minItems":1,"type":"array"},"hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","evidence_links"],"type":"object"},"maxItems":33,"minItems":1,"type":"array"}},"required":["hops","nodes","edges","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":100,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","returned","next_offset","total","truncated","lower_bound"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"found","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"prefixItems":[],"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"const":0,"type":"number"},"next_offset":{"type":"null"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"const":0,"type":"number"},"total":{"const":0,"type":"number"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","total","returned","truncated","lower_bound","next_offset"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":true,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"type":"null"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"not_found","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"prefixItems":[],"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"const":0,"type":"number"},"next_offset":{"type":"null"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"const":0,"type":"number"},"total":{"const":0,"type":"number"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","total","returned","truncated","lower_bound","next_offset"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":false,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"type":"null"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"unknown","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"source":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"target":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"}},"required":["source","target","evidence_links"],"type":"object"},"maxItems":32,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3300,"minItems":1,"type":"array"},"hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","evidence_links"],"type":"object"},"maxItems":33,"minItems":1,"type":"array"}},"required":["hops","nodes","edges","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":100,"minimum":0,"type":"integer"},"total":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["offset","limit","items","returned","next_offset","total","truncated","lower_bound"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":false,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"truncated","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Build Call Path"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate explicit caller-declared hypotheses between exact static comparison findings and runtime comparison dimensions. Similar names or paths are never auto-matched, consistent cochange never proves causality, and unknown or truncated inputs remain unresolved.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"mappings":[{"hypothesis":{"expected_pattern":"static_only","statement":"Static implementation changed without terminal change."},"runtime":{"comparison_evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","dimension":"terminal"},"side_alignment":"left_to_left","static":{"comparison_evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","selector":{"dimension":"pseudocode","kind":"function"}}}],"offset":0,"runtime_comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","evidence_links":["ev_0014950a3b67b96d5d182a51c5a271959828fe6a91db55fc507dd5a9c2a5ecaf","ev_5d45bc669ea10694f3bdf3b325e2048844da96a621b717ad252d667af53df590"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"exit":"unchanged","filesystem":"unchanged","first_divergence":{"status":"none"},"interaction":"unchanged","limitations":[],"process":"unchanged","protocol":"unchanged","shim":"unchanged","status":"unchanged","terminal":"unchanged"},"operation":"compare_process_captures","parameters":{"left_evidence_id":"ev_0014950a3b67b96d5d182a51c5a271959828fe6a91db55fc507dd5a9c2a5ecaf","left_normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"right_evidence_id":"ev_5d45bc669ea10694f3bdf3b325e2048844da96a621b717ad252d667af53df590","right_normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10}},"predicate_type":"rea.process-comparison/v3","provider":{"id":"rea-process","name":"REA deterministic process harness","version":"3"},"raw_result":null,"schema_version":2,"subject":null}],"static_comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"changes":{"items":[{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null}],"limit":100,"next_offset":null,"offset":0,"total":2},"dimensions":[{"conclusion_kind":"derived_relationship","dimension":"identity","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":null,"left_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","limitations":[],"right_count":null,"right_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"comments","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"calls","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"references","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"strings_names","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"cfg","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":1,"left_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","limitations":[],"right_count":1,"right_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","status":"unchanged","text_delta":null}],"function_match":{"left_name":"main","method":"symbol","right_name":"main","status":"matched"},"left_subject_sha256":"0000000000000000000000000000000000000000000000000000000000000000","limitations":[],"right_subject_sha256":"1111111111111111111111111111111111111111111111111111111111111111","status":"unknown","summary":{"changed":1,"truncated":0,"unchanged":6,"unknown":1}},"operation":"compare_functions","parameters":{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]},"predicate_type":"rea.function-comparison/v1","provider":{"id":"rea-function-comparison","name":"REA function comparison","version":"1"},"raw_result":null,"schema_version":2,"subject":null}]}],"properties":{"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mappings":{"description":"Value for mappings.","items":{"additionalProperties":false,"properties":{"hypothesis":{"additionalProperties":false,"description":"Value for hypothesis.","properties":{"expected_pattern":{"description":"Expected pattern used to reject stale or mismatched input.","enum":["cochanged","static_only","runtime_only","both_unchanged"],"type":"string"},"statement":{"description":"Value for statement.","maxLength":500,"minLength":1,"type":"string"}},"required":["statement","expected_pattern"],"type":"object"},"runtime":{"additionalProperties":false,"description":"Value for runtime.","properties":{"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"}},"required":["comparison_evidence_id","dimension"],"type":"object"},"side_alignment":{"description":"Value for side alignment.","enum":["left_to_left","left_to_right"],"type":"string"},"static":{"additionalProperties":false,"description":"Value for static.","properties":{"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"selector":{"description":"Value for selector.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact","description":"Value for kind.","type":"string"},"logical_path":{"description":"Local filesystem path for logical.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","logical_path"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"description":"Value for dimension.","enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","dimension"],"type":"object"}]}},"required":["comparison_evidence_id","selector"],"type":"object"}},"required":["static","runtime","side_alignment","hypothesis"],"type":"object"},"maxItems":500,"minItems":1,"type":"array"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_comparisons":{"description":"Value for runtime comparisons.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"static_comparisons":{"description":"Value for static comparisons.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["static_comparisons","runtime_comparisons","mappings"],"type":"object"},"kind":"session","name":"correlate_static_and_runtime","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"correlations":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["hypothesis","contradiction","unresolved_branch"],"type":"string"},"correlation_id":{"pattern":"^cor_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":2,"type":"array"},"hypothesis":{"additionalProperties":false,"properties":{"expected_pattern":{"enum":["cochanged","static_only","runtime_only","both_unchanged"],"type":"string"},"statement":{"maxLength":500,"minLength":1,"type":"string"}},"required":["statement","expected_pattern"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"observed_pattern":{"enum":["cochanged","static_only","runtime_only","both_unchanged","unknown","truncated"],"type":"string"},"runtime":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["comparison_evidence_id","dimension","status"],"type":"object"},"side_alignment":{"enum":["left_to_left","left_to_right"],"type":"string"},"static":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"conclusion_kind":{"enum":["derived_relationship","contradiction","unresolved_branch"],"type":"string"},"selector":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact","type":"string"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","logical_path"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"function","type":"string"}},"required":["kind","dimension"],"type":"object"}]},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["comparison_evidence_id","selector","status","conclusion_kind"],"type":"object"}},"required":["correlation_id","static","runtime","side_alignment","hypothesis","observed_pattern","classification","evidence_links","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":2,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"status":{"enum":["correlated","contradicted","unknown","truncated"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"contradictions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hypotheses":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["hypotheses","contradictions","unresolved"],"type":"object"}},"required":["status","summary","correlations","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Correlate Static And Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Verify a finite typed behavioral and structural specification against a canonical Evidence bundle. Pass means every declared claim has complete comparable authority—not global source equivalence; changed claims fail and missing, limited, or unresolved evidence stays unknown.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"offset":0,"specification":{"claims":[{"claim_id":"terminal-output","comparison_evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","dimension":"terminal","kind":"behavioral","title":"Terminal output remains equivalent"}],"name":"Terminal compatibility","schema_version":1}}],"properties":{"coverage":{"additionalProperties":false,"description":"Exact reconstruction-coverage commitment to verify.","properties":{"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","maxLength":200,"minLength":1,"type":"string"},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"description":"Exact SHA-256 digest of revision.","pattern":"^[a-f0-9]{64}$","type":"string"},"workspace_id":{"description":"Value for workspace id.","pattern":"^rcw_[a-f0-9]{64}$","type":"string"}},"required":["workspace_id","revision","revision_sha256","boundary_id"],"type":"object"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"specification":{"description":"Value for specification.","properties":{"claims":{"description":"Value for claims.","items":{"oneOf":[{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["overall","terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"kind":{"const":"behavioral","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"},{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["overall","identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"structural-function","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"},{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"const":"overall","description":"Value for dimension.","type":"string"},"kind":{"const":"structural-artifact","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"}]},"maxItems":100,"minItems":1,"type":"array"},"name":{"description":"Exact name used by this operation.","maxLength":200,"minLength":1,"type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","name","claims"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["specification"],"type":"object"},"kind":"session","name":"verify_reconstruction","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"claims":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"claim_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"minLength":1,"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":201,"minItems":3,"type":"array"},"kind":{"enum":["behavioral","structural-function","structural-artifact"],"type":"string"},"left_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"observed_status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"right_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"status":{"enum":["pass","fail","unknown"],"type":"string"},"unknown_ids":{"items":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["claim_id","kind","dimension","status","observed_status","comparison_evidence_id","left_evidence_ids","right_evidence_ids","evidence_links","unknown_ids","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":100,"minimum":1,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":3,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"claim_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"},"unknown_ids":{"items":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["operation","rationale","claim_ids","unknown_ids"],"type":"object"},"maxItems":2000,"type":"array"},"specification_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"behavioral":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"failed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"passed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":100,"minimum":1,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","passed","failed","unknown","behavioral","structural"],"type":"object"}},"required":["status","specification_sha256","summary","claims","recommended_probes","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Verify Reconstruction"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"List current residual-unknown heads in deterministic ID order, with optional exact status, severity, and domain filters. Pages default to 100 items; while has_more is true, pass next_offset as offset and continue until false. This is read-only; unresolved, contradicted, and non-truth dispositions remain distinct.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"offset":0}],"properties":{"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"}},"type":"object"},"kind":"session","name":"list_unknowns","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"unknown":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"uri":{"pattern":"^rea:\\\\/\\\\/unknown\\\\/unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown","uri"],"type":"object"},"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"List Unknowns"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Create one deterministic residual unknown and immutable mutation evidence. Requires approved: true, validates all evidence and relationship references, and rejects duplicate stable identity.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"contradicting_evidence_ids":[],"domain":"protocol","question":"Does this branch require an unavailable external service?","recommended_probes":[{"operation":"capture_process_scenario","rationale":"Replay branch."}],"relationships":[],"required_authority":"controlled-replay","required_confidence":"observed","required_environment":null,"severity":"medium","supporting_evidence_ids":[]}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"contradicting_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"supporting_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["question","severity","domain","required_authority","required_confidence","required_environment","recommended_probes","relationships","approved"],"type":"object"},"kind":"session","name":"record_unknown","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Record Unknown"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Append one immutable full-state revision and mutation evidence. Requires approved: true and exact expected_revision; stale concurrent writers fail instead of overwriting newer analysis.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"contradicting_evidence_ids":[],"expected_revision":1,"recommended_probes":[],"relationships":[],"required_authority":"controlled-replay","required_confidence":"observed","required_environment":null,"resolution":null,"severity":"medium","status":"investigating","supporting_evidence_ids":[],"unknown_id":"unk_0000000000000000000000000000000000000000000000000000000000000000"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_revision":{"description":"Expected revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown_id","expected_revision","approved","status","severity","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution"],"type":"object"},"kind":"session","name":"update_unknown","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Update Unknown"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Revalidate the current residual-unknown head against live bundled evidence, exact authority/confidence/environment requirements, and revision integrity. Withdrawn and out-of-scope dispositions are not truth claims.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"unknown_id":"unk_0000000000000000000000000000000000000000000000000000000000000000"}],"properties":{"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown_id"],"type":"object"},"kind":"session","name":"verify_unknown_resolution","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"truthVerified":{"type":"boolean"},"unknown":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"valid":{"type":"boolean"}},"required":["valid","truthVerified","unknown"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Verify Unknown Resolution"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Evaluate ordered HTTP and WebSocket events directly against one validated finite replay machine without opening sockets or launching a target. Returns every decision, a capture-value-free transition journal, one redacted action table entry per used transition, captured aliases, final state, and exact configured and consumed limits.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"events":[{"at_ms":0,"body":"{\\"token\\":\\"opaque\\"}","connection":"not_applicable","headers":{},"method":"POST","path":"/callback","protocol":"http"}],"machine":{"initial_state":"waiting","limits":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"max_transitions":1,"states":[{"max_visits":100000,"name":"waiting","terminal":false},{"max_visits":100000,"name":"complete","terminal":true}],"transitions":[{"actions":[{"body":"","headers":{},"status":204,"type":"http_response"}],"captures":[{"sensitive":true,"value":{"path":["token"],"source":"request_json"},"variable":"token"}],"from":"waiting","guards":[],"id":"accept_callback","max_uses":1,"priority":100,"to":"complete","trigger":{"body":null,"headers":{},"method":"POST","path":"/callback","protocol":"http"}}]}}],"properties":{"events":{"description":"Value for events.","items":{"oneOf":[{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"const":"not_applicable","description":"Value for connection.","type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"description":"Value for connection.","enum":["initial","reconnect"],"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","type":"null"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"description":"Value for connection.","enum":["initial","reconnect"],"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","type":"null"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"}]},"maxItems":10000,"type":"array"},"machine":{"additionalProperties":false,"description":"Value for machine.","properties":{"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"default":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"bytes":{"default":1000000,"description":"Value for bytes.","maximum":10000000,"minimum":1,"type":"integer"},"connections":{"default":100,"description":"Value for connections.","maximum":1000,"minimum":1,"type":"integer"},"duration_ms":{"default":30000,"description":"Value for duration ms.","maximum":300000,"minimum":1,"type":"integer"},"messages":{"default":10000,"description":"Value for messages.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"max_transitions":{"description":"Maximum permitted transitions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"max_visits":{"default":100000,"description":"Maximum permitted visits for this operation.","maximum":100000,"minimum":1,"type":"integer"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"terminal":{"default":false,"description":"Value for terminal.","type":"boolean"}},"required":["name"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"transitions":{"description":"Value for transitions.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"default":{},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","description":"Value for type.","type":"string"}},"required":["type","status","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","description":"Value for type.","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","description":"Value for type.","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"minItems":1,"type":"array"},"captures":{"description":"Value for captures.","items":{"additionalProperties":false,"properties":{"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"from":{"description":"Value for from.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"guards":{"description":"Value for guards.","items":{"additionalProperties":false,"properties":{"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","maximum":10000,"minimum":1,"type":"integer"},"priority":{"default":100,"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"to":{"description":"Value for to.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","method","path"],"type":"object"},{"additionalProperties":false,"properties":{"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"}]}},"required":["id","from","to","trigger","actions","max_uses"],"type":"object"},"maxItems":2000,"minItems":1,"type":"array"}},"required":["initial_state","states","transitions","max_transitions"],"type":"object"}},"required":["machine","events"],"type":"object"},"kind":"session","name":"run_replay_machine","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"decisions":{"items":{"additionalProperties":false,"properties":{"event_sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outcome":{"anyOf":[{"const":"matched","type":"string"},{"enum":["unmatched","invalid_state","guard_failed","transition_exhausted","invalid_capture","unexpected_reconnect","limit_exhausted"],"type":"string"}]},"transition_sequence":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["event_sequence","outcome","transition_sequence"],"type":"object"},"maxItems":10000,"type":"array"},"final_state":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"initial_state":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"properties":{"configured":{"additionalProperties":false,"properties":{"bytes":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"connections":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"duration_ms":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"messages":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"transitions":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["transitions","connections","messages","bytes","duration_ms"],"type":"object"},"usage":{"additionalProperties":false,"properties":{"admitted_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"last_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"messages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"offered_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"transitions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offered_events","admitted_events","transitions","connections","messages","bytes","last_at_ms"],"type":"object"}},"required":["configured","usage"],"type":"object"},"schema_version":{"const":1,"type":"number"},"terminal":{"type":"boolean"},"transition_actions":{"items":{"additionalProperties":false,"properties":{"actions":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"type":"string"},"propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","type":"string"}},"required":["type","status","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"type":"array"},"transition_id":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["transition_id","actions"],"type":"object"},"maxItems":2000,"type":"array"},"transition_journal":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"captured_aliases":{"items":{"additionalProperties":false,"properties":{"name":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"sensitive":{"type":"boolean"}},"required":["name","sensitive"],"type":"object"},"maxItems":32,"type":"array"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"state_before":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"transition_id":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["sequence","at_ms","transition_id","state_before","state_after","captured_aliases"],"type":"object"},"maxItems":10000,"type":"array"}},"required":["schema_version","initial_state","final_state","terminal","decisions","transition_journal","transition_actions","limits"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Run Replay Machine"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Retain the current canonical Evidence v2 bundle as an immutable session resource. Returns a compact digest summary and exact opaque URI; copy that URI unchanged and call MCP resources/read (Codex: read_mcp_resource) for the full bundle. Repeating an unchanged snapshot is idempotent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"session","name":"snapshot_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bundle_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"bundle_uri":{"pattern":"^rea:\\\\/\\\\/evidence-bundle\\\\/[a-f0-9]{64}$","type":"string"},"bundle_version":{"const":2,"type":"number"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scope":{"const":"session","type":"string"},"survives_session":{"const":false,"type":"boolean"},"unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["bundle_digest","bundle_version","bytes","records","unknowns","scope","survives_session","bundle_uri"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Snapshot Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Release one immutable session-retained Evidence v2 bundle by exact digest. This is the recovery operation when bounded bundle retention is exhausted; releasing an unknown digest is idempotent and reports released: false.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"bundle_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}],"properties":{"bundle_digest":{"description":"Value for bundle digest.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["bundle_digest"],"type":"object"},"kind":"session","name":"release_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bundle_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"released":{"type":"boolean"}},"required":["bundle_digest","released"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Release Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compose the selected document, current address, and containing/current procedure into one provider-neutral result. The result reflects sequential provider observations, not an atomic cursor snapshot; a cursor outside any procedure returns procedure: null. Scalar navigation getters remain available for evaluation and compatibility.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{"document":{"description":"Exact provider document or program identity.","minLength":1,"type":"string"}},"type":"object"},"kind":"session","name":"get_navigation_context","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"document":{"type":"string"},"procedure":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["document","address","procedure"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Get Navigation Context"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect one explicit reproducible address for its analyzed name, containing procedure, regular and inline comments, and matching bookmarks. Each unsupported facet returns a typed unavailable outcome; xrefs, assembly, and pseudocode remain separate bounded follow-ups.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"address":"0x1000"}],"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"document":{"description":"Exact provider document or program identity.","minLength":1,"type":"string"}},"required":["address"],"type":"object"},"kind":"session","name":"inspect_address_context","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"bookmarks":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"comment":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"document":{"anyOf":[{"type":"string"},{"type":"null"}]},"inline_comment":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"name":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"procedure":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]}},"required":["address","document","name","procedure","comment","inline_comment","bookmarks"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Inspect Address Context"}]}'; + '{"auxiliaryProviders":[{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"inventory_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"inspect_artifact","outputContractVersion":1,"pagination":"none","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":true,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["DMG child inventory is macOS-only and requires per-call approval plus operator policy; PKG remains root-hash-only.","ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":120000},"operation":"extract_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"},"reason":null}],"identity":{"id":"rea-artifact-graph","name":"REA safe artifact graph provider","version":"1"}},{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_macho","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_signature","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"inspect_plist","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":null,"timeoutMs":30000},"operation":"list_architectures","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":true,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":true,"inputContractVersion":1,"limitations":["Availability and textual formats depend on the installed macOS/Xcode toolchain."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":30000},"operation":"demangle_swift","outputContractVersion":1,"pagination":"none","provider":{"id":"native-macos","name":"macOS native inspection utilities","version":null},"reason":null}],"identity":{"id":"native-macos","name":"macOS native inspection utilities","version":null}},{"capabilities":[{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability inventories PE/CLI identity only; inspect_managed_members admits bounded metadata members, signatures, and CIL anchors.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_artifact","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability decodes bounded PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# reconstruction and cross-build member comparison are separate operations.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_members","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null},{"available":true,"effects":{"changesPermissions":false,"launchesProcess":false,"mayAccessNetwork":false,"mayShowUi":false,"mayWriteFilesystem":false,"mutatesArtifact":false,"requiresRoot":false},"exhaustive":false,"inputContractVersion":1,"limitations":["This capability inventories managed declarations for native boundaries only; native exports, thunks, and addresses require separate native-provider evidence.","It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."],"limits":{"maxPayloadBytes":4194304,"maxResults":500,"timeoutMs":null},"operation":"inspect_managed_native_boundaries","outputContractVersion":1,"pagination":"offset","provider":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"},"reason":null}],"identity":{"id":"rea-dotnet-static","name":"REA managed static analysis provider","version":"1"}}],"catalog":[{"analysisOperation":"address_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve the primary analyzed name at a code or data address. Headless providers require an explicit address; GUI providers may default to their current cursor. Null means the provider has no primary name at that address.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"address_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Address Name"},{"analysisOperation":"comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read the regular analysis comment at an address, defaulting to the current cursor. This is read-only and returns null when no comment exists; use set_comment to persist a finding.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Comment"},{"analysisOperation":"current_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return Hopper\'s current cursor address for the selected document. Use only for interactive navigation state; prefer explicit addresses in reproducible investigations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Address"},{"analysisOperation":"current_procedure","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the analyzed procedure containing Hopper\'s current cursor. Use procedure_info or analyze_function next; this depends on GUI cursor state and is not an exhaustive lookup.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_procedure","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Procedure"},{"analysisOperation":"current_document","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the document currently selected by REA\'s Hopper bridge. Use list_documents before switching when several documents are open.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"current_document","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Current Document"},{"analysisOperation":"goto_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Move Hopper\'s GUI cursor to a hexadecimal address and return the resolved address. This changes navigation state but not analysis data; use explicit-address tools for headless workflows.","effects":{"accessesNetwork":false,"changesUiState":true,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"goto_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Goto Address"},{"analysisOperation":"inline_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read the inline instruction comment at an address, defaulting to the current cursor. Returns null when absent; use set_inline_comment to write one.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"inline_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inline Comment"},{"analysisOperation":"list_bookmarks","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List every bookmark in the selected Hopper document as address and name pairs. Use bookmarks as analyst-authored navigation aids; this does not discover code references.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_bookmarks","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Bookmarks"},{"analysisOperation":"list_documents","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List provider program or document identities. Hopper may expose several documents; a Ghidra headless session contains exactly its one imported Program.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_documents","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Documents"},{"analysisOperation":"list_names","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through analyzed memory and external symbols as address/value pairs. Provider metadata distinguishes Ghidra primary, dynamic, external, type, and source facts when available; follow next_offset before claiming exhaustive coverage.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_names","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Names"},{"analysisOperation":"list_procedures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through analyzed procedures as address/value pairs after provider analysis. Ghidra metadata distinguishes thunks and external functions; follow next_offset for exhaustive coverage and use returned addresses in later function operations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_procedures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Procedures"},{"analysisOperation":"list_segments","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"List segments or memory blocks using exclusive end addresses. Ghidra reports block permissions, address space, image base, initialization, and overlay facts; Hopper marks unavailable permissions explicitly.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_segments","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"additionalProperties":false,"properties":{"address_space":{"type":"string"},"end":{"type":"string"},"executable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"image_base":{"type":"string"},"initialized":{"type":"boolean"},"name":{"type":"string"},"overlay":{"type":"boolean"},"permissions":{"anyOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"source":{"const":"ghidra-memory-block","type":"string"}},"required":["available","source"],"type":"object"}]},"provenance":{"enum":["hopper-public-python-api","ghidra-memory-block"],"type":"string"},"readable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"sections":{"items":{"additionalProperties":false,"properties":{"address_space":{"type":"string"},"end":{"type":"string"},"executable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"image_base":{"type":"string"},"initialized":{"type":"boolean"},"name":{"type":"string"},"overlay":{"type":"boolean"},"permissions":{"anyOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"source":{"const":"ghidra-memory-block","type":"string"}},"required":["available","source"],"type":"object"}]},"provenance":{"enum":["hopper-public-python-api","ghidra-memory-block"],"type":"string"},"readable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"start":{"type":"string"},"writable":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","start","end","readable","writable","executable","permissions","provenance"],"type":"object"},"type":"array"},"start":{"type":"string"},"writable":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","start","end","readable","writable","executable","permissions","provenance","sections"],"type":"object"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Segments"},{"analysisOperation":"list_strings","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Page through provider-defined strings, or filter to one address, as address/value pairs. Ghidra reports charset, missing-terminator status, byte length, and explicit value truncation; follow next_offset for exhaustive results.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":100,"offset":0}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"list_strings","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"procedure":{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target"],"type":"object"},"string":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"encoding":{"type":"string"},"termination":{"enum":["missing","present_or_not_required"],"type":"string"}},"required":["encoding","termination","byte_length"],"type":"object"},"symbol":{"additionalProperties":false,"properties":{"dynamic":{"type":"boolean"},"external":{"type":"boolean"},"primary":{"type":"boolean"},"source":{"enum":["default","analysis","ai","imported","user_defined"],"type":"string"},"type":{"type":"string"}},"required":["primary","dynamic","external","type","source"],"type":"object"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Strings"},{"analysisOperation":"next_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the next analyzed object address after an explicit address or current cursor. This is a navigation primitive, not instruction-flow or CFG analysis.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"next_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Next Address"},{"analysisOperation":"prev_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the previous analyzed instruction start before an explicit address or current cursor. This is a navigation primitive and may fail at document boundaries.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"prev_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Prev Address"},{"analysisOperation":"procedure_address","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an unambiguous procedure symbol name or provider-normalized address to its canonical entry address. External address spaces remain explicit; use the result before xrefs, assembly, or decompilation.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_address","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Address"},{"analysisOperation":"procedure_assembly","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return assembly for one analyzed procedure identified by symbol or hexadecimal address. Use when pseudocode loses calling-convention or instruction-level detail; output is currently returned as one unpaginated string.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_assembly","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Assembly"},{"analysisOperation":"procedure_callees","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the provider\'s resolved direct callees for one procedure identified by symbol or address. Unresolved indirect calls may be absent; use analyze_function and typed references to preserve available edge uncertainty.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_callees","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Callees"},{"analysisOperation":"procedure_callers","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return the provider\'s resolved direct callers for one procedure identified by symbol or address. Results reflect completed static analysis and may omit unresolved indirect references.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_callers","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Callers"},{"analysisOperation":"procedure_info","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return bounded metadata for one procedure identified by symbol or address: entrypoint, signature, locals, size, and block count. Follow with decompilation or assembly for behavior.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_info","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"basicblock_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"entrypoint":{"type":"string"},"length":{"minimum":0,"type":"number"},"locals":{"items":{"additionalProperties":false,"properties":{"description":{"type":"string"},"provenance":{"minLength":1,"type":"string"}},"required":["description","provenance"],"type":"object"},"type":"array"},"name":{"type":"string"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","entrypoint","basicblock_count","length","signature","locals","classification"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Info"},{"analysisOperation":"read_function_instructions","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read one offset-paginated window of raw instructions for an analyzed procedure without decompilation, caller discovery, or whole-program string/name scans. Use this fast path for instruction-level orientation; follow next_offset when truncated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"limit":64,"offset":0,"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"limit":{"default":64,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":100000,"minimum":0,"type":"integer"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"read_function_instructions","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"instruction_scan_truncated":{"type":"boolean"},"instructions":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"instructions_scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"}},"required":["procedure","instructions","instructions_scanned","instruction_scan_truncated","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Read Function Instructions"},{"analysisOperation":"read_bytes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read at most 4,096 analyzed bytes from one provider-normalized virtual address. The hexadecimal payload reports the exact returned length; incomplete reads remain explicit and unsupported provider APIs return typed capability unavailability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","length":16}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"length":{"default":256,"description":"Value for length.","maximum":4096,"minimum":1,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"read_bytes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"bytes_hex":{"pattern":"^(?:[a-f0-9]{2})*$","type":"string"},"complete":{"type":"boolean"},"requested_bytes":{"maximum":4096,"minimum":1,"type":"integer"},"returned_bytes":{"maximum":4096,"minimum":0,"type":"integer"}},"required":["address","requested_bytes","returned_bytes","bytes_hex","complete"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Read Bytes"},{"analysisOperation":"address_to_file_offset","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Map one provider-normalized virtual address to its original nonnegative file offset. Unmapped addresses fail explicitly, and providers without an authoritative mapping API return typed capability unavailability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"address_to_file_offset","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"file_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["address","file_offset"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Address To File Offset"},{"analysisOperation":"procedure_references","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return a bounded set of raw incoming or outgoing reference edges for one procedure. Endpoint procedures are resolved only from provider containment; Ghidra preserves observed reference kinds while providers without kind authority mark them unavailable.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"direction":"outgoing","limit":100,"max_instructions":500,"offset":0,"procedure":"main"}],"properties":{"direction":{"default":"outgoing","description":"Direction in which to traverse or compare relationships.","enum":["incoming","outgoing"],"type":"string"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_references","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"direction":{"enum":["incoming","outgoing"],"type":"string"},"instruction_scan_truncated":{"type":"boolean"},"instructions_scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]}},"required":["procedure","direction","references","instructions_scanned","instruction_scan_truncated"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure References"},{"analysisOperation":"procedure_pseudo_code","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Decompile one analyzed procedure by symbol name or provider-normalized address. Returns provider-specific pseudocode, never original source or cross-provider text equivalence, and may return null; request procedure_assembly when instruction precision matters.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"procedure":"main"}],"properties":{"document":{"description":"The document name","type":"string"},"procedure":{"description":"The procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"official-proxy","name":"procedure_pseudo_code","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Procedure Pseudo Code"},{"analysisOperation":"resolve_containing_procedure","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an arbitrary address, including an interior instruction or exact external entry, to its provider-analyzed containing procedure. A negative result distinguishes outside segments from not in a procedure and is never guessed from nearby symbols.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"resolve_containing_procedure","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Resolve Containing Procedure"},{"analysisOperation":"search_procedures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Search analyzed procedure names using literal matching by default or regex opt-in. Providers bound search work and reject regex constructs, paths, candidates, or cumulative work outside their finite budgets. Results are deterministic and offset-paginated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"case_sensitive":false,"limit":100,"mode":"literal","offset":0,"pattern":"main"}],"properties":{"case_sensitive":{"default":false,"description":"Whether to match case","type":"boolean"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mode":{"default":"literal","description":"Operation mode that selects the requested behavior.","enum":["literal","regex"],"type":"string"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"pattern":{"description":"The literal text or bounded regex pattern to search for","maxLength":256,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["pattern"],"type":"object"},"kind":"official-proxy","name":"search_procedures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value","value_truncated"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Search Procedures"},{"analysisOperation":"search_strings","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Search analyzed strings using literal matching by default or regex opt-in. Providers bound search work and reject regex constructs, paths, candidates, or cumulative work outside their finite budgets. Results are deterministic, offset-paginated, and explicitly truncated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"case_sensitive":false,"limit":100,"mode":"literal","offset":0,"pattern":"authorization failed"}],"properties":{"case_sensitive":{"default":false,"description":"Whether to match case","type":"boolean"},"document":{"description":"The document name","type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mode":{"default":"literal","description":"Operation mode that selects the requested behavior.","enum":["literal","regex"],"type":"string"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"pattern":{"description":"The literal text or bounded regex pattern to search for","maxLength":256,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["pattern"],"type":"object"},"kind":"official-proxy","name":"search_strings","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"value":{"type":"string"},"value_truncated":{"type":"boolean"}},"required":["address","value","value_truncated"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Search Strings"},{"analysisOperation":"set_address_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Assign an analyst name to one hexadecimal address and report Hopper\'s boolean result. This mutates analysis metadata; read it back with address_name before relying on it.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","name":"entry"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"name":{"description":"Exact name used by this operation.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","name"],"type":"object"},"kind":"official-proxy","name":"set_address_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Address Name"},{"analysisOperation":"set_addresses_names","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Assign analyst names to an address/name map and return per-address success booleans. This mutates analysis metadata; use for bounded batches and verify failures individually.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"names":{"0x1000":"entry"}}],"properties":{"document":{"description":"The document name","type":"string"},"names":{"additionalProperties":{"type":"string"},"description":"Value for names.","propertyNames":{"type":"string"},"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["names"],"type":"object"},"kind":"official-proxy","name":"set_addresses_names","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":{"type":"boolean"},"propertyNames":{"type":"string"},"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Addresses Names"},{"analysisOperation":"set_bookmark","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Create or replace a bookmark at a hexadecimal address. This mutates navigation metadata; verify with list_bookmarks and do not treat bookmarks as binary evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"name":{"description":"Exact name used by this operation.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"set_bookmark","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Bookmark"},{"analysisOperation":"set_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Write a regular analysis comment at a hexadecimal address and return whether readback matched. This mutates the Hopper document; use comments to record evidence IDs or reasoning.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","comment":"validated entry point"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"comment":{"description":"Exact analyst comment text to write.","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","comment"],"type":"object"},"kind":"official-proxy","name":"set_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Comment"},{"analysisOperation":"set_current_document","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Select an already-open Hopper document by exact document name. This changes subsequent default-document routing; call list_documents first and prefer explicit document inputs where reproducibility matters.","effects":{"accessesNetwork":false,"changesUiState":true,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"document":"fixture"}],"properties":{"document":{"description":"Exact provider document or program identity.","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["document"],"type":"object"},"kind":"official-proxy","name":"set_current_document","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"string"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Current Document"},{"analysisOperation":"set_inline_comment","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Write an inline instruction comment at a hexadecimal address and return whether readback matched. This mutates analysis metadata; confirm with inline_comment.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000","comment":"calls parser"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"comment":{"description":"Exact analyst comment text to write.","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address","comment"],"type":"object"},"kind":"official-proxy","name":"set_inline_comment","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Set Inline Comment"},{"analysisOperation":"unset_bookmark","annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Remove the bookmark at a hexadecimal address and return whether it is absent. This mutates navigation metadata and does not alter binary bytes.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"address":"0x1000"}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"required":["address"],"type":"object"},"kind":"official-proxy","name":"unset_bookmark","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"type":"boolean"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Unset Bookmark"},{"analysisOperation":"xrefs","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Return analyzed references to a code or data address, defaulting to the current cursor. Use to connect strings, globals, selectors, and functions; bare addresses are untyped and indirect references may be incomplete.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{"address":{"description":"A provider-normalized address; default memory uses 0x-prefixed hexadecimal","type":"string"},"document":{"description":"The document name","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record typed capability unavailability as a residual unknown","type":"boolean"}},"type":"object"},"kind":"official-proxy","name":"xrefs","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"items":{"type":"string"},"type":"array"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Xrefs"},{"analysisOperation":"swift_classes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover legacy-mangled Swift class procedures after exhaustively paging analyzed procedures. Returns at most 100 entries and scans at most 5,000 symbols; use analyze_swift_types for other Swift kinds.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"pattern":""}],"properties":{"pattern":{"default":"","description":"Text or bounded pattern used to filter matching results.","type":"string"}},"type":"object"},"kind":"enhanced","name":"swift_classes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"classes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"},"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["count","classes"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Swift Classes"},{"analysisOperation":"get_objc_classes","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover and deduplicate Objective-C class labels after exhaustively paging names, optionally filtering by literal substring. Returns at most 100 classes; inspect matching metadata and references next.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"pattern":""}],"properties":{"pattern":{"default":"","description":"Text or bounded pattern used to filter matching results.","type":"string"}},"type":"object"},"kind":"enhanced","name":"get_objc_classes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"classes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"},"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["count","classes"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Objc Classes"},{"analysisOperation":"get_objc_protocols","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Discover and deduplicate Objective-C and Swift protocol labels after exhaustively paging names. Returns at most 100 entries; use xrefs or analyze_function to connect a protocol to implementations.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"enhanced","name":"get_objc_protocols","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"protocols":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["count","protocols"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Objc Protocols"},{"analysisOperation":"batch_decompile","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Decompile up to 20 explicit procedure symbols or addresses concurrently. Returns ordered per-item ok/error variants and aggregate counts; use analyze_function for a richer single-function dossier.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"addresses":[]}],"properties":{"addresses":{"default":[],"description":"Ordered provider-normalized procedure addresses to analyze.","items":{"description":"A provider-normalized procedure address","type":"string"},"maxItems":20,"type":"array"}},"type":"object"},"kind":"enhanced","name":"batch_decompile","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"failed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"pseudocode":{"minLength":1,"type":"string"},"status":{"const":"ok","type":"string"}},"required":["address","status","pseudocode"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]},"status":{"const":"error","type":"string"}},"required":["address","status","error"],"type":"object"}]},"type":"array"},"succeeded":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","total","succeeded","failed"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Batch Decompile"},{"analysisOperation":"get_call_graph","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Traverse the bound provider\'s caller or callee relationships from one symbol or address for at most five levels. Every node has an ok/error status and failures use safe typed projections; unresolved indirect calls may be missing and results are not a whole-program CFG.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"address":"0x1000","depth":2,"direction":"forward"}],"properties":{"address":{"description":"A provider-normalized procedure address","type":"string"},"depth":{"default":2,"description":"Value for depth.","maximum":5,"minimum":1,"type":"integer"},"direction":{"default":"forward","description":"Direction in which to traverse or compare relationships.","enum":["forward","backward"],"type":"string"}},"required":["address"],"type":"object"},"kind":"enhanced","name":"get_call_graph","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"calls":{"items":{"type":"string"},"type":"array"},"status":{"const":"ok","type":"string"}},"required":["address","status","calls"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]},"status":{"const":"error","type":"string"}},"required":["address","status","error"],"type":"object"}]},"type":"array"},"propertyNames":{"type":"string"},"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Get Call Graph"},{"analysisOperation":"analyze_swift_types","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Categorize exhaustively paged procedure names into Swift classes, structs, enums, protocols, extensions, and other symbols. Scans at most 5,000 names and returns at most 50 entries per category.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"enhanced","name":"analyze_swift_types","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"categories":{"additionalProperties":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["count","items"],"type":"object"},"propertyNames":{"type":"string"},"type":"object"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","categories"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Swift Types"},{"analysisOperation":"find_xrefs_to_name","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve an exact name through the bound provider\'s exhaustively paged name inventory and return a resolved or unresolved result. Unresolved names use the stable name_not_found reason; this compact xref workflow returns address-only projections.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"name":"malloc"}],"properties":{"name":{"description":"Exact name used by this operation.","type":"string"}},"required":["name"],"type":"object"},"kind":"enhanced","name":"find_xrefs_to_name","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"},"status":{"const":"resolved","type":"string"},"xrefs":{"items":{"type":"string"},"type":"array"}},"required":["status","name","address","xrefs"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"type":"string"},"reason":{"const":"name_not_found","type":"string"},"status":{"const":"unresolved","type":"string"}},"required":["status","name","reason"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Find Xrefs To Name"},{"analysisOperation":"binary_overview","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Use immediately after opening a target to summarize document, exhaustive procedure/string counts, and a bounded segment sample. detail controls segment fields and limit controls only the returned segment sample.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"detail":"concise","limit":10}],"properties":{"detail":{"default":"concise","description":"Requested response detail level.","enum":["concise","detailed"],"type":"string"},"limit":{"default":10,"description":"Maximum number of results to return in this page.","maximum":50,"minimum":1,"type":"integer"}},"type":"object"},"kind":"enhanced","name":"binary_overview","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"detail":{"enum":["concise","detailed"],"type":"string"},"document":{"type":"string"},"procedure_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"segment_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"segments":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"length":{"minimum":0,"type":"number"},"name":{"type":"string"},"start":{"type":"string"}},"required":["name","start","end"],"type":"object"},"type":"array"},"string_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["document","detail","segments","segment_count","procedure_count","string_count"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Binary Overview"},{"analysisOperation":"analyze_function","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Preferred bounded analysis for one procedure symbol or address. Returns identity, provider-specific pseudocode, optional assembly, comments, calls, typed-or-explicitly-unavailable references, referenced strings/names, and local CFG blocks with exact truncation metadata. Providers with a structured decompiler model also expose native API boundary types, confidence, evidence, jump-table data/target addresses, and explicit decompiler-artifact labels.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"assembly_offset":0,"collection_offset":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"include_assembly":false,"limit":100,"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main","pseudocode_offset":0}],"properties":{"assembly_offset":{"default":0,"description":"Zero-based index of the first assembly to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"collection_offset":{"additionalProperties":false,"default":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"description":"Zero-based index of the first collection to return.","properties":{"basic_blocks":{"default":0,"description":"Value for basic blocks.","maximum":9007199254740991,"minimum":0,"type":"integer"},"callees":{"default":0,"description":"Value for callees.","maximum":9007199254740991,"minimum":0,"type":"integer"},"callers":{"default":0,"description":"Value for callers.","maximum":9007199254740991,"minimum":0,"type":"integer"},"comments":{"default":0,"description":"Value for comments.","maximum":9007199254740991,"minimum":0,"type":"integer"},"incoming_references":{"default":0,"description":"Value for incoming references.","maximum":9007199254740991,"minimum":0,"type":"integer"},"outgoing_references":{"default":0,"description":"Value for outgoing references.","maximum":9007199254740991,"minimum":0,"type":"integer"},"referenced_names":{"default":0,"description":"Value for referenced names.","maximum":9007199254740991,"minimum":0,"type":"integer"},"referenced_strings":{"default":0,"description":"Value for referenced strings.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"include_assembly":{"default":false,"description":"Whether to include assembly in the result.","type":"boolean"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_pseudocode_chars":{"default":20000,"description":"Maximum permitted pseudocode chars for this operation.","maximum":100000,"minimum":1,"type":"integer"},"procedure":{"description":"A procedure name or address","type":"string"},"pseudocode_offset":{"default":0,"description":"Zero-based index of the first pseudocode to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["procedure"],"type":"object"},"kind":"enhanced","name":"analyze_function","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"assembly":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"type":"string"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"basic_blocks":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"start":{"type":"string"},"successors":{"items":{"type":"string"},"type":"array"}},"required":["start","end","successors"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"end":{"type":"string"},"start":{"type":"string"},"successors":{"items":{"type":"string"},"type":"array"}},"required":["start","end","successors"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"callees":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"callers":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"comments":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"kind":{"enum":["comment","inline"],"type":"string"},"text":{"type":"string"}},"required":["address","kind","text"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"kind":{"enum":["comment","inline"],"type":"string"},"text":{"type":"string"}},"required":["address","kind","text"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"incoming_references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"instruction_scan":{"additionalProperties":false,"properties":{"scanned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["scanned","truncated"],"type":"object"},"limitations":{"default":[],"items":{"type":"string"},"type":"array"},"native_api":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"minLength":1,"type":"string"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"}},"required":["available","reason","residual_unknowns"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"calling_convention":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-and-stack-variables","compiler-generated-control-flow","pointer-arithmetic","pseudocode"],"type":"string"},"type":"array"},"jump_tables":{"items":{"additionalProperties":false,"properties":{"data_sources":{"items":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"confidence":{"enum":["low","medium","high"],"type":"string"},"entry_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"entry_size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"provenance":{"enum":["ghidra-decompiler-load-table","ghidra-dispatch-block-data-reference"],"type":"string"}},"required":["address","provenance","entry_size_bytes","entry_count","confidence","evidence"],"type":"object"},"type":"array"},"data_sources_truncated":{"type":"boolean"},"dispatch_address":{"minLength":1,"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"mappings":{"items":{"additionalProperties":false,"properties":{"case_value":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"confidence":{"enum":["low","medium","high"],"type":"string"},"data_addresses":{"items":{"minLength":1,"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"target_address":{"minLength":1,"type":"string"}},"required":["case_value","target_address","data_addresses","confidence","evidence"],"type":"object"},"type":"array"},"mappings_truncated":{"type":"boolean"}},"required":["dispatch_address","data_sources","data_sources_truncated","mappings","mappings_truncated","limitations"],"type":"object"},"type":"array"},"jump_tables_truncated":{"type":"boolean"},"limitations":{"items":{"type":"string"},"type":"array"},"parameters":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"role":{"const":"parameter","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"type":"array"},"parameters_truncated":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"pseudocode":{"additionalProperties":false,"properties":{"classification":{"const":"decompiler-generated-non-source","type":"string"},"compilable":{"const":false,"type":"boolean"}},"required":["classification","compilable"],"type":"object"},"return_type":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"type":"null"},"ordinal":{"type":"null"},"role":{"const":"return","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"signature_source":{"minLength":1,"type":"string"}},"required":["available","provenance","signature_source","calling_convention","return_type","parameters","parameters_truncated","jump_tables","jump_tables_truncated","pseudocode","decompiler_artifacts","limitations"],"type":"object"}]},{"type":"null"}],"default":null},"outgoing_references":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"kind":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["available","reason"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"call":{"type":"boolean"},"computed":{"type":"boolean"},"conditional":{"type":"boolean"},"data":{"type":"boolean"},"external":{"type":"boolean"},"flow":{"type":"boolean"},"indirect":{"type":"boolean"},"jump":{"type":"boolean"},"operand_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"primary":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"read":{"type":"boolean"},"terminal":{"type":"boolean"},"type":{"type":"string"},"write":{"type":"boolean"}},"required":["available","provenance","type","flow","call","jump","data","read","write","indirect","computed","conditional","terminal","primary","operand_index","external"],"type":"object"}]},"source_address":{"type":"string"},"source_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]},"target_address":{"type":"string"},"target_procedure":{"anyOf":[{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},{"type":"null"}]}},"required":["source_address","target_address","source_procedure","target_procedure","kind"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"locals":{"items":{"additionalProperties":false,"properties":{"description":{"type":"string"},"provenance":{"minLength":1,"type":"string"}},"required":["description","provenance"],"type":"object"},"type":"array"},"name":{"type":"string"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","classification","signature","locals"],"type":"object"},"pseudocode":{"oneOf":[{"additionalProperties":false,"properties":{"next_offset":{"type":"null"},"returned_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"total_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"const":false,"type":"boolean"}},"required":["text","total_chars","returned_chars","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"total_chars":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"const":true,"type":"boolean"}},"required":["text","total_chars","returned_chars","truncated","next_offset"],"type":"object"}]},"referenced_names":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]},"referenced_strings":{"oneOf":[{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"type":"null"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":false,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"},{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"source_address":{"type":"string"},"value":{"type":"string"}},"required":["address","value","source_address"],"type":"object"},"type":"array"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"truncated":{"const":true,"type":"boolean"}},"required":["items","total","returned","truncated","next_offset"],"type":"object"}]}},"required":["procedure","pseudocode","assembly","comments","callers","callees","incoming_references","outgoing_references","referenced_strings","referenced_names","basic_blocks","instruction_scan","native_api","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Function"},{"analysisOperation":"inspect_native_api","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Reconstruct one native function boundary through inspectable substeps. Returns structured inferred return/parameter types with confidence and evidence, jump-table dispatch/data/target mappings, explicit decompiler-artifact labels, unsupported branches, and residual unknowns.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main"}],"properties":{"max_instructions":{"default":500,"description":"Maximum permitted instructions for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_pseudocode_chars":{"default":20000,"description":"Maximum permitted pseudocode chars for this operation.","maximum":100000,"minimum":1,"type":"integer"},"procedure":{"description":"A procedure name or address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record unsupported native API branches durably","type":"boolean"}},"required":["procedure"],"type":"object"},"kind":"enhanced","name":"inspect_native_api","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"boundary":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"reason":{"minLength":1,"type":"string"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"minItems":1,"type":"array"}},"required":["available","reason","residual_unknowns"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"calling_convention":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-and-stack-variables","compiler-generated-control-flow","pointer-arithmetic","pseudocode"],"type":"string"},"type":"array"},"jump_tables":{"items":{"additionalProperties":false,"properties":{"data_sources":{"items":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"confidence":{"enum":["low","medium","high"],"type":"string"},"entry_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"entry_size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"provenance":{"enum":["ghidra-decompiler-load-table","ghidra-dispatch-block-data-reference"],"type":"string"}},"required":["address","provenance","entry_size_bytes","entry_count","confidence","evidence"],"type":"object"},"type":"array"},"data_sources_truncated":{"type":"boolean"},"dispatch_address":{"minLength":1,"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"mappings":{"items":{"additionalProperties":false,"properties":{"case_value":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"confidence":{"enum":["low","medium","high"],"type":"string"},"data_addresses":{"items":{"minLength":1,"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"target_address":{"minLength":1,"type":"string"}},"required":["case_value","target_address","data_addresses","confidence","evidence"],"type":"object"},"type":"array"},"mappings_truncated":{"type":"boolean"}},"required":["dispatch_address","data_sources","data_sources_truncated","mappings","mappings_truncated","limitations"],"type":"object"},"type":"array"},"jump_tables_truncated":{"type":"boolean"},"limitations":{"items":{"type":"string"},"type":"array"},"parameters":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"role":{"const":"parameter","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"type":"array"},"parameters_truncated":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"pseudocode":{"additionalProperties":false,"properties":{"classification":{"const":"decompiler-generated-non-source","type":"string"},"compilable":{"const":false,"type":"boolean"}},"required":["classification","compilable"],"type":"object"},"return_type":{"additionalProperties":false,"properties":{"confidence":{"enum":["low","medium","high"],"type":"string"},"data_type":{"minLength":1,"type":"string"},"decompiler_artifacts":{"items":{"enum":["recovered-signature","register-or-stack-storage","compiler-generated-variable"],"type":"string"},"type":"array"},"evidence":{"items":{"additionalProperties":false,"properties":{"detail":{"minLength":1,"type":"string"},"kind":{"enum":["signature-source","decompiler-type","type-lock","calling-convention","jump-table"],"type":"string"},"source":{"minLength":1,"type":"string"}},"required":["kind","source","detail"],"type":"object"},"minItems":1,"type":"array"},"name":{"type":"null"},"ordinal":{"type":"null"},"role":{"const":"return","type":"string"},"size_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"storage":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["ordinal","name","data_type","size_bytes","storage","confidence","evidence","decompiler_artifacts","role"],"type":"object"},"signature_source":{"minLength":1,"type":"string"}},"required":["available","provenance","signature_source","calling_convention","return_type","parameters","parameters_truncated","jump_tables","jump_tables_truncated","pseudocode","decompiler_artifacts","limitations"],"type":"object"}]},"procedure":{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["address","name"],"type":"object"},"residual_unknowns":{"items":{"minLength":1,"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"substeps":{"items":{"additionalProperties":false,"properties":{"observations":{"items":{"minLength":1,"type":"string"},"type":"array"},"operation":{"enum":["analyze_function","project_native_api_boundary","preserve_residual_unknowns"],"type":"string"},"status":{"enum":["completed","unsupported"],"type":"string"}},"required":["operation","status","observations"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"unsupported_branches":{"items":{"minLength":1,"type":"string"},"type":"array"}},"required":["schema_version","procedure","boundary","substeps","unsupported_branches","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Native Api"},{"analysisOperation":"trace_feature","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a bounded literal feature query through matching strings and procedures, xrefs, and truthful containing-procedure resolution. Returns the operation budget, truncation, and residual unknowns; unknown_registry_approved: true records them durably without inferring reference kinds.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"case_sensitive":false,"limit":20,"max_operations":20,"query":"license"}],"properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"limit":{"default":20,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_operations":{"default":20,"description":"Maximum permitted operations for this operation.","maximum":100,"minimum":1,"type":"integer"},"query":{"description":"Non-empty feature or text query to investigate.","minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["query"],"type":"object"},"kind":"enhanced","name":"trace_feature","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"matches":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"type":{"enum":["string","procedure"],"type":"string"},"value":{"type":"string"}},"required":["type","address","value"],"type":"object"},"type":"array"},"operation_budget":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query":{"type":"string"},"references":{"items":{"additionalProperties":false,"properties":{"containing_procedure":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["target_address","source_address","containing_procedure"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"search_mode":{"const":"literal","type":"string"},"truncated":{"type":"boolean"}},"required":["query","search_mode","operations_used","operation_budget","matches","references","truncated","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Feature"},{"analysisOperation":"find_code_for_string","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Resolve one literal string query to bounded analyzed string entries, xrefs, and truthful containing-procedure candidates. Returns an Evidence ID, exact operation budget, truncation, and residual unknowns; it never infers reference kinds or runtime reachability.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"case_sensitive":false,"limit":20,"max_operations":20,"query":"authorization failed"}],"properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"limit":{"default":20,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_operations":{"default":20,"description":"Maximum permitted operations for this operation.","maximum":100,"minimum":1,"type":"integer"},"query":{"description":"Non-empty feature or text query to investigate.","minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["query"],"type":"object"},"kind":"enhanced","name":"find_code_for_string","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"matches":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"type":{"enum":["string","procedure"],"type":"string"},"value":{"type":"string"}},"required":["type","address","value"],"type":"object"},"type":"array"},"operation_budget":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query":{"type":"string"},"references":{"items":{"additionalProperties":false,"properties":{"containing_procedure":{"oneOf":[{"additionalProperties":false,"properties":{"found":{"const":true,"type":"boolean"},"procedure":{"additionalProperties":false,"properties":{"address":{"type":"string"},"classification":{"anyOf":[{"additionalProperties":false,"properties":{"external":{"type":"boolean"},"provenance":{"minLength":1,"type":"string"},"thunk":{"type":"boolean"},"thunk_target":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["external","thunk","thunk_target","provenance"],"type":"object"},{"type":"null"}],"default":null},"name":{"type":"string"}},"required":["address","name","classification"],"type":"object"},"query_address":{"type":"string"}},"required":["query_address","found","procedure"],"type":"object"},{"additionalProperties":false,"properties":{"found":{"const":false,"type":"boolean"},"procedure":{"type":"null"},"query_address":{"type":"string"},"reason":{"enum":["outside_segments","not_in_procedure"],"type":"string"}},"required":["query_address","found","procedure","reason"],"type":"object"}]},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["target_address","source_address","containing_procedure"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"search_mode":{"const":"literal","type":"string"},"truncated":{"type":"boolean"}},"required":["query","search_mode","operations_used","operation_budget","matches","references","truncated","residual_unknowns"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Find Code For String"},{"analysisOperation":"trace_call_path","annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a deterministic bounded caller or callee path from one exact procedure address, optionally stopping at a goal. Returns visited nodes, direct-call edges, one shortest traversal path, failures, frontier, consumed limits, an Evidence ID, and explicit residual unknowns without claiming unresolved indirect calls are absent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"direction":"forward","goal":"0x1100","max_depth":5,"max_nodes":100,"max_operations":100,"start":"0x1000"}],"properties":{"direction":{"default":"forward","description":"Direction in which to traverse or compare relationships.","enum":["forward","backward"],"type":"string"},"goal":{"description":"An optional provider-normalized destination address","type":"string"},"max_depth":{"default":5,"description":"Maximum permitted depth for this operation.","maximum":10,"minimum":1,"type":"integer"},"max_nodes":{"default":100,"description":"Maximum permitted nodes for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_operations":{"default":100,"description":"Maximum permitted operations for this operation.","maximum":500,"minimum":1,"type":"integer"},"start":{"description":"A provider-normalized procedure address","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residuals durably","type":"boolean"}},"required":["start"],"type":"object"},"kind":"enhanced","name":"trace_call_path","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"direction":{"enum":["forward","backward"],"type":"string"},"edges":{"items":{"additionalProperties":false,"properties":{"discovery_depth":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source_address":{"type":"string"},"target_address":{"type":"string"}},"required":["source_address","target_address","discovery_depth"],"type":"object"},"type":"array"},"failures":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"error":{"oneOf":[{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"invalid_request","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"unreadable_output","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"capability_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"provider_timeout","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cancelled","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_integrity_mismatch","type":"string"},"details":{"additionalProperties":false,"properties":{"calculated_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"declared_sha256":{"anyOf":[{"type":"string"},{"type":"null"}]},"logical_path":{"type":"string"},"unpacked":{"type":"boolean"}},"required":["logical_path","declared_sha256","calculated_sha256","unpacked"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation","details"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"artifact_operation_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"evidence_integrity_mismatch","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"truncated","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"permission_required","type":"string"},"details":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"ceiling":{"anyOf":[{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"},{"type":"null"}]},"missing":{"additionalProperties":false,"properties":{"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"const":true,"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"type":"object"},"requested":{"additionalProperties":false,"properties":{"capability":{"type":"string"},"environment_names":{"items":{"type":"string"},"type":"array"},"executables":{"items":{"type":"string"},"type":"array"},"mount":{"type":"boolean"},"network":{"enum":["none","loopback","external"],"type":"string"},"origins":{"items":{"type":"string"},"type":"array"},"roots":{"items":{"type":"string"},"type":"array"}},"required":["capability","roots","executables","environment_names","network","mount"],"type":"object"}},"required":["capability","requested","missing","ceiling"],"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"process_capture_failed","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"cleanup_incomplete","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"revision_conflict","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"outside_approved_root","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"configuration_invalid","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"target_unavailable","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"execution_failure","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"category":{"enum":["invalid_input","permission_required","unsupported_provider","integrity_mismatch","truncated","cancelled","timeout","unavailable","execution_failure"],"type":"string"},"code":{"const":"plan_stale","type":"string"},"details":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"message":{"minLength":1,"type":"string"},"remediation":{"additionalProperties":false,"properties":{"action":{"minLength":1,"type":"string"},"elicitation_supported":{"type":"boolean"},"restart_required":{"type":"boolean"}},"required":["action","restart_required"],"type":"object"},"retryable":{"type":"boolean"}},"required":["code","category","message","retryable","remediation"],"type":"object"}]}},"required":["address","error"],"type":"object"},"type":"array"},"frontier":{"items":{"type":"string"},"type":"array"},"goal":{"anyOf":[{"type":"string"},{"type":"null"}]},"goal_status":{"enum":["not_requested","reached","not_reached"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_depth":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_nodes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_operations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"nodes_visited":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"operations_used":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["max_depth","max_nodes","max_operations","nodes_visited","operations_used"],"type":"object"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"depth":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["address","depth"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"type":"string"},"type":"array"},"start":{"type":"string"},"traversal_path":{"items":{"type":"string"},"type":"array"},"truncated":{"type":"boolean"}},"required":["start","goal","direction","goal_status","nodes","edges","traversal_path","failures","frontier","limits","truncated","residual_unknowns","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Call Path"},{"analysisOperation":"inspect_macho","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Inspect Mach-O slices, load commands, imports, exports, dependencies, build metadata, segments, sections, permissions, and exact command provenance without launching Hopper.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"inspect_macho","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"architectures":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"cpu_subtype":{"anyOf":[{"type":"string"},{"type":"null"}]},"cpu_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"name":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","cpu_type","cpu_subtype","file_offset","size","alignment"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"build_metadata":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"minimum_os":{"anyOf":[{"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"type":"string"},{"type":"null"}]},"sdk":{"anyOf":[{"type":"string"},{"type":"null"}]},"tools":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},"type":"array"}},"required":["platform","minimum_os","sdk","tools"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"dependencies":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"compatibility_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"current_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"type":"string"},"path":{"type":"string"}},"required":["path","kind","current_version","compatibility_version"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"endian":{"anyOf":[{"enum":["little","big"],"type":"string"},{"type":"null"}]},"entrypoints":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"file_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["file_offset"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"exports":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"reexport":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"weak":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","address","weak","reexport","source"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"file_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"items":{"type":"string"},"type":"array"},"format":{"const":"mach-o","type":"string"},"imports":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"reexport":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"source":{"anyOf":[{"type":"string"},{"type":"null"}]},"weak":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["name","address","weak","reexport","source"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"load_commands":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"fields":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"null"}]},"propertyNames":{"type":"string"},"type":"object"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"type":"string"}},"required":["index","kind","file_offset","fields"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"segments":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"file_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"initial_permissions":{"additionalProperties":false,"properties":{"execute":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"raw":{"anyOf":[{"type":"string"},{"type":"null"}]},"read":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"write":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read","write","execute","raw"],"type":"object"},"maximum_permissions":{"additionalProperties":false,"properties":{"execute":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"raw":{"anyOf":[{"type":"string"},{"type":"null"}]},"read":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"write":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read","write","execute","raw"],"type":"object"},"name":{"type":"string"},"sections":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"flags":{"items":{"type":"string"},"type":"array"},"name":{"type":"string"},"segment":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["segment","name","address","size","file_offset","alignment","flags"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"vm_address":{"anyOf":[{"pattern":"^0x[a-fA-F0-9]+$","type":"string"},{"type":"null"}]},"vm_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","vm_address","vm_size","file_offset","file_size","maximum_permissions","initial_permissions","sections"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"uuid":{"anyOf":[{"type":"string"},{"type":"null"}]},"word_size":{"anyOf":[{"anyOf":[{"const":32,"type":"number"},{"const":64,"type":"number"}]},{"type":"null"}]}},"required":["format","endian","word_size","file_type","flags","uuid","entrypoints","architectures","build_metadata","load_commands","dependencies","imports","exports","segments","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Macho"},{"analysisOperation":"inspect_signature","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Inspect the active artifact\'s code-signing identity, hashes, authorities, requirements, entitlements, hardened-runtime state, and bounded command provenance.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"inspect_signature","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"authorities":{"items":{"type":"string"},"type":"array"},"cdhashes":{"items":{"type":"string"},"type":"array"},"designated_requirement":{"anyOf":[{"type":"string"},{"type":"null"}]},"entitlements":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"format":{"anyOf":[{"type":"string"},{"type":"null"}]},"hardened_runtime":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"hash_algorithms":{"items":{"type":"string"},"type":"array"},"identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"signed":{"type":"boolean"},"team_identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"timestamp":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["signed","identifier","team_identifier","format","cdhashes","hash_algorithms","authorities","designated_requirement","entitlements","timestamp","hardened_runtime","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Signature"},{"analysisOperation":"inspect_plist","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Parse a plist at a bounded relative path beneath the active artifact container. Symlink and traversal escapes are rejected; output is normalized JSON rather than plutil text.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"relative_path":"Contents/Info.plist"}],"properties":{"relative_path":{"default":"Contents/Info.plist","description":"Local filesystem path for relative.","maxLength":1024,"minLength":1,"type":"string"}},"type":"object"},"kind":"native-provider","name":"inspect_plist","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"bundle":{"additionalProperties":false,"properties":{"executable":{"anyOf":[{"type":"string"},{"type":"null"}]},"identifier":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"short_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["identifier","executable","name","version","short_version"],"type":"object"},"format":{"enum":["xml","binary","json","unknown"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"source_path":{"type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["format","value","bundle","source_path","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Plist"},{"analysisOperation":"list_architectures","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List thin or universal Mach-O slices with offsets, sizes, alignment, explicit coverage, and bounded native-tool provenance.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{}],"properties":{},"type":"object"},"kind":"native-provider","name":"list_architectures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"architectures":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"alignment":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"cpu_subtype":{"anyOf":[{"type":"string"},{"type":"null"}]},"cpu_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"name":{"type":"string"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["name","cpu_type","cpu_subtype","file_offset","size","alignment"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"total":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["items","total","exhaustive","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"}},"required":["architectures","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Architectures"},{"analysisOperation":"demangle_swift","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Demangle an ordered bounded batch of Swift symbols without requiring Hopper. Each input returns demangled, unchanged, or invalid status.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"symbols":["$s4Test3fooyyF"]}],"properties":{"symbols":{"description":"Ordered bounded Swift symbols to demangle.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":500,"minItems":1,"type":"array"}},"required":["symbols"],"type":"object"},"kind":"native-provider","name":"demangle_swift","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"limitations":{"items":{"type":"string"},"type":"array"},"provenance":{"items":{"additionalProperties":false,"properties":{"command":{"items":{"type":"string"},"type":"array"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"signal":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["code","signal"],"type":"object"},"stderr_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stderr_truncated":{"type":"boolean"},"stdout_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stdout_truncated":{"type":"boolean"},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"version_reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","command","tool_version","version_reason","executable_sha256","exit","stdout_bytes","stderr_bytes","stdout_truncated","stderr_truncated"],"type":"object"},"type":"array"},"symbols":{"items":{"additionalProperties":false,"properties":{"input":{"type":"string"},"output":{"type":"string"},"status":{"enum":["demangled","unchanged","invalid"],"type":"string"}},"required":["input","output","status"],"type":"object"},"type":"array"}},"required":["symbols","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Demangle Swift"},{"analysisOperation":"inventory_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"After open_binary binds a local archive, application package, or other artifact—or when one is already active—inventory it as a deterministic, content-addressed artifact graph. This tool accepts no path; in a target-free session open the target first. Returns bounded node and edge pages without extracting or mounting by default.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"edge_limit":{"default":100,"description":"Maximum number of edge entries to return.","maximum":500,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"},"node_limit":{"default":100,"description":"Maximum number of node entries to return.","maximum":500,"minimum":1,"type":"integer"},"node_offset":{"default":0,"description":"Zero-based index of the first node to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"occurrence_limit":{"default":100,"description":"Maximum number of occurrence entries to return.","maximum":500,"minimum":1,"type":"integer"},"occurrence_offset":{"default":0,"description":"Zero-based index of the first occurrence to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},{"properties":{"edge_limit":{"default":100,"description":"Maximum number of edge entries to return.","maximum":500,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"},"node_limit":{"default":100,"description":"Maximum number of node entries to return.","maximum":500,"minimum":1,"type":"integer"},"node_offset":{"default":0,"description":"Zero-based index of the first node to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"occurrence_limit":{"default":100,"description":"Maximum number of occurrence entries to return.","maximum":500,"minimum":1,"type":"integer"},"occurrence_offset":{"default":0,"description":"Zero-based index of the first occurrence to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["integrity_policy","integrity_continue_approved"],"type":"object"}],"examples":[{}],"type":"object"},"kind":"artifact-provider","name":"inventory_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"edges":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"child_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"edge_id":{"pattern":"^edge_[a-f0-9]{64}$","type":"string"},"logical_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"ordinal":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"producer":{"anyOf":[{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},{"type":"null"}]},"relation":{"enum":["contains","extracts","slice-of","embeds","loads","maps-source","derived-from"],"type":"string"}},"required":["edge_id","ordinal","parent_artifact_id","child_artifact_id","relation","occurrence_id","logical_path","producer"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"integrity_contradictions":{"default":[],"items":{"additionalProperties":false,"properties":{"contradiction_id":{"pattern":"^ic_[a-f0-9]{64}$","type":"string"},"declared_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"entry_kind":{"enum":["file","slice"],"type":"string"},"limitations":{"items":{"type":"string"},"minItems":1,"type":"array"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"observed_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"parent_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"provenance":{"const":"container-integrity-metadata-versus-observed-bytes","type":"string"},"trust":{"const":"observed-untrusted","type":"string"},"unpacked":{"type":"boolean"}},"required":["contradiction_id","occurrence_id","parent_artifact_id","logical_path","declared_sha256","observed_sha256","entry_kind","unpacked","trust","provenance","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_compression_ratio":{"maximum":100000,"minimum":1,"type":"number"},"max_depth":{"maximum":100,"minimum":0,"type":"integer"},"max_entries":{"maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["max_entries","max_total_bytes","max_entry_bytes","max_compression_ratio","max_depth","max_path_bytes"],"type":"object"},"manifest":{"additionalProperties":false,"properties":{"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","manifest_id","root_artifact_id","root_sha256","root_format","graph_sha256","node_count","occurrence_count","edge_count"],"type":"object"},"nodes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"content_state":{"enum":["materialized","embedded","virtual"],"type":"string"},"executable":{"type":"boolean"},"format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"kind":{"enum":["container","executable","dynamic-library","framework","native-addon","javascript","source-map","plist","entitlements","resource","universal-slice","package-metadata","unknown"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"media_type":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["artifact_id","kind","format","sha256","size","media_type","architecture","executable","content_state","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"occurrences":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"compressed_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"declared_size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"encrypted":{"type":"boolean"},"entry_kind":{"enum":["file","directory","symlink","slice"],"type":"string"},"executable":{"type":"boolean"},"hash_status":{"enum":["verified","mismatched","not-hashed-limit","unavailable"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"parent_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"source_location":{"anyOf":[{"additionalProperties":false,"properties":{"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offset","length"],"type":"object"},{"type":"null"}]}},"required":["occurrence_id","artifact_id","parent_occurrence_id","logical_path","entry_kind","declared_size","compressed_size","executable","encrypted","hash_status","source_location","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"provenance":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},"maxItems":256,"type":"array"}},"required":["manifest","nodes","occurrences","edges","limits","provenance","integrity_contradictions","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inventory Artifact"},{"analysisOperation":"inspect_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"After open_binary binds a local archive, application package, or other artifact—or when one is already active—inspect it through one bounded, cancellable inventory substep. This tool accepts no path; in a target-free session open the target first. Returns the full substep Evidence and its ID, observations, derived relationships, hypotheses, contradictions, unexplored branches, limitations, and format-specific next probes. Any substep failure fails the whole call.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_hypotheses":{"default":20,"description":"Maximum permitted hypotheses for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_next_probes":{"default":20,"description":"Maximum permitted next probes for this operation.","maximum":50,"minimum":1,"type":"integer"},"max_observations":{"default":100,"description":"Maximum permitted observations for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_relationships":{"default":100,"description":"Maximum permitted relationships for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_substeps":{"const":1,"default":1,"description":"Maximum permitted substeps for this operation.","type":"number"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_unexplored_branches":{"default":20,"description":"Maximum permitted unexplored branches for this operation.","maximum":100,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"}},"type":"object"},{"properties":{"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_hypotheses":{"default":20,"description":"Maximum permitted hypotheses for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_next_probes":{"default":20,"description":"Maximum permitted next probes for this operation.","maximum":50,"minimum":1,"type":"integer"},"max_observations":{"default":100,"description":"Maximum permitted observations for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_relationships":{"default":100,"description":"Maximum permitted relationships for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_substeps":{"const":1,"default":1,"description":"Maximum permitted substeps for this operation.","type":"number"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_unexplored_branches":{"default":20,"description":"Maximum permitted unexplored branches for this operation.","maximum":100,"minimum":1,"type":"integer"},"native_mount_approved":{"default":false,"description":"Explicit operator approval for native mount.","type":"boolean"}},"required":["integrity_policy","integrity_continue_approved"],"type":"object"}],"examples":[{}],"type":"object"},"kind":"artifact-provider","name":"inspect_artifact","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"contradictions":{"items":{"additionalProperties":false,"properties":{"contradiction_id":{"pattern":"^aic_[a-f0-9]{64}$","type":"string"},"declared_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"observed_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"statement":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["contradiction_id","statement","occurrence_id","declared_sha256","observed_sha256","evidence_id"],"type":"object"},"maxItems":100,"type":"array"},"coverage":{"additionalProperties":false,"properties":{"hypotheses_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hypotheses_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_probes_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_probes_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observations_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observations_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relationships_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relationships_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-substeps","partial","truncated"],"type":"string"},"substeps_completed":{"const":1,"type":"number"},"unexplored_branches_omitted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unexplored_branches_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","substeps_completed","observations_retained","observations_omitted","relationships_retained","relationships_omitted","hypotheses_retained","hypotheses_omitted","unexplored_branches_retained","unexplored_branches_omitted","next_probes_retained","next_probes_omitted"],"type":"object"},"derived_relationships":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"logical_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"occurrence_id":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"relation":{"enum":["contains","extracts","slice-of","embeds","loads","maps-source","derived-from"],"type":"string"},"relationship_id":{"pattern":"^air_[a-f0-9]{64}$","type":"string"},"source_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"target_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"}},"required":["relationship_id","relation","source_artifact_id","target_artifact_id","occurrence_id","logical_path","evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"hypotheses":{"items":{"additionalProperties":false,"properties":{"basis_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":8,"minItems":1,"type":"array"},"confidence":{"enum":["medium","low"],"type":"string"},"hypothesis_id":{"pattern":"^aih_[a-f0-9]{64}$","type":"string"},"limitation":{"maxLength":4096,"minLength":1,"type":"string"},"statement":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["hypothesis_id","statement","confidence","basis_evidence_ids","limitation"],"type":"object"},"maxItems":100,"type":"array"},"inspection_id":{"pattern":"^ai_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"next_probes":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["artifact-bytes","managed-static-analysis","native-analysis-provider","ast-static-analysis"],"type":"string"},"operation":{"maxLength":128,"minLength":1,"type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["operation","rationale","authority"],"type":"object"},"maxItems":50,"type":"array"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["root-manifest","artifact","occurrence","integrity"],"type":"string"},"observation_id":{"pattern":"^aio_[a-f0-9]{64}$","type":"string"},"subject":{"maxLength":4096,"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["observation_id","kind","subject","value","evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"schema_version":{"const":1,"type":"number"},"subject":{"additionalProperties":false,"properties":{"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"maxLength":128,"minLength":1,"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["manifest_id","root_artifact_id","root_sha256","root_format"],"type":"object"},"substeps":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"const":"inventory_artifact","type":"string"},"status":{"const":"completed","type":"string"},"substep_id":{"pattern":"^ais_[a-f0-9]{64}$","type":"string"}},"required":["substep_id","operation","status","evidence_id","evidence"],"type":"object"},"maxItems":1,"minItems":1,"type":"array"},"unexplored_branches":{"items":{"additionalProperties":false,"properties":{"branch_id":{"pattern":"^aib_[a-f0-9]{64}$","type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"next_probe":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"enum":["artifact-bytes","managed-static-analysis","native-analysis-provider","ast-static-analysis"],"type":"string"},"operation":{"maxLength":128,"minLength":1,"type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["operation","rationale","authority"],"type":"object"},{"type":"null"}]},"reason":{"enum":["page-limit","format-specific-analysis-required","unknown-format"],"type":"string"}},"required":["branch_id","reason","detail","next_probe","evidence_id"],"type":"object"},"maxItems":100,"type":"array"}},"required":["schema_version","inspection_id","subject","substeps","observations","derived_relationships","hypotheses","contradictions","unexplored_branches","next_probes","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Artifact"},{"analysisOperation":"extract_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Extract selected graph artifacts beneath an explicit output root. Requires approval, rejects traversal and symlink escapes, never overwrites, enforces bomb limits, and verifies cleanup.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"occurrence_ids":["occ_0000000000000000000000000000000000000000000000000000000000000000"],"output_root":"/tmp/rea-extracted"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_ids":{"description":"Value for occurrence ids.","items":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"output_root":{"description":"Approved canonical filesystem output root.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","output_root","occurrence_ids"],"type":"object"},"kind":"artifact-provider","name":"extract_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifacts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"bytes_written":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"created":{"type":"boolean"},"relative_path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["artifact_id","relative_path","sha256","bytes_written","created"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"cleanup":{"additionalProperties":false,"properties":{"attempted":{"type":"boolean"},"residual_paths":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":500,"type":"array"},"verified":{"type":"boolean"}},"required":["attempted","verified","residual_paths"],"type":"object"},"containment_verified":{"type":"boolean"},"extraction_manifest":{"additionalProperties":false,"properties":{"extraction_id":{"pattern":"^aex_[a-f0-9]{64}$","type":"string"},"files_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_root_alias":{"const":"$OUTPUT_ROOT","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_occurrence_ids":{"items":{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"source_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","extraction_id","source_manifest_id","selected_occurrence_ids","files_sha256","output_root_alias"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_compression_ratio":{"maximum":100000,"minimum":1,"type":"number"},"max_depth":{"maximum":100,"minimum":0,"type":"integer"},"max_entries":{"maximum":1000000,"minimum":1,"type":"integer"},"max_entry_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["max_entries","max_total_bytes","max_entry_bytes","max_compression_ratio","max_depth","max_path_bytes"],"type":"object"},"manifest":{"additionalProperties":false,"properties":{"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"occurrence_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"root_artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"root_format":{"enum":["dmg","zip","pkg","asar","javascript-bundle","source-map","mach-o-universal","mach-o","elf","pe","hopper","analysis-database","ipa","apk","msix","appx","plist","entitlements","directory","file","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","manifest_id","root_artifact_id","root_sha256","root_format","graph_sha256","node_count","occurrence_count","edge_count"],"type":"object"},"output_root":{"minLength":1,"type":"string"},"provenance":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"maxLength":4096,"type":"string"},"maxItems":1024,"type":"array"},"effects":{"items":{"enum":["read","write","mount"],"type":"string"},"maxItems":3,"type":"array"},"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"tool":{"minLength":1,"type":"string"},"tool_version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["tool","arguments","tool_version","executable_sha256","exit_code","effects"],"type":"object"},"maxItems":256,"type":"array"}},"required":["manifest","extraction_manifest","output_root","artifacts","containment_verified","cleanup","limits","provenance","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Extract Artifact"},{"analysisOperation":"inspect_managed_artifact","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Open and classify an explicit managed PE/CLI path, or inspect the active managed target, then inventory exact assembly/module identity, target framework evidence, references, resources, and custom attributes without loading or executing target code. Returns bounded pages and explicit partial or malformed coverage.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"path":"/tmp/Example.dll"}],"properties":{"attribute_limit":{"default":100,"description":"Maximum number of attribute entries to return.","maximum":500,"minimum":1,"type":"integer"},"attribute_offset":{"default":0,"description":"Zero-based index of the first attribute to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"path":{"description":"Managed PE/CLI path to open before inspection; omit only when a managed target is already active","minLength":1,"type":"string"},"reference_limit":{"default":100,"description":"Maximum number of reference entries to return.","maximum":500,"minimum":1,"type":"integer"},"reference_offset":{"default":0,"description":"Zero-based index of the first reference to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"resource_limit":{"default":100,"description":"Maximum number of resource entries to return.","maximum":500,"minimum":1,"type":"integer"},"resource_offset":{"default":0,"description":"Zero-based index of the first resource to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_artifact","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"assembly":{"anyOf":[{"additionalProperties":false,"properties":{"culture":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"hash_algorithm":{"maximum":4294967295,"minimum":0,"type":"integer"},"name":{"type":"string"},"public_key":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["none","public-key","public-key-token"],"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"token":{"anyOf":[{"pattern":"^[a-f0-9]{16}$","type":"string"},{"type":"null"}]}},"required":["kind","byte_length","sha256","token"],"type":"object"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"version":{"pattern":"^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$","type":"string"}},"required":["name","version","culture","flags","hash_algorithm","public_key","token","row_offset"],"type":"object"},{"type":"null"}]},"attributes":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"constructor_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"decoded_fixed_string":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"type_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["parent_token","constructor_token","type_name","value_length","value_sha256","decoded_fixed_string","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"classification":{"additionalProperties":false,"properties":{"container":{"const":"pe","type":"string"},"evidence":{"items":{"additionalProperties":false,"properties":{"code":{"minLength":1,"type":"string"},"detail":{"minLength":1,"type":"string"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["code","detail","file_offset"],"type":"object"},"type":"array"},"implementation":{"enum":["cil","cil-and-ready-to-run","cpp-cli-mixed","metadata-only","not-managed","unknown"],"type":"string"},"managed_architecture":{"enum":["anycpu","anycpu-prefer-32","x86","x86_64","arm","arm64","unknown"],"type":"string"},"runtime_family":{"enum":["dotnet-framework","modern-dotnet","unity-mono","mixed-clr-native","unknown"],"type":"string"},"status":{"enum":["managed","not-managed","malformed"],"type":"string"}},"required":["status","container","runtime_family","implementation","managed_architecture","evidence"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"stream_names":{"items":{"type":"string"},"type":"array"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","stream_names","table_row_counts"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"pe":{"additionalProperties":false,"properties":{"architecture":{"enum":["x86","x86_64","arm","arm64"],"type":"string"},"characteristics":{"maximum":65535,"minimum":0,"type":"integer"},"cli":{"anyOf":[{"additionalProperties":false,"properties":{"entry_point":{"additionalProperties":false,"properties":{"kind":{"enum":["metadata-token","native-rva","none"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["kind","value"],"type":"object"},"flag_names":{"items":{"type":"string"},"type":"array"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"header_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"header_size":{"maximum":9007199254740991,"minimum":72,"type":"integer"},"managed_native_header_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"managed_native_header_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"metadata_rva":{"maximum":4294967295,"minimum":1,"type":"integer"},"metadata_size":{"maximum":4294967295,"minimum":1,"type":"integer"},"ready_to_run_signature":{"type":"boolean"},"resources_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"resources_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"runtime_version":{"type":"string"},"strong_name_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"strong_name_size":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["header_offset","header_size","runtime_version","flags","flag_names","entry_point","metadata_rva","metadata_size","resources_rva","resources_size","strong_name_rva","strong_name_size","managed_native_header_rva","managed_native_header_size","ready_to_run_signature"],"type":"object"},{"type":"null"}]},"machine":{"maximum":65535,"minimum":0,"type":"integer"},"machine_hex":{"pattern":"^0x[0-9a-f]{4}$","type":"string"},"optional_header":{"enum":["pe32","pe32-plus"],"type":"string"},"section_count":{"maximum":96,"minimum":1,"type":"integer"}},"required":["machine","machine_hex","architecture","optional_header","section_count","characteristics","cli"],"type":"object"},"references":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"culture":{"anyOf":[{"type":"string"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"hash_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hash_value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"public_key_or_token":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["none","public-key","public-key-token"],"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"token":{"anyOf":[{"pattern":"^[a-f0-9]{16}$","type":"string"},{"type":"null"}]}},"required":["kind","byte_length","sha256","token"],"type":"object"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"version":{"pattern":"^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$","type":"string"}},"required":["name","version","culture","flags","public_key_or_token","hash_value_sha256","hash_value_length","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"resources":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"data_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"data_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"declared_offset":{"maximum":4294967295,"minimum":0,"type":"integer"},"embedded":{"type":"boolean"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"implementation_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"visibility":{"enum":["public","private","unknown"],"type":"string"}},"required":["name","flags","visibility","implementation_token","embedded","declared_offset","data_length","data_sha256","token","row_offset"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"schema_version":{"const":1,"type":"number"},"target_frameworks":{"items":{"type":"string"},"type":"array"}},"required":["schema_version","artifact","pe","classification","metadata","module","assembly","target_frameworks","references","resources","attributes","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Artifact"},{"analysisOperation":"inspect_managed_members","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect bounded PE/CLI metadata members, signatures, raw CIL hashes, limited member-result-v1 decoded-instruction-tuple hashes, separately reported exception regions, call edges, and field-access anchors without loading or executing target code. Metadata tokens are reported as build-local coordinates bound to the artifact SHA-256 and MVID; the v1 tuple hash does not resolve them or fully commit control flow.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"edge_limit":100,"method_limit":25}],"properties":{"edge_limit":{"default":250,"description":"Maximum number of edge entries to return.","maximum":1000,"minimum":1,"type":"integer"},"edge_offset":{"default":0,"description":"Zero-based index of the first edge to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"field_limit":{"default":100,"description":"Maximum number of field entries to return.","maximum":500,"minimum":1,"type":"integer"},"field_offset":{"default":0,"description":"Zero-based index of the first field to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"instruction_anchor_limit":{"default":100,"description":"Maximum number of instruction anchor entries to return.","maximum":500,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_method_body_bytes":{"default":1048576,"description":"Maximum permitted method body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_method_instructions":{"default":10000,"description":"Maximum permitted method instructions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"member_ref_limit":{"default":100,"description":"Maximum number of member ref entries to return.","maximum":500,"minimum":1,"type":"integer"},"member_ref_offset":{"default":0,"description":"Zero-based index of the first member ref to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"method_limit":{"default":100,"description":"Maximum number of method entries to return.","maximum":500,"minimum":1,"type":"integer"},"method_offset":{"default":0,"description":"Zero-based index of the first method to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"type_limit":{"default":100,"description":"Maximum number of type entries to return.","maximum":500,"minimum":1,"type":"integer"},"type_offset":{"default":0,"description":"Zero-based index of the first type to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_members","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"call_edges":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"caller":{"anyOf":[{"type":"string"},{"type":"null"}]},"caller_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"opcode":{"type":"string"},"target_kind":{"enum":["method-def","member-ref","method-spec","unknown"],"type":"string"},"target_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"target_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["caller_token","caller","opcode","target_token","target_kind","target_name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"field_accesses":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"field_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"method":{"anyOf":[{"type":"string"},{"type":"null"}]},"method_token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"opcode":{"type":"string"}},"required":["method_token","method","opcode","field_token","field_name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"fields":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"declaring_type_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","declaring_type_token","declaring_type","name","flags","signature"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"identity_scope":{"additionalProperties":false,"properties":{"requires_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"requires_mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"token_identity":{"const":"build-local","type":"string"}},"required":["token_identity","requires_artifact_sha256","requires_mvid"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"member_refs":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"parent_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","parent_token","name","signature"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","table_row_counts"],"type":"object"},"methods":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"properties":{"anchors":{"items":{"additionalProperties":false,"properties":{"il_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"opcode":{"minLength":1,"type":"string"},"operand":{"anyOf":[{"type":"string"},{"type":"null"}]},"operand_kind":{"enum":["none","branch","constant","field","method","signature","string","switch","token","type","variable","unknown"],"type":"string"}},"required":["il_offset","opcode","operand_kind","operand"],"type":"object"},"type":"array"},"decoded_instruction_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exception_regions":{"items":{"additionalProperties":false,"properties":{"class_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"filter_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"handler_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"handler_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"try_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"try_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["flags","try_offset","try_length","handler_offset","handler_length","class_token","filter_offset"],"type":"object"},"type":"array"},"file_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"header_format":{"enum":["tiny","fat","none","unknown"],"type":"string"},"il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"SHA-256 of exactly the raw il_size CIL bytes; excludes the method header, locals signature, alignment, and extra sections"},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"init_locals":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"instruction_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"local_var_sig_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"max_stack":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Member-result-v1 SHA-256 of UTF-8 JSON [opcode, operand_kind, operand] tuples for a complete decode; retains build-local tokens, omits switch targets, and excludes headers, locals, and exception regions"},"opcode_counts":{"additionalProperties":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"status":{"enum":["present","partial","absent","malformed","too-large"],"type":"string"},"truncated_instructions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","header_format","rva","file_offset","max_stack","init_locals","local_var_sig_token","il_size","il_sha256","normalized_il_sha256","instruction_count","decoded_instruction_count","truncated_instructions","opcode_counts","anchors","exception_regions","issue"],"type":"object"},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"declaring_type_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"impl_flags":{"maximum":65535,"minimum":0,"type":"integer"},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"signature":{"additionalProperties":false,"properties":{"calling_convention":{"anyOf":[{"type":"string"},{"type":"null"}]},"field_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"generic_parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"issue":{"anyOf":[{"type":"string"},{"type":"null"}]},"kind":{"enum":["method","field","unknown"],"type":"string"},"parameter_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"parameter_types":{"items":{"type":"string"},"type":"array"},"parse_status":{"enum":["decoded","partial","unsupported","malformed"],"type":"string"},"raw_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"raw_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"return_type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["raw_length","raw_sha256","kind","parse_status","calling_convention","generic_parameter_count","parameter_count","return_type","parameter_types","field_type","issue"],"type":"object"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","declaring_type_token","declaring_type","name","rva","impl_flags","flags","signature","body"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"types":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"extends_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"field_list":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_row":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"last_row":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["first_row","last_row","count"],"type":"object"},"flags":{"maximum":4294967295,"minimum":0,"type":"integer"},"full_name":{"type":"string"},"method_list":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_row":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"last_row":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["first_row","last_row","count"],"type":"object"},"name":{"type":"string"},"namespace":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","namespace","name","full_name","flags","extends_token","field_list","method_list"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"}},"required":["schema_version","artifact","module","metadata","identity_scope","types","fields","methods","member_refs","call_edges","field_accesses","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Members"},{"analysisOperation":"inspect_managed_native_boundaries","annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect PE/CLI ModuleRef, ImplMap/PInvoke declarations, CLI native-header indicators, and non-IL method implementation flags without loading or executing target code. Results are managed declarations and degraded native-boundary observations, not verified native exports or addresses.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"implementation_limit":50,"import_limit":50}],"properties":{"implementation_limit":{"default":100,"description":"Maximum number of implementation entries to return.","maximum":500,"minimum":1,"type":"integer"},"implementation_offset":{"default":0,"description":"Zero-based index of the first implementation to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"import_limit":{"default":100,"description":"Maximum number of import entries to return.","maximum":500,"minimum":1,"type":"integer"},"import_offset":{"default":0,"description":"Zero-based index of the first import to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"max_file_bytes":{"default":268435456,"description":"Maximum permitted file bytes for this operation.","maximum":1073741824,"minimum":4096,"type":"integer"},"max_heap_item_bytes":{"default":1048576,"description":"Maximum permitted heap item bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_metadata_bytes":{"default":67108864,"description":"Maximum permitted metadata bytes for this operation.","maximum":268435456,"minimum":256,"type":"integer"},"max_table_rows":{"default":100000,"description":"Maximum permitted table rows for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"module_ref_limit":{"default":100,"description":"Maximum number of module ref entries to return.","maximum":500,"minimum":1,"type":"integer"},"module_ref_offset":{"default":0,"description":"Zero-based index of the first module ref to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"type":"object"},"kind":"managed-provider","name":"inspect_managed_native_boundaries","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"format":{"const":"pe","type":"string"},"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length","format"],"type":"object"},"cli_native":{"additionalProperties":false,"properties":{"il_only":{"type":"boolean"},"managed_native_header_rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"managed_native_header_size":{"maximum":4294967295,"minimum":0,"type":"integer"},"native_entry_point":{"type":"boolean"},"ready_to_run_signature":{"type":"boolean"},"requires_32bit":{"type":"boolean"},"strong_name_signed":{"type":"boolean"}},"required":["il_only","requires_32bit","strong_name_signed","native_entry_point","ready_to_run_signature","managed_native_header_rva","managed_native_header_size"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"issues":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["invalid-cli-header","invalid-directory","invalid-metadata-root","invalid-stream","missing-stream","invalid-tables","invalid-row","invalid-heap-index","invalid-string","invalid-blob","invalid-guid","invalid-resource","limit-exceeded"],"type":"string"},"detail":{"minLength":1,"type":"string"},"offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"scope":{"minLength":1,"type":"string"}},"required":["code","scope","offset","detail"],"type":"object"},"type":"array"},"state":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["state","issues"],"type":"object"},"identity_scope":{"additionalProperties":false,"properties":{"requires_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"requires_mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"token_identity":{"const":"build-local","type":"string"}},"required":["token_identity","requires_artifact_sha256","requires_mvid"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"table_row_counts":{"additionalProperties":{"maximum":4294967295,"minimum":0,"type":"integer"},"propertyNames":{"type":"string"},"type":"object"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["status","version","table_row_counts"],"type":"object"},"module":{"anyOf":[{"additionalProperties":false,"properties":{"enc_base_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"enc_id":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"generation":{"maximum":65535,"minimum":0,"type":"integer"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["name","generation","mvid","enc_id","enc_base_id","token","row_offset"],"type":"object"},{"type":"null"}]},"module_refs":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","name"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"native_implementations":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"body_interpretation":{"enum":["managed-cil","native-or-runtime","not-file-backed","unknown"],"type":"string"},"boundary_kind":{"enum":["pinvoke","native-body","runtime-provided","unmanaged-method","mixed-or-unknown"],"type":"string"},"code_type":{"enum":["il","native","optil","runtime","unknown"],"type":"string"},"flags":{"maximum":65535,"minimum":0,"type":"integer"},"impl_flags":{"maximum":65535,"minimum":0,"type":"integer"},"managed_kind":{"enum":["managed","unmanaged","unknown"],"type":"string"},"name":{"type":"string"},"pinvoke_declared":{"type":"boolean"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"rva":{"maximum":4294967295,"minimum":0,"type":"integer"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","row_offset","name","rva","flags","impl_flags","code_type","managed_kind","pinvoke_declared","boundary_kind","body_interpretation"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"pinvoke_imports":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"additionalProperties":false,"properties":{"best_fit":{"enum":["assembly-default","enabled","disabled","unknown"],"type":"string"},"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"import_name":{"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"import_scope_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"mapping_flags":{"maximum":65535,"minimum":0,"type":"integer"},"mapping_flags_hex":{"pattern":"^0x[0-9a-f]{4}$","type":"string"},"member_kind":{"enum":["method","field","unknown"],"type":"string"},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"row_offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"supports_last_error":{"type":"boolean"},"throw_on_unmappable_char":{"enum":["assembly-default","enabled","disabled","unknown"],"type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"verification":{"const":"managed-declaration-only","type":"string"}},"required":["token","row_offset","mapping_flags","mapping_flags_hex","member_token","member_kind","member_name","import_name","import_scope_token","import_scope_name","no_mangle","char_set","call_convention","supports_last_error","best_fit","throw_on_unmappable_char","verification"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","returned","dropped","complete"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"mixed_mode_or_native_header":{"type":"boolean"},"module_ref_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_implementation_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_import_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ready_to_run":{"type":"boolean"}},"required":["module_ref_count","pinvoke_import_count","native_implementation_count","ready_to_run","mixed_mode_or_native_header"],"type":"object"}},"required":["schema_version","artifact","module","metadata","identity_scope","cli_native","module_refs","pinvoke_imports","native_implementations","summary","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Managed Native Boundaries"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two authenticated inspect_managed_members Evidence records using unique-only decoded-CIL-v1/signature and structural method-shape tiers. Names are reported as observations but are not used as a matching basis; metadata tokens remain build-local coordinates bound to each artifact SHA-256 and MVID, and the v1 tuple digest does not itself remap them.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_id":"ev_45a77d52db5dc9beaf59a9b8ee062c945fda709bd0d3a91fa4e972d85a848324","limits":{"max_candidates":25,"max_field_matches":50,"max_method_matches":100},"right_evidence_id":"ev_8d6450759b2bb695b3b41b0db8d7ddc4a3e9f64a52b93194bc59d2b564c2285c"}],"properties":{"left_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidates":50,"max_field_matches":5000,"max_method_matches":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidates":{"default":50,"description":"Maximum permitted candidates for this operation.","maximum":500,"minimum":1,"type":"integer"},"max_field_matches":{"default":5000,"description":"Maximum permitted field matches for this operation.","maximum":50000,"minimum":0,"type":"integer"},"max_method_matches":{"default":10000,"description":"Maximum permitted method matches for this operation.","maximum":50000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"kind":"application","name":"compare_managed_members","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"algorithm":{"additionalProperties":false,"properties":{"name":{"const":"rea-managed-member-comparison","type":"string"},"name_matching":{"const":"not-used","type":"string"},"token_identity":{"const":"build-local","type":"string"},"version":{"const":1,"type":"number"}},"required":["name","version","token_identity","name_matching"],"type":"object"},"comparison_id":{"pattern":"^mmc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"left_status":{"enum":["complete","partial","unavailable"],"type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_status":{"enum":["complete","partial","unavailable"],"type":"string"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","left_status","right_status","omitted_methods","omitted_fields","omitted_candidates"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"fields":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"enum":["exact","high"],"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"status":{"enum":["unchanged","changed"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256"],"type":"object"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_field_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"candidate_right_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["evidence_links","limitations","item_id","status","left","right","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"left":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"fields_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"methods_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","mvid","module_name","metadata_status","methods_total","fields_total"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"matching":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_il_signature":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"field_signature":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural_method_shape":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["exact_il_signature","structural_method_shape","field_signature","ambiguous","unmatched"],"type":"object"},"methods":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"enum":["exact","high"],"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"status":{"enum":["unchanged","changed"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_tokens":{"prefixItems":[],"type":"array"},"candidate_right_tokens":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"additionalProperties":false,"properties":{"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256"],"type":"object"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["signature","cil","opcode-shape","call-shape","field-shape","exception-shape","availability"],"type":"string"},"maxItems":7,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"item_id":{"pattern":"^mmc_method_[a-f0-9]{64}$","type":"string"},"left":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"enum":["exact-il-signature","structural-method-shape","field-signature"],"type":"string"},"candidate_left_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"candidate_right_tokens":{"items":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"maxItems":500,"minItems":1,"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_tokens","candidate_right_tokens"],"type":"object"},"right":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["evidence_links","limitations","item_id","dimensions","status","left","right","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"right":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"fields_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"methods_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","mvid","module_name","metadata_status","methods_total","fields_total"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","changed","added","removed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","algorithm","left","right","summary","matching","methods","fields","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Managed Members"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Verify managed P/Invoke/native-boundary declarations against authenticated native export or function Evidence without executing managed code or translating managed metadata tokens into native addresses. The workflow preserves declaration-only, verified, inferred, contradicted, and unresolved states.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limits":{"max_candidates_per_import":25,"max_native_observations":20},"managed_boundaries_evidence_id":"ev_5e142d4464b916bcff63fb0835c686152b5b0473a9f1d5f5060d329b1b29739d","native_observation_evidence_ids":["ev_74758ad108882d5752dae4f8fa030c1ed6c7dd62857cb9d2d3a7ce931b52ee7c"]}],"properties":{"limits":{"additionalProperties":false,"default":{"max_candidates_per_import":25,"max_native_observations":20},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidates_per_import":{"default":25,"description":"Maximum permitted candidates per import for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_native_observations":{"default":20,"description":"Maximum permitted native observations for this operation.","maximum":50,"minimum":1,"type":"integer"}},"type":"object"},"managed_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"native_observation_evidence_ids":{"description":"Unique session-owned native observation Evidence IDs","items":{"description":"Session-owned inspect_macho or analyze_function Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["managed_boundaries_evidence_id","native_observation_evidence_ids"],"type":"object"},"kind":"application","name":"verify_managed_native_boundaries","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"algorithm":{"additionalProperties":false,"properties":{"name":{"const":"rea-managed-native-verification","type":"string"},"token_identity":{"const":"build-local","type":"string"},"token_to_address_mapping":{"const":"not-inferred","type":"string"},"version":{"const":1,"type":"number"}},"required":["name","version","token_identity","token_to_address_mapping"],"type":"object"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"omitted_candidates":{"const":0,"type":"number"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"complete-within-inputs","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"additionalProperties":false,"properties":{"omitted_candidates":{"const":0,"type":"number"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"partial","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"anyOf":[{"additionalProperties":false,"properties":{"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_native_observations":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"status":{"const":"truncated","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"},{"additionalProperties":false,"properties":{"omitted_candidates":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"omitted_native_observations":{"const":0,"type":"number"},"status":{"const":"truncated","type":"string"}},"required":["status","omitted_native_observations","omitted_candidates"],"type":"object"}]}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":2,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"managed_boundary":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"coverage_state":{"enum":["complete","partial","unavailable"],"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]},"native_implementations_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_imports_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["evidence_id","artifact_sha256","artifact_path","mvid","metadata_status","pinvoke_imports_total","native_implementations_total","coverage_state"],"type":"object"},"native_implementations":{"additionalProperties":false,"properties":{"reason":{"maxLength":4096,"minLength":1,"type":"string"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unresolved","reason"],"type":"object"},"native_observations":{"additionalProperties":false,"properties":{"accepted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symbols":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"truncated":{"type":"boolean"},"unsupported":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","accepted","unsupported","symbols","truncated"],"type":"object"},"pinvoke_imports":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["exact-export-name","exact-function-name"],"type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"observed","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"verified","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"decorated-name-candidate","type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"inferred","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"inferred","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["no-native-candidate","unsupported-native-evidence"],"type":"string"},"candidates":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"type":"null"},"status":{"const":"unresolved","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"module-mismatch","type":"string"},"candidates":{"items":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"maxItems":100,"prefixItems":[{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"}],"type":"array"},"confidence":{"const":"unknown","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":51,"minItems":1,"type":"array"},"item_id":{"pattern":"^mnv_pinvoke_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"managed":{"additionalProperties":false,"properties":{"call_convention":{"enum":["not-specified","winapi","cdecl","stdcall","thiscall","fastcall","unknown"],"type":"string"},"char_set":{"enum":["not-specified","ansi","unicode","auto","unknown"],"type":"string"},"declaration_verification":{"const":"managed-declaration-only","type":"string"},"import_name":{"minLength":1,"type":"string"},"import_scope_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"member_token":{"anyOf":[{"pattern":"^0x[0-9a-f]{8}$","type":"string"},{"type":"null"}]},"no_mangle":{"type":"boolean"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","member_token","member_name","import_name","import_scope_name","no_mangle","char_set","call_convention","declaration_verification"],"type":"object"},"matched_native":{"additionalProperties":false,"properties":{"address":{"anyOf":[{"type":"string"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"module_path":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"minLength":1,"type":"string"},"operation":{"minLength":1,"type":"string"},"source":{"enum":["macho-export","function-dossier"],"type":"string"}},"required":["evidence_id","operation","name","address","module_name","module_path","source"],"type":"object"},"status":{"const":"contradicted","type":"string"}},"required":["item_id","managed","evidence_links","limitations","status","basis","confidence","matched_native","candidates"],"type":"object"}]},"maxItems":50000,"type":"array"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"contradicted":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inferred":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_body_unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["verified","inferred","unresolved","contradicted","native_body_unresolved"],"type":"object"},"verification_id":{"pattern":"^mnv_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","verification_id","algorithm","managed_boundary","native_observations","summary","pinvoke_imports","native_implementations","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Verify Managed Native Boundaries"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Import decompiler-produced managed reconstruction against authenticated inspect_managed_members Evidence. The workflow locks each method to artifact SHA-256, MVID, metadata token, signature hash, and the limited member-result-v1 decoded-IL tuple hash, records the decompiler identity and options, and marks C# or pseudocode as analyst inference rather than canonical byte observation.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"decompiler":{"executable_sha256":null,"family":"ilspy","name":"ilspycmd","options":["--disable-updatecheck","--type","Example.Program"],"version":"9.1.0.7988"},"methods":[{"normalized_il_sha256":"5555555555555555555555555555555555555555555555555555555555555555","reconstruction":{"end_line":1,"kind":"decompiled-csharp","language":"csharp","source_path":"/examples/Example.Program.cs","start_line":1,"text":"internal static void Main() { }"},"signature_sha256":"3333333333333333333333333333333333333333333333333333333333333333","token":"0x06000001"}],"notes":["Synthetic example only; decompiler output is imported as inference."],"static_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"properties":{"decompiler":{"additionalProperties":false,"description":"Value for decompiler.","properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of executable."},"family":{"description":"Value for family.","enum":["ilspy","dnspy","dnlib","mono-cecil","other"],"type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":512,"minLength":1,"type":"string"},"options":{"default":[],"description":"Value for options.","items":{"maxLength":512,"type":"string"},"maxItems":50,"type":"array"},"version":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["name","version","family","executable_sha256"],"type":"object"},"methods":{"description":"Value for methods.","items":{"additionalProperties":false,"properties":{"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of normalized il."},"reconstruction":{"additionalProperties":false,"description":"Value for reconstruction.","properties":{"end_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Value for end line."},"kind":{"description":"Value for kind.","enum":["decompiled-csharp","decompiled-il","semantic-pseudocode"],"type":"string"},"language":{"description":"Value for language.","enum":["csharp","il","pseudocode"],"type":"string"},"source_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Local filesystem path for source."},"start_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Value for start line."},"text":{"description":"Value for text.","maxLength":65536,"minLength":1,"type":"string"},"text_sha256":{"description":"Exact SHA-256 digest of text.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["kind","language","text"],"type":"object"},"signature_sha256":{"description":"Exact SHA-256 digest of signature.","pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"description":"Value for token.","pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","signature_sha256","normalized_il_sha256","reconstruction"],"type":"object"},"maxItems":50,"minItems":1,"type":"array"},"notes":{"default":[],"description":"Value for notes.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"static_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["decompiler","methods","static_members_evidence_id"],"type":"object"},"kind":"application","name":"import_managed_reconstruction","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"decompiler":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"family":{"enum":["ilspy","dnspy","dnlib","mono-cecil","other"],"type":"string"},"name":{"maxLength":512,"minLength":1,"type":"string"},"options":{"default":[],"items":{"maxLength":512,"type":"string"},"maxItems":50,"type":"array"},"options_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"anyOf":[{"maxLength":128,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","version","family","executable_sha256","options","options_sha256"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"executed":{"const":false,"type":"boolean"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"methods":{"items":{"additionalProperties":false,"properties":{"body_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reconstruction":{"additionalProperties":false,"properties":{"end_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"kind":{"enum":["decompiled-csharp","decompiled-il","semantic-pseudocode"],"type":"string"},"language":{"enum":["csharp","il","pseudocode"],"type":"string"},"line_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"start_line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"text":{"maxLength":65536,"minLength":1,"type":"string"},"text_length":{"maximum":65536,"minimum":1,"type":"integer"},"text_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["kind","language","text","text_sha256","text_length","line_count","source_path","start_line","end_line"],"type":"object"},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"},"validation":{"additionalProperties":false,"properties":{"canonical_observation":{"const":false,"type":"boolean"},"confidence_floor":{"const":"inference","type":"string"},"exact_build_required":{"const":true,"type":"boolean"},"matched_static_member":{"const":true,"type":"boolean"}},"required":["matched_static_member","exact_build_required","canonical_observation","confidence_floor"],"type":"object"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256","body_sha256","il_size","reconstruction","validation"],"type":"object"},"maxItems":50,"minItems":1,"type":"array"},"notes":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"phase":{"const":"reconstruction-import","type":"string"},"reconstruction_id":{"pattern":"^mre_[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"static_observation":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","artifact_path","byte_length","module_name","mvid","metadata_status"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"decompiled_csharp_methods":{"maximum":50,"minimum":0,"type":"integer"},"decompiled_il_methods":{"maximum":50,"minimum":0,"type":"integer"},"imported_methods":{"maximum":50,"minimum":1,"type":"integer"},"pseudocode_methods":{"maximum":50,"minimum":0,"type":"integer"},"total_text_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["imported_methods","decompiled_csharp_methods","decompiled_il_methods","pseudocode_methods","total_text_bytes"],"type":"object"}},"required":["schema_version","reconstruction_id","phase","executed","static_observation","decompiler","summary","methods","notes","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Import Managed Reconstruction"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Prepare a separately authorized managed runtime-correlation admission plan from authenticated inspect_managed_members Evidence. The operation is default-disabled, requires the managed_runtime permission ceiling and grant, locks the exact artifact SHA-256, MVID, method signature, and limited member-result-v1 decoded-IL tuple hash, distinguishes attach/load/debugger/reflection/instrumentation effects, and records that no target code was executed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"bounds":{"allow_network":false,"allow_ui":false,"max_output_bytes":65536,"max_threads":32,"timeout_ms":5000},"host":{"architecture":"x86_64","clr_family":"dotnet","os":"linux"},"method":{"normalized_il_sha256":"5555555555555555555555555555555555555555555555555555555555555555","signature_sha256":"3333333333333333333333333333333333333333333333333333333333333333","token":"0x06000001"},"requested_effect":"attach","static_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"properties":{"bounds":{"additionalProperties":false,"default":{"allow_network":false,"allow_ui":false,"max_output_bytes":65536,"max_threads":32,"timeout_ms":5000},"description":"Value for bounds.","properties":{"allow_network":{"const":false,"default":false,"description":"Value for allow network.","type":"boolean"},"allow_ui":{"const":false,"default":false,"description":"Value for allow ui.","type":"boolean"},"max_output_bytes":{"default":65536,"description":"Maximum permitted output bytes for this operation.","maximum":1048576,"minimum":0,"type":"integer"},"max_threads":{"default":32,"description":"Maximum permitted threads for this operation.","maximum":256,"minimum":1,"type":"integer"},"timeout_ms":{"default":5000,"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"type":"object"},"host":{"additionalProperties":false,"description":"Value for host.","properties":{"architecture":{"description":"Value for architecture.","enum":["x86","x86_64","arm","arm64"],"type":"string"},"clr_family":{"description":"Value for clr family.","enum":["dotnet","dotnet-framework","mono","unknown"],"type":"string"},"os":{"description":"Value for os.","enum":["linux","macos","windows"],"type":"string"}},"required":["os","clr_family","architecture"],"type":"object"},"method":{"additionalProperties":false,"description":"Value for method.","properties":{"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of normalized il."},"signature_sha256":{"description":"Exact SHA-256 digest of signature.","pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"description":"Value for token.","pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","signature_sha256","normalized_il_sha256"],"type":"object"},"requested_effect":{"description":"Value for requested effect.","enum":["attach","load","debugger","reflection","instrumentation"],"type":"string"},"static_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["method","requested_effect","host","static_members_evidence_id"],"type":"object"},"kind":"application","name":"plan_managed_runtime_correlation","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"authority_model":{"additionalProperties":false,"properties":{"capability":{"const":"managed_runtime","type":"string"},"default_enabled":{"const":false,"type":"boolean"},"per_call_approval_required":{"const":true,"type":"boolean"},"permission_grant_id":{"minLength":1,"type":"string"}},"required":["capability","permission_grant_id","default_enabled","per_call_approval_required"],"type":"object"},"bounds":{"additionalProperties":false,"properties":{"allow_network":{"const":false,"default":false,"type":"boolean"},"allow_ui":{"const":false,"default":false,"type":"boolean"},"max_output_bytes":{"default":65536,"maximum":1048576,"minimum":0,"type":"integer"},"max_threads":{"default":32,"maximum":256,"minimum":1,"type":"integer"},"timeout_ms":{"default":5000,"maximum":60000,"minimum":1,"type":"integer"}},"required":["timeout_ms","max_threads","max_output_bytes","allow_network","allow_ui"],"type":"object"},"correlation_id":{"pattern":"^mrc_[a-f0-9]{64}$","type":"string"},"effect_taxonomy":{"additionalProperties":false,"properties":{"attaches_process":{"type":"boolean"},"instruments_code":{"type":"boolean"},"invokes_target_code":{"const":false,"type":"boolean"},"loads_target":{"type":"boolean"},"uses_debugger":{"type":"boolean"},"uses_reflection":{"type":"boolean"}},"required":["attaches_process","loads_target","uses_debugger","uses_reflection","instruments_code","invokes_target_code"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"executed":{"const":false,"type":"boolean"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"method_lock":{"additionalProperties":false,"properties":{"body_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"body_status":{"enum":["present","partial","absent","malformed","too-large"],"type":"string"},"declaring_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"exact_build_required":{"const":true,"type":"boolean"},"il_size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"name":{"type":"string"},"normalized_il_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"signature_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"token":{"pattern":"^0x[0-9a-f]{8}$","type":"string"}},"required":["token","declaring_type","name","signature_sha256","normalized_il_sha256","body_sha256","il_size","body_status","exact_build_required"],"type":"object"},"phase":{"const":"admission-plan","type":"string"},"requested_runtime":{"additionalProperties":false,"properties":{"effect":{"enum":["attach","load","debugger","reflection","instrumentation"],"type":"string"},"executable_path":{"minLength":1,"type":"string"},"filesystem":{"const":"owned-artifacts-only","type":"string"},"host":{"additionalProperties":false,"properties":{"architecture":{"enum":["x86","x86_64","arm","arm64"],"type":"string"},"clr_family":{"enum":["dotnet","dotnet-framework","mono","unknown"],"type":"string"},"os":{"enum":["linux","macos","windows"],"type":"string"}},"required":["os","clr_family","architecture"],"type":"object"},"network":{"const":"none","type":"string"}},"required":["effect","host","executable_path","network","filesystem"],"type":"object"},"schema_version":{"const":1,"type":"number"},"static_observation":{"additionalProperties":false,"properties":{"artifact_path":{"minLength":1,"type":"string"},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"metadata_status":{"enum":["absent","complete","partial","malformed"],"type":"string"},"module_name":{"anyOf":[{"type":"string"},{"type":"null"}]},"mvid":{"anyOf":[{"pattern":"^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$","type":"string"},{"type":"null"}]}},"required":["evidence_id","artifact_sha256","artifact_path","byte_length","module_name","mvid","metadata_status"],"type":"object"},"unsupported_until_executor_exists":{"const":true,"type":"boolean"}},"required":["schema_version","correlation_id","phase","executed","authority_model","static_observation","method_lock","requested_runtime","effect_taxonomy","bounds","unsupported_until_executor_exists","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Plan Managed Runtime Correlation"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Project authenticated managed artifact, member, and native-boundary Evidence into the provider-neutral application graph without executing managed code, loading assemblies, or translating managed metadata tokens to native addresses. The graph preserves managed static observations as managed-specific nodes linked to source Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_artifact_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_members_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"additionalProperties":false,"default":{"max_fields":5000,"max_methods":10000,"max_native_implementations":5000,"max_pinvoke_imports":5000,"max_types":5000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_fields":{"default":5000,"description":"Maximum permitted fields for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_methods":{"default":10000,"description":"Maximum permitted methods for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_native_implementations":{"default":5000,"description":"Maximum permitted native implementations for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_pinvoke_imports":{"default":5000,"description":"Maximum permitted pinvoke imports for this operation.","maximum":100000,"minimum":0,"type":"integer"},"max_types":{"default":5000,"description":"Maximum permitted types for this operation.","maximum":100000,"minimum":0,"type":"integer"}},"type":"object"},"managed_artifact_evidence_id":{"description":"Session-owned inspect_managed_artifact Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_members_evidence_id":{"description":"Session-owned inspect_managed_members Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"managed_native_boundaries_evidence_id":{"description":"Session-owned inspect_managed_native_boundaries Evidence ID","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["managed_native_boundaries_evidence_id"],"type":"object"}],"examples":[{"limits":{"max_fields":100,"max_methods":100,"max_native_implementations":100,"max_pinvoke_imports":100,"max_types":100},"managed_members_evidence_id":"ev_4871226711dcb86d73cebb54bc54c6e1d6cf227c94c7cf67685dc5d805511493"}],"type":"object"},"kind":"application","name":"project_managed_application_graph","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_native_implementations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_pinvoke_imports":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_types":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","omitted_types","omitted_methods","omitted_fields","omitted_pinvoke_imports","omitted_native_implementations"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3,"minItems":1,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"projection_id":{"pattern":"^magp_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"source_evidence":{"additionalProperties":false,"properties":{"managed_artifact_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"managed_members_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"managed_native_boundaries_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["managed_artifact_evidence_id","managed_members_evidence_id","managed_native_boundaries_evidence_id"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"assemblies":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"methods":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_implementations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pinvoke_imports":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"types":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["graph_nodes","graph_edges","assemblies","modules","types","methods","fields","pinvoke_imports","native_implementations"],"type":"object"}},"required":["schema_version","projection_id","root_artifact_sha256","source_evidence","summary","graph","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Project Managed Application Graph"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List bounded page targets from an approved user-owned loopback Chrome DevTools Protocol endpoint. Only targets whose current URL matches an approved exact origin are returned; URL credentials, query values, and fragments are redacted.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","limit":100,"offset":0}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["cdp_endpoint","allowed_origins","approved"],"type":"object"},"kind":"browser-provider","name":"list_browser_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"excluded":{"additionalProperties":false,"properties":{"disallowed_origin":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"non_page":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_url":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["disallowed_origin","unsupported_url","non_page"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"origin":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","browser","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Browser Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inspect one approved page target through CDP without evaluating JavaScript, navigating, clicking, closing, or mutating the page. Returns bounded DOM structure, accessibility, scripts, resources, attach-window network and console metadata, workers, and redacted storage inventory as Evidence v2.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":false,"default":false,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":false,"default":false,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id"],"type":"object"},{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved"],"type":"object"}],"examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","console_text_approved":false,"include_accessibility_text":false,"include_console_text":false,"include_json_body_shapes":false,"include_script_sources":false,"include_storage_fingerprints":false,"include_storage_keys":false,"include_websocket_shapes":false,"json_body_schema_approved":false,"limits":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"observation_ms":500,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS","websocket_shape_approved":false}],"type":"object"},"kind":"browser-provider","name":"inspect_web_page","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"accessibility":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"ignored":{"type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"node_id":{"type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"role":{"anyOf":[{"type":"string"},{"type":"null"}]},"states":{"default":[],"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}]}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored","states"],"type":"object"},"type":"array"},"text_capture":{"additionalProperties":false,"properties":{"excluded_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"additionalProperties":false,"properties":{"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"additionalProperties":false,"properties":{"coverage_started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"items":{"additionalProperties":false,"properties":{"argument_types":{"items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"text_capture":{"additionalProperties":false,"properties":{"retained_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"items":{"additionalProperties":false,"properties":{"argument_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"type":"string"},"type":{"type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"type":"number"},"type":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"attribute_names":{"items":{"type":"string"},"type":"array"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"type":"string"},"node_type":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"items":{"additionalProperties":false,"properties":{"frame_id":{"type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"metadata":{"additionalProperties":false,"properties":{"agent_hints":{"items":{"additionalProperties":false,"properties":{"declaration":{"type":"string"},"mechanism":{"enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"items":{"additionalProperties":false,"properties":{"attribute":{"enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"type":"boolean"},"responses":{"items":{"additionalProperties":false,"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}]},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"csp":{"additionalProperties":false,"properties":{"directives":{"items":{"additionalProperties":false,"properties":{"name":{"type":"string"},"sources":{"items":{"additionalProperties":false,"properties":{"kind":{"enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"items":{"additionalProperties":false,"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}]},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}]},"destination_scope":{"enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}]},"rel":{"items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"policies":{"additionalProperties":false,"properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}]},"coop":{"anyOf":[{"type":"string"},{"type":"null"}]},"corp":{"anyOf":[{"type":"string"},{"type":"null"}]},"permissions_policy_features":{"items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}]},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"type":"string"},"url":{"type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"additionalProperties":false,"properties":{"coverage_started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"type":"boolean"},"requests":{"items":{"additionalProperties":false,"properties":{"body_shapes":{"additionalProperties":false,"properties":{"request":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"response":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"status":{"enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"initiator":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"type":{"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["type","url","line","column"],"type":"object"},"method":{"type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"request_id":{"type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}]},"status":{"anyOf":[{"type":"number"},{"type":"null"}]},"url":{"type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"items":{"additionalProperties":false,"properties":{"direction":{"enum":["sent","received"],"type":"string"},"opcode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"additionalProperties":false,"properties":{"format":{"enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"truncated":{"type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}]},"request_id":{"type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"items":{"additionalProperties":false,"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"mime_type":{"type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"resource_key":{"pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"is_module":{"type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}]},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"resource_reconciliation":{"oneOf":[{"additionalProperties":false,"properties":{"resource_key":{"type":"string"},"status":{"const":"exact","type":"string"}},"required":["status","resource_key"],"type":"object"},{"additionalProperties":false,"properties":{"candidate_resource_keys":{"items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"const":"no_exact_sanitized_url","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"oneOf":[{"additionalProperties":false,"properties":{"included":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["included","reason"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"url":{"type":"string"}},"required":["script_key","frame_id","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"additionalProperties":false,"properties":{"cache_names":{"items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"items":{"additionalProperties":false,"properties":{"complete":{"type":"boolean"},"identity_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","type":"string"},"fingerprints_complete":{"default":false,"type":"boolean"},"indexed_db_names":{"items":{"type":"string"},"type":"array"},"local_storage_keys":{"items":{"type":"string"},"type":"array"},"origin":{"type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"session_storage_keys":{"items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"values_redacted":{"const":true,"type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","content_fingerprints","fingerprint_algorithm","fingerprints_complete","values_redacted"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"origin":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"origin":{"anyOf":[{"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"target_id":{"type":"string"},"type":{"type":"string"},"url":{"type":"string"}},"required":["target_id","type","url","origin","attached","opener_target_id","parent_frame_id"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Web Page"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Capture explicitly approved JavaScript source from one approved CDP page and statically derive a bounded chunk graph, route and endpoint candidates, vendor fingerprints, page-declared WebMCP metadata, and optional separately approved source-map evidence. JavaScript is parsed but never executed.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"analysis_limits":{"default":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"description":"Value for analysis limits.","properties":{"max_ast_nodes":{"default":250000,"description":"Maximum permitted ast nodes for this operation.","maximum":2000000,"minimum":1,"type":"integer"},"max_findings":{"default":1000,"description":"Maximum permitted findings for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_original_sources":{"default":2000,"description":"Maximum permitted original sources for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_source_map_bytes":{"default":4194304,"description":"Maximum permitted source map bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_source_map_mappings":{"default":10000,"description":"Maximum permitted source map mappings for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_source_maps":{"default":100,"description":"Maximum permitted source maps for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_total_source_map_bytes":{"default":16777216,"description":"Maximum permitted total source map bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"}},"type":"object"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"fetch_source_maps":{"const":false,"default":false,"description":"Value for fetch source maps.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"source_map_fetch_approved":{"const":false,"default":false,"description":"Explicit operator approval for source map fetch.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved"],"type":"object"},{"additionalProperties":false,"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"analysis_limits":{"default":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"description":"Value for analysis limits.","properties":{"max_ast_nodes":{"default":250000,"description":"Maximum permitted ast nodes for this operation.","maximum":2000000,"minimum":1,"type":"integer"},"max_findings":{"default":1000,"description":"Maximum permitted findings for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_original_sources":{"default":2000,"description":"Maximum permitted original sources for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_source_map_bytes":{"default":4194304,"description":"Maximum permitted source map bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_source_map_mappings":{"default":10000,"description":"Maximum permitted source map mappings for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_source_maps":{"default":100,"description":"Maximum permitted source maps for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_total_source_map_bytes":{"default":16777216,"description":"Maximum permitted total source map bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"}},"type":"object"},"approved":{"const":true,"description":"Explicit approval for browser observation","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"console_text_approved":{"default":false,"description":"Explicit operator approval for console text.","type":"boolean"},"fetch_source_maps":{"const":true,"description":"Value for fetch source maps.","type":"boolean"},"include_accessibility_text":{"default":false,"description":"Whether to include accessibility text in the result.","type":"boolean"},"include_console_text":{"default":false,"description":"Whether to include console text in the result.","type":"boolean"},"include_json_body_shapes":{"default":false,"description":"Whether to include json body shapes in the result.","type":"boolean"},"include_script_sources":{"const":true,"default":true,"description":"Whether to include script sources in the result.","type":"boolean"},"include_storage_fingerprints":{"default":false,"description":"Whether to include storage fingerprints in the result.","type":"boolean"},"include_storage_keys":{"default":false,"description":"Whether to include storage keys in the result.","type":"boolean"},"include_websocket_shapes":{"default":false,"description":"Whether to include websocket shapes in the result.","type":"boolean"},"json_body_schema_approved":{"default":false,"description":"Explicit operator approval for json body schema.","type":"boolean"},"limits":{"default":{"max_ax_nodes":2000,"max_ax_text_field_bytes":1024,"max_console_events":200,"max_console_text_field_bytes":1024,"max_dom_nodes":2000,"max_frames":200,"max_json_body_bytes":1048576,"max_json_shape_depth":20,"max_json_shape_nodes":5000,"max_network_events":1000,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":200,"max_storage_keys":1000,"max_total_ax_text_bytes":65536,"max_total_console_text_bytes":65536,"max_total_json_body_bytes":4194304,"max_total_script_source_bytes":4194304,"max_total_websocket_shape_bytes":1048576,"max_websocket_events":500,"max_websocket_shape_bytes":65536,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_ax_nodes":{"default":2000,"description":"Maximum permitted ax nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_ax_text_field_bytes":{"default":1024,"description":"Maximum permitted ax text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_console_events":{"default":200,"description":"Maximum permitted console events for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_console_text_field_bytes":{"default":1024,"description":"Maximum permitted console text field bytes for this operation.","maximum":16384,"minimum":1,"type":"integer"},"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_json_body_bytes":{"default":1048576,"description":"Maximum permitted json body bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_json_shape_depth":{"default":20,"description":"Maximum permitted json shape depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_json_shape_nodes":{"default":5000,"description":"Maximum permitted json shape nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_network_events":{"default":1000,"description":"Maximum permitted network events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":200,"description":"Maximum permitted scripts for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_storage_keys":{"default":1000,"description":"Maximum permitted storage keys for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_ax_text_bytes":{"default":65536,"description":"Maximum permitted total ax text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_console_text_bytes":{"default":65536,"description":"Maximum permitted total console text bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_total_json_body_bytes":{"default":4194304,"description":"Maximum permitted total json body bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_total_websocket_shape_bytes":{"default":1048576,"description":"Maximum permitted total websocket shape bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_websocket_events":{"default":500,"description":"Maximum permitted websocket events for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_websocket_shape_bytes":{"default":65536,"description":"Maximum permitted websocket shape bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":500,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"source_map_fetch_approved":{"const":true,"description":"Explicit operator approval for source map fetch.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"},"websocket_shape_approved":{"default":false,"description":"Explicit operator approval for websocket shape.","type":"boolean"}},"required":["cdp_endpoint","allowed_origins","approved","target_id","source_capture_approved","fetch_source_maps","source_map_fetch_approved"],"type":"object"}],"examples":[{"allowed_origins":["https://app.example.test"],"analysis_limits":{"max_ast_nodes":250000,"max_findings":1000,"max_original_sources":2000,"max_source_map_bytes":4194304,"max_source_map_mappings":10000,"max_source_maps":100,"max_total_source_map_bytes":16777216},"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","fetch_source_maps":false,"include_accessibility_text":false,"include_script_sources":true,"include_storage_keys":false,"observation_ms":500,"source_capture_approved":true,"source_map_fetch_approved":false,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"type":"object"},"kind":"browser-provider","name":"analyze_web_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"capture":{"additionalProperties":false,"properties":{"scripts_analyzed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_artifacts":{"items":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text_available":{"const":true,"type":"boolean"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text_available"],"type":"object"},"type":"array"},"target_url":{"type":"string"}},"required":["target_url","scripts_observed","scripts_analyzed","source_artifacts"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"dropped_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete_within_limits","truncated","partial"],"type":"string"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","parsed_scripts","parse_failures","visited_ast_nodes","dropped_findings"],"type":"object"},"inferences":{"items":{"additionalProperties":false,"properties":{"basis":{"items":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"detector":{"type":"string"},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","artifact_sha256","line","column","detector"],"type":"object"},"minItems":1,"type":"array"},"confidence":{"enum":["low","medium","high"],"type":"string"},"kind":{"enum":["vendor_fingerprint","route_framework","bundle_runtime"],"type":"string"},"value":{"type":"string"}},"required":["kind","value","confidence","basis"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"observations":{"additionalProperties":false,"properties":{"chunks":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"from_script_key":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require","worker_import"],"type":"string"},"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"resolved_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_script_key","kind","specifier","resolved_url","location"],"type":"object"},"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"script_key":{"type":"string"},"url":{"type":"string"}},"required":["script_key","url","artifact_sha256","bytes"],"type":"object"},"type":"array"}},"required":["nodes","edges"],"type":"object"},"endpoints":{"items":{"additionalProperties":false,"properties":{"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"mechanism":{"type":"string"},"value":{"type":"string"}},"required":["value","mechanism","location"],"type":"object"},"type":"array"},"routes":{"items":{"additionalProperties":false,"properties":{"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"mechanism":{"type":"string"},"value":{"type":"string"}},"required":["value","mechanism","location"],"type":"object"},"type":"array"},"source_maps":{"additionalProperties":false,"properties":{"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dropped_script_keys":{"items":{"type":"string"},"type":"array"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"declared_url":{"type":"string"},"limitation":{"type":"null"},"mappings":{"items":{"additionalProperties":false,"properties":{"generated_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"generated_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"type":"string"}},"required":["generated_line","generated_column","source","original_line","original_column","name"],"type":"object"},"type":"array"},"original_module_edges":{"items":{"additionalProperties":false,"properties":{"from_source":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require"],"type":"string"},"resolved_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_source","kind","specifier","resolved_source"],"type":"object"},"type":"array"},"original_sources":{"items":{"additionalProperties":false,"properties":{"artifact":{"anyOf":[{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},{"type":"null"}]},"source":{"type":"string"}},"required":["source","artifact"],"type":"object"},"type":"array"},"script_key":{"type":"string"},"status":{"const":"included","type":"string"}},"required":["script_key","declared_url","artifact","original_sources","original_module_edges","mappings","status","limitation"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"declared_url":{"type":"string"},"limitation":{"type":"string"},"mappings":{"items":{"additionalProperties":false,"properties":{"generated_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"generated_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"original_column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_line":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"type":"string"}},"required":["generated_line","generated_column","source","original_line","original_column","name"],"type":"object"},"type":"array"},"original_module_edges":{"items":{"additionalProperties":false,"properties":{"from_source":{"type":"string"},"kind":{"enum":["static_import","dynamic_import","require"],"type":"string"},"resolved_source":{"anyOf":[{"type":"string"},{"type":"null"}]},"specifier":{"type":"string"}},"required":["from_source","kind","specifier","resolved_source"],"type":"object"},"type":"array"},"original_sources":{"items":{"additionalProperties":false,"properties":{"artifact":{"anyOf":[{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},{"type":"null"}]},"source":{"type":"string"}},"required":["source","artifact"],"type":"object"},"type":"array"},"script_key":{"type":"string"},"status":{"const":"truncated","type":"string"}},"required":["script_key","declared_url","artifact","original_sources","original_module_edges","mappings","status","limitation"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"type":"null"},"declared_url":{"type":"string"},"limitation":{"type":"string"},"mappings":{"prefixItems":[],"type":"array"},"original_module_edges":{"prefixItems":[],"type":"array"},"original_sources":{"prefixItems":[],"type":"array"},"script_key":{"type":"string"},"status":{"enum":["fetch_failed","invalid","policy_filtered","truncated"],"type":"string"}},"required":["script_key","declared_url","status","artifact","original_sources","original_module_edges","mappings","limitation"],"type":"object"}]},"type":"array"},"processed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["not_requested","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","requested","processed","dropped","dropped_script_keys","items"],"type":"object"},"webmcp_declarations":{"items":{"additionalProperties":false,"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}]},"script_key":{"type":"string"}},"required":["script_key","line","column"],"type":"object"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]},"schema_property_names":{"items":{"type":"string"},"type":"array"},"trust":{"const":"page-declared-untrusted","type":"string"}},"required":["name","description","schema_property_names","trust","location"],"type":"object"},"type":"array"}},"required":["chunks","routes","endpoints","webmcp_declarations","source_maps"],"type":"object"},"schema_version":{"const":1,"type":"number"},"unknowns":{"items":{"additionalProperties":false,"properties":{"affected_script_keys":{"items":{"type":"string"},"type":"array"},"dimension":{"type":"string"},"reason":{"type":"string"}},"required":["dimension","reason","affected_script_keys"],"type":"object"},"type":"array"}},"required":["schema_version","capture","observations","inferences","unknowns","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Web Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Arm a bounded CDP observation window while the user operates the page. Allows approved same-origin reload and SPA navigation, records ordered navigation, redirect, lifecycle, and failure metadata, and stops before retaining an out-of-policy destination.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","max_timeline_events":2000,"observation_ms":10000,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"max_timeline_events":{"default":2000,"description":"Maximum permitted timeline events for this operation.","maximum":20000,"minimum":1,"type":"integer"},"observation_ms":{"default":10000,"description":"Value for observation ms.","maximum":60000,"minimum":1,"type":"integer"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved"],"type":"object"},"kind":"browser-provider","name":"observe_web_session","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"target":{"additionalProperties":false,"properties":{"final_url":{"anyOf":[{"type":"string"},{"type":"null"}]},"initial_url":{"type":"string"},"target_id":{"type":"string"}},"required":["target_id","initial_url","final_url"],"type":"object"},"timeline":{"items":{"additionalProperties":false,"properties":{"destination_scope":{"anyOf":[{"enum":["approved","outside_policy","unsupported"],"type":"string"},{"type":"null"}]},"detail":{"anyOf":[{"type":"string"},{"type":"null"}]},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"loader_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timestamp":{"minimum":0,"type":"number"},"type":{"enum":["navigation_requested","navigation_committed","same_origin_reload","same_document_navigation","redirect","load_failed","lifecycle","target_terminated"],"type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["sequence","type","timestamp","frame_id","loader_id","request_id","url","destination_scope","detail"],"type":"object"},"type":"array"},"window":{"additionalProperties":false,"properties":{"armed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"end_reason":{"enum":["window_elapsed","target_left_scope","target_terminated"],"type":"string"},"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"requested_ms":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["armed_at","ended_at","requested_ms","end_reason"],"type":"object"}},"required":["schema_version","browser","target","window","timeline","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Observe Web Session"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inventory page-registered WebMCP tools using the experimental CDP WebMCP domain. Metadata is bounded and page-declared-untrusted; REA never registers or invokes discovered tools.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","max_schema_bytes":262144,"max_schema_depth":20,"max_schema_nodes":5000,"max_tools":500,"observation_ms":100,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"max_schema_bytes":{"default":262144,"description":"Maximum permitted schema bytes for this operation.","maximum":1048576,"minimum":1,"type":"integer"},"max_schema_depth":{"default":20,"description":"Maximum permitted schema depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_schema_nodes":{"default":5000,"description":"Maximum permitted schema nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_tools":{"default":500,"description":"Maximum permitted tools for this operation.","maximum":5000,"minimum":1,"type":"integer"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved"],"type":"object"},"kind":"browser-provider","name":"discover_webmcp_tools","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"status":{"enum":["available","unavailable"],"type":"string"},"target":{"additionalProperties":false,"properties":{"origin":{"type":"string"},"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}]}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"enum":["declarative","imperative"],"type":"string"},"description":{"type":"string"},"frame_id":{"type":"string"},"frame_url":{"type":"string"},"input_schema_shape":{"anyOf":[{"additionalProperties":false,"properties":{"max_depth_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"items":{"additionalProperties":false,"properties":{"observations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"type":"string"},"types":{"items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}]},"name":{"type":"string"},"owner_origin":{"type":"string"},"registration_source":{"anyOf":[{"additionalProperties":false,"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"url":{"type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}]},"tool_key":{"pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Discover Webmcp Tools"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Compare either passive web captures or step-indexed browser scenarios. Scenario comparison aligns exact step IDs, records deterministic literal normalization, and exposes bounded artifact-level changes plus alignment failures. Missing or truncated evidence never proves equality.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"after":{"description":"Later passive web-page capture.","properties":{"inspection":{"description":"Value for inspection.","properties":{"accessibility":{"description":"Value for accessibility.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for description."},"ignored":{"description":"Value for ignored.","type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"node_id":{"description":"Value for node id.","type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent id."},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for role."},"states":{"default":[],"description":"Value for states.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}],"description":"Value for value."}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored"],"type":"object"},"type":"array"},"text_capture":{"description":"Value for text capture.","properties":{"excluded_fields":{"description":"Value for excluded fields.","maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"description":"Value for truncated fields.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"description":"Value for capture window.","properties":{"ended_at":{"description":"Value for ended at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"description":"Value for observation ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"description":"Value for started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"description":"Value for console.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"description":"Value for events.","items":{"properties":{"argument_types":{"description":"Value for argument types.","items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"text_capture":{"description":"Value for text capture.","properties":{"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"description":"Value for truncated values.","maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"description":"Value for values.","items":{"properties":{"argument_index":{"description":"Value for argument index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","type":"string"},"type":{"description":"Value for type.","type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"description":"Value for timestamp.","type":"number"},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"description":"Value for dom.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"attribute_names":{"description":"Value for attribute names.","items":{"type":"string"},"type":"array"},"index":{"description":"Value for index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"description":"Value for node name.","type":"string"},"node_type":{"description":"Value for node type.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"description":"Value for node value length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"description":"Value for parent index.","maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"description":"Value for frames.","items":{"properties":{"frame_id":{"description":"Value for frame id.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent frame id."},"url":{"description":"Value for url.","type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"metadata":{"description":"Value for metadata.","properties":{"agent_hints":{"description":"Value for agent hints.","items":{"properties":{"declaration":{"description":"Value for declaration.","type":"string"},"mechanism":{"description":"Value for mechanism.","enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"description":"Value for dom urls.","items":{"properties":{"attribute":{"description":"Value for attribute.","enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"description":"Value for node index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"description":"Value for excluded dom urls.","maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"description":"Value for headers allowlisted.","type":"boolean"},"responses":{"description":"Value for responses.","items":{"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for content encoding."},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for content length."},"csp":{"description":"Value for csp.","properties":{"directives":{"description":"Value for directives.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"sources":{"description":"Value for sources.","items":{"properties":{"kind":{"description":"Value for kind.","enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for value."}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"description":"Value for hash count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"description":"Value for nonce count.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"description":"Value for links.","items":{"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for as."},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for crossorigin."},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for href."},"rel":{"description":"Value for rel.","items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for type."}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"policies":{"description":"Value for policies.","properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coep."},"coop":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coop."},"corp":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for corp."},"permissions_policy_features":{"description":"Value for permissions policy features.","items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for referrer policy."},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for x content type options."}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"description":"Value for request id.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"description":"Value for network.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"},"requests":{"description":"Value for requests.","items":{"properties":{"body_shapes":{"description":"Value for body shapes.","properties":{"request":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for request."},"response":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for response."},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for encoded data length."},"initiator":{"description":"Value for initiator.","properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","url","line","column"],"type":"object"},"method":{"description":"Value for method.","type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"request_id":{"description":"Value for request id.","type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for resource type."},"status":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Current lifecycle or verification status."},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"description":"Value for websocket events.","items":{"properties":{"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["sent","received"],"type":"string"},"opcode":{"description":"Value for opcode.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"properties":{"format":{"description":"Declared input artifact format.","enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for json shape."},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}],"description":"Value for payload shape."},"request_id":{"description":"Value for request id.","type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"description":"Value for resources.","items":{"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for content size."},"mime_type":{"description":"Value for mime type.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_key":{"description":"Value for resource key.","pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"scripts":{"description":"Value for scripts.","properties":{"items":{"description":"Value for items.","items":{"properties":{"cdp_hash":{"description":"Value for cdp hash.","type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for frame id."},"is_module":{"description":"Whether is module.","type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for language."},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_reconciliation":{"description":"Value for resource reconciliation.","oneOf":[{"properties":{"resource_key":{"description":"Value for resource key.","type":"string"},"status":{"const":"exact","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","resource_key"],"type":"object"},{"properties":{"candidate_resource_keys":{"description":"Value for candidate resource keys.","items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"properties":{"reason":{"const":"no_exact_sanitized_url","description":"Value for reason.","type":"string"},"status":{"const":"unmatched","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"description":"Value for script key.","pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"description":"Value for source.","oneOf":[{"properties":{"included":{"const":false,"description":"Value for included.","type":"boolean"},"reason":{"description":"Value for reason.","type":"string"}},"required":["included","reason"],"type":"object"},{"properties":{"artifact":{"description":"Value for artifact.","properties":{"bytes":{"description":"Value for bytes.","maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","description":"Value for charset.","type":"string"},"media_type":{"description":"Value for media type.","maxLength":256,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"description":"Value for included.","type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for source map url."},"url":{"description":"Value for url.","type":"string"}},"required":["script_key","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"description":"Value for storage.","properties":{"cache_names":{"description":"Value for cache names.","items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"description":"Value for content fingerprints.","items":{"properties":{"complete":{"description":"Value for complete.","type":"boolean"},"identity_sha256":{"description":"Exact SHA-256 digest of identity.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"description":"Value for scope.","enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of value."}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","description":"Value for fingerprint algorithm.","type":"string"},"fingerprints_complete":{"default":false,"description":"Value for fingerprints complete.","type":"boolean"},"indexed_db_names":{"description":"Value for indexed db names.","items":{"type":"string"},"type":"array"},"local_storage_keys":{"description":"Value for local storage keys.","items":{"type":"string"},"type":"array"},"origin":{"description":"Value for origin.","type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for quota."},"session_storage_keys":{"description":"Value for session storage keys.","items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for usage."},"values_redacted":{"const":true,"description":"Value for values redacted.","type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","values_redacted"],"type":"object"},"target":{"description":"Value for target.","properties":{"attached":{"description":"Value for attached.","type":"boolean"},"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"title":{"description":"Value for title.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"description":"Value for workers.","items":{"properties":{"attached":{"description":"Value for attached.","type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for opener target id."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for parent frame id."},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","url","origin","attached"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"},"webmcp":{"anyOf":[{"properties":{"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["available","unavailable"],"type":"string"},"target":{"description":"Value for target.","properties":{"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"description":"Value for tools.","properties":{"items":{"description":"Value for items.","items":{"properties":{"annotations":{"description":"Value for annotations.","properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for autosubmit."},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for read only."},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for untrusted content."}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"description":"Value for declaration kind.","enum":["declarative","imperative"],"type":"string"},"description":{"description":"Value for description.","type":"string"},"frame_id":{"description":"Value for frame id.","type":"string"},"frame_url":{"description":"Value for frame url.","type":"string"},"input_schema_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for input schema shape."},"name":{"description":"Exact name used by this operation.","type":"string"},"owner_origin":{"description":"Value for owner origin.","type":"string"},"registration_source":{"anyOf":[{"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"url":{"description":"Value for url.","type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}],"description":"Value for registration source."},"tool_key":{"description":"Value for tool key.","pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for webmcp."}},"required":["inspection"],"type":"object"},"before":{"description":"Earlier passive web-page capture.","properties":{"inspection":{"description":"Value for inspection.","properties":{"accessibility":{"description":"Value for accessibility.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for description."},"ignored":{"description":"Value for ignored.","type":"boolean"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"node_id":{"description":"Value for node id.","type":"string"},"parent_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent id."},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for role."},"states":{"default":[],"description":"Value for states.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"value":{"anyOf":[{"type":"boolean"},{"type":"number"},{"type":"string"}],"description":"Value for value."}},"required":["name","value"],"type":"object"},"type":"array"}},"required":["node_id","parent_id","role","name","description","ignored"],"type":"object"},"type":"array"},"text_capture":{"description":"Value for text capture.","properties":{"excluded_fields":{"description":"Value for excluded fields.","maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated","unavailable"],"type":"string"},"truncated_fields":{"description":"Value for truncated fields.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","retained_bytes","excluded_fields","truncated_fields"],"type":"object"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","text_capture","nodes"],"type":"object"},"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"description":"Value for capture window.","properties":{"ended_at":{"description":"Value for ended at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"description":"Value for observation ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"description":"Value for started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"console":{"description":"Value for console.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"events":{"description":"Value for events.","items":{"properties":{"argument_types":{"description":"Value for argument types.","items":{"type":"string"},"type":"array"},"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"text_capture":{"description":"Value for text capture.","properties":{"retained_bytes":{"description":"Bounded byte count for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","truncated"],"type":"string"},"truncated_values":{"description":"Value for truncated values.","maximum":9007199254740991,"minimum":0,"type":"integer"},"values":{"description":"Value for values.","items":{"properties":{"argument_index":{"description":"Value for argument index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","type":"string"},"type":{"description":"Value for type.","type":"string"}},"required":["argument_index","type","text"],"type":"object"},"type":"array"}},"required":["status","values","retained_bytes","truncated_values"],"type":"object"},"timestamp":{"description":"Value for timestamp.","type":"number"},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","timestamp","argument_types","url","line","column","text_capture"],"type":"object"},"type":"array"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"}},"required":["events","coverage_started_at","prior_activity_available"],"type":"object"},"dom":{"description":"Value for dom.","properties":{"nodes":{"description":"Value for nodes.","items":{"properties":{"attribute_names":{"description":"Value for attribute names.","items":{"type":"string"},"type":"array"},"index":{"description":"Value for index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"description":"Value for node name.","type":"string"},"node_type":{"description":"Value for node type.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"description":"Value for node value length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"description":"Value for parent index.","maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"description":"Value for total nodes.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"description":"Value for frames.","items":{"properties":{"frame_id":{"description":"Value for frame id.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for parent frame id."},"url":{"description":"Value for url.","type":"string"}},"required":["frame_id","parent_frame_id","url","origin"],"type":"object"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"metadata":{"description":"Value for metadata.","properties":{"agent_hints":{"description":"Value for agent hints.","items":{"properties":{"declaration":{"description":"Value for declaration.","type":"string"},"mechanism":{"description":"Value for mechanism.","enum":["link_rel","dom_link_rel","well_known_resource","response_header"],"type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["mechanism","declaration","url","trust"],"type":"object"},"type":"array"},"dom_urls":{"description":"Value for dom urls.","items":{"properties":{"attribute":{"description":"Value for attribute.","enum":["href","src","action","formaction","poster"],"type":"string"},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"node_index":{"description":"Value for node index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["node_index","attribute","url","destination_scope"],"type":"object"},"type":"array"},"excluded_dom_urls":{"description":"Value for excluded dom urls.","maximum":9007199254740991,"minimum":0,"type":"integer"},"headers_allowlisted":{"const":true,"description":"Value for headers allowlisted.","type":"boolean"},"responses":{"description":"Value for responses.","items":{"properties":{"content_encoding":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for content encoding."},"content_length":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for content length."},"csp":{"description":"Value for csp.","properties":{"directives":{"description":"Value for directives.","items":{"properties":{"name":{"description":"Exact name used by this operation.","type":"string"},"sources":{"description":"Value for sources.","items":{"properties":{"kind":{"description":"Value for kind.","enum":["keyword","scheme","approved_origin","external_origin","other"],"type":"string"},"value":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for value."}},"required":["kind","value"],"type":"object"},"type":"array"}},"required":["name","sources"],"type":"object"},"type":"array"},"hash_count":{"description":"Value for hash count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"nonce_count":{"description":"Value for nonce count.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["directives","nonce_count","hash_count"],"type":"object"},"links":{"description":"Value for links.","items":{"properties":{"as":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for as."},"crossorigin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for crossorigin."},"destination_scope":{"description":"Value for destination scope.","enum":["approved","outside_policy","unsupported"],"type":"string"},"href":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for href."},"rel":{"description":"Value for rel.","items":{"type":"string"},"type":"array"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for type."}},"required":["href","destination_scope","rel","as","type","crossorigin"],"type":"object"},"type":"array"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"policies":{"description":"Value for policies.","properties":{"coep":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coep."},"coop":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for coop."},"corp":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for corp."},"permissions_policy_features":{"description":"Value for permissions policy features.","items":{"type":"string"},"type":"array"},"referrer_policy":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for referrer policy."},"x_content_type_options":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for x content type options."}},"required":["coop","coep","corp","referrer_policy","x_content_type_options","permissions_policy_features"],"type":"object"},"request_id":{"description":"Value for request id.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","mime_type","content_length","content_encoding","csp","links","policies"],"type":"object"},"type":"array"}},"required":["responses","dom_urls","agent_hints","excluded_dom_urls","headers_allowlisted"],"type":"object"},"network":{"description":"Value for network.","properties":{"coverage_started_at":{"description":"Value for coverage started at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"prior_activity_available":{"const":false,"description":"Value for prior activity available.","type":"boolean"},"requests":{"description":"Value for requests.","items":{"properties":{"body_shapes":{"description":"Value for body shapes.","properties":{"request":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for request."},"response":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for response."},"status":{"description":"Current lifecycle or verification status.","enum":["not_approved","included","partial","unavailable","truncated"],"type":"string"}},"required":["status","request","response"],"type":"object"},"encoded_data_length":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for encoded data length."},"initiator":{"description":"Value for initiator.","properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"type":{"description":"Value for type.","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for url."}},"required":["type","url","line","column"],"type":"object"},"method":{"description":"Value for method.","type":"string"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for mime type."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"request_id":{"description":"Value for request id.","type":"string"},"resource_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for resource type."},"status":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Current lifecycle or verification status."},"url":{"description":"Value for url.","type":"string"}},"required":["request_id","url","origin","method","resource_type","status","mime_type","encoded_data_length","initiator","body_shapes"],"type":"object"},"type":"array"},"websocket_events":{"description":"Value for websocket events.","items":{"properties":{"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["sent","received"],"type":"string"},"opcode":{"description":"Value for opcode.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_shape":{"anyOf":[{"properties":{"format":{"description":"Declared input artifact format.","enum":["json","text","binary"],"type":"string"},"json_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for json shape."},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["format","json_shape","truncated"],"type":"object"},{"type":"null"}],"description":"Value for payload shape."},"request_id":{"description":"Value for request id.","type":"string"}},"required":["request_id","direction","opcode","payload_bytes","payload_shape"],"type":"object"},"type":"array"}},"required":["requests","websocket_events","coverage_started_at","prior_activity_available"],"type":"object"},"resources":{"description":"Value for resources.","items":{"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Value for content size."},"mime_type":{"description":"Value for mime type.","type":"string"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_key":{"description":"Value for resource key.","pattern":"^res_[a-f0-9]{64}$","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["resource_key","url","origin","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"scripts":{"description":"Value for scripts.","properties":{"items":{"description":"Value for items.","items":{"properties":{"cdp_hash":{"description":"Value for cdp hash.","type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for frame id."},"is_module":{"description":"Whether is module.","type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for language."},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"resource_reconciliation":{"description":"Value for resource reconciliation.","oneOf":[{"properties":{"resource_key":{"description":"Value for resource key.","type":"string"},"status":{"const":"exact","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","resource_key"],"type":"object"},{"properties":{"candidate_resource_keys":{"description":"Value for candidate resource keys.","items":{"type":"string"},"type":"array"},"status":{"const":"ambiguous","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","candidate_resource_keys"],"type":"object"},{"properties":{"reason":{"const":"no_exact_sanitized_url","description":"Value for reason.","type":"string"},"status":{"const":"unmatched","description":"Current lifecycle or verification status.","type":"string"}},"required":["status","reason"],"type":"object"}]},"script_key":{"description":"Value for script key.","pattern":"^scr_[a-f0-9]{64}(?:_[0-9]+)?$","type":"string"},"source":{"description":"Value for source.","oneOf":[{"properties":{"included":{"const":false,"description":"Value for included.","type":"boolean"},"reason":{"description":"Value for reason.","type":"string"}},"required":["included","reason"],"type":"object"},{"properties":{"artifact":{"description":"Value for artifact.","properties":{"bytes":{"description":"Value for bytes.","maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","description":"Value for charset.","type":"string"},"media_type":{"description":"Value for media type.","maxLength":256,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"description":"Value for included.","type":"boolean"}},"required":["included","artifact"],"type":"object"}]},"source_map_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for source map url."},"url":{"description":"Value for url.","type":"string"}},"required":["script_key","url","origin","cdp_hash","length","is_module","language","source_map_url","resource_reconciliation","source"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"storage":{"description":"Value for storage.","properties":{"cache_names":{"description":"Value for cache names.","items":{"type":"string"},"type":"array"},"content_fingerprints":{"default":[],"description":"Value for content fingerprints.","items":{"properties":{"complete":{"description":"Value for complete.","type":"boolean"},"identity_sha256":{"description":"Exact SHA-256 digest of identity.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"description":"Value for scope.","enum":["cookie","local_storage","session_storage","indexed_db_schema","indexed_db_record","cache_entry"],"type":"string"},"value_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of value."}},"required":["scope","identity_sha256","value_sha256","complete"],"type":"object"},"type":"array"},"fingerprint_algorithm":{"const":"sha256","default":"sha256","description":"Value for fingerprint algorithm.","type":"string"},"fingerprints_complete":{"default":false,"description":"Value for fingerprints complete.","type":"boolean"},"indexed_db_names":{"description":"Value for indexed db names.","items":{"type":"string"},"type":"array"},"local_storage_keys":{"description":"Value for local storage keys.","items":{"type":"string"},"type":"array"},"origin":{"description":"Value for origin.","type":"string"},"quota_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for quota."},"session_storage_keys":{"description":"Value for session storage keys.","items":{"type":"string"},"type":"array"},"usage_bytes":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"description":"Bounded byte count for usage."},"values_redacted":{"const":true,"description":"Value for values redacted.","type":"boolean"}},"required":["origin","usage_bytes","quota_bytes","local_storage_keys","session_storage_keys","indexed_db_names","cache_names","values_redacted"],"type":"object"},"target":{"description":"Value for target.","properties":{"attached":{"description":"Value for attached.","type":"boolean"},"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"title":{"description":"Value for title.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","title","url","origin","attached"],"type":"object"},"workers":{"description":"Value for workers.","items":{"properties":{"attached":{"description":"Value for attached.","type":"boolean"},"opener_target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for opener target id."},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for origin."},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Value for parent frame id."},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"type":{"description":"Value for type.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","type","url","origin","attached"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","accessibility","scripts","resources","network","console","workers","metadata","storage","limitations"],"type":"object"},"webmcp":{"anyOf":[{"properties":{"browser":{"description":"Value for browser.","properties":{"js_version":{"description":"Value for js version.","type":"string"},"product":{"description":"Value for product.","type":"string"},"protocol_version":{"description":"Value for protocol version.","type":"string"},"revision":{"description":"Value for revision.","type":"string"},"user_agent":{"description":"Value for user agent.","type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"completeness":{"description":"Value for completeness.","properties":{"attach_limited_sections":{"description":"Value for attach limited sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"description":"Value for conditions.","items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"description":"Value for dropped events.","properties":{"console_events":{"description":"Value for console events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"description":"Value for network requests.","maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"description":"Value for scripts.","maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"description":"Value for timeline events.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"description":"Value for webmcp tools.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"description":"Value for websocket connections.","maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"description":"Value for websocket frames.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"description":"Value for excluded.","items":{"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for count."},"reason":{"description":"Value for reason.","enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"description":"Value for section.","enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"description":"Value for policy filtered sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"description":"Value for unavailable sections.","items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["available","unavailable"],"type":"string"},"target":{"description":"Value for target.","properties":{"origin":{"description":"Value for origin.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","type":"string"},"url":{"description":"Value for url.","type":"string"}},"required":["target_id","url","origin"],"type":"object"},"tools":{"description":"Value for tools.","properties":{"items":{"description":"Value for items.","items":{"properties":{"annotations":{"description":"Value for annotations.","properties":{"autosubmit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for autosubmit."},"read_only":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for read only."},"untrusted_content":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for untrusted content."}},"required":["read_only","untrusted_content","autosubmit"],"type":"object"},"declaration_kind":{"description":"Value for declaration kind.","enum":["declarative","imperative"],"type":"string"},"description":{"description":"Value for description.","type":"string"},"frame_id":{"description":"Value for frame id.","type":"string"},"frame_url":{"description":"Value for frame url.","type":"string"},"input_schema_shape":{"anyOf":[{"properties":{"max_depth_observed":{"description":"Maximum permitted depth observed for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"node_count":{"description":"Value for node count.","maximum":9007199254740991,"minimum":1,"type":"integer"},"properties":{"description":"Value for properties.","items":{"properties":{"observations":{"description":"Value for observations.","maximum":9007199254740991,"minimum":1,"type":"integer"},"path":{"description":"Local filesystem path used by this operation.","type":"string"},"types":{"description":"Value for types.","items":{"enum":["object","array","string","number","boolean","null"],"type":"string"},"minItems":1,"type":"array"}},"required":["path","types","observations"],"type":"object"},"type":"array"},"root_type":{"description":"Value for root type.","enum":["object","array","string","number","boolean","null"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["root_type","node_count","max_depth_observed","properties","truncated"],"type":"object"},{"type":"null"}],"description":"Value for input schema shape."},"name":{"description":"Exact name used by this operation.","type":"string"},"owner_origin":{"description":"Value for owner origin.","type":"string"},"registration_source":{"anyOf":[{"properties":{"column":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for column."},"line":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for line."},"url":{"description":"Value for url.","type":"string"}},"required":["url","line","column"],"type":"object"},{"type":"null"}],"description":"Value for registration source."},"tool_key":{"description":"Value for tool key.","pattern":"^webmcp_[a-f0-9]{64}$","type":"string"},"trust":{"const":"page-declared-untrusted","description":"Value for trust.","type":"string"}},"required":["tool_key","name","description","frame_id","frame_url","owner_origin","declaration_kind","input_schema_shape","annotations","registration_source","trust"],"type":"object"},"type":"array"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"}},"required":["schema_version","browser","target","status","tools","completeness","limitations"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for webmcp."}},"required":["inspection"],"type":"object"},"max_changes":{"default":2000,"description":"Maximum normalized change records to retain.","maximum":20000,"minimum":1,"type":"integer"}},"required":["before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after_scenario":{"additionalProperties":false,"description":"Later browser scenario capture.","properties":{"browser":{"additionalProperties":false,"description":"Value for browser.","properties":{"cleanup":{"description":"Value for cleanup.","enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"description":"Operation mode that selects the requested behavior.","enum":["launch","connect"],"type":"string"},"process_ownership":{"description":"Value for process ownership.","enum":["provider-owned","external"],"type":"string"},"product":{"description":"Value for product.","maxLength":1024,"minLength":1,"type":"string"},"version":{"description":"Value for version.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"description":"Value for duration ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"description":"Value for events.","properties":{"dropped":{"description":"Value for dropped.","maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"description":"Value for items.","items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","description":"Value for kind.","type":"string"},"level":{"description":"Value for level.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","maxLength":65536,"type":"string"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","description":"Value for kind.","type":"string"},"message":{"description":"Value for message.","maxLength":65536,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}],"description":"Value for stack."},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","maxLength":1024,"minLength":1,"type":"string"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","maxLength":65536,"type":"string"},"payload_type":{"const":"text","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","type":"null"},"payload_type":{"const":"binary","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","description":"Value for kind.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"description":"Value for suggested filename.","maxLength":1024,"type":"string"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"description":"Value for scenario.","properties":{"action_count":{"description":"Value for action count.","maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"description":"Value for secret references.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"description":"Value for start origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"steps":{"description":"Value for steps.","items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","type":"null"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","description":"Current lifecycle or verification status.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","maxLength":4096,"type":"string"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["failed","cancelled"],"type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"},"before_scenario":{"additionalProperties":false,"description":"Earlier browser scenario capture.","properties":{"browser":{"additionalProperties":false,"description":"Value for browser.","properties":{"cleanup":{"description":"Value for cleanup.","enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"description":"Operation mode that selects the requested behavior.","enum":["launch","connect"],"type":"string"},"process_ownership":{"description":"Value for process ownership.","enum":["provider-owned","external"],"type":"string"},"product":{"description":"Value for product.","maxLength":1024,"minLength":1,"type":"string"},"version":{"description":"Value for version.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"description":"Value for duration ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"description":"Value for events.","properties":{"dropped":{"description":"Value for dropped.","maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"description":"Value for items.","items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","description":"Value for kind.","type":"string"},"level":{"description":"Value for level.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"description":"Value for text.","maxLength":65536,"type":"string"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","description":"Value for kind.","type":"string"},"message":{"description":"Value for message.","maxLength":65536,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}],"description":"Value for stack."},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","type":"null"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"description":"Value for failure.","maxLength":1024,"minLength":1,"type":"string"},"header_names":{"description":"Value for header names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","description":"Value for kind.","type":"string"},"method":{"description":"Value for method.","maxLength":32,"minLength":1,"type":"string"},"resource_type":{"description":"Value for resource type.","maxLength":64,"minLength":1,"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","type":"null"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","maxLength":65536,"type":"string"},"payload_type":{"const":"text","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"description":"Bounded byte count for payload.","maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"description":"Value for payload text.","type":"null"},"payload_type":{"const":"binary","description":"Value for payload type.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"description":"Value for truncated.","type":"boolean"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"description":"Value for kind.","enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}],"description":"Exact name used by this operation."},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}],"description":"Value for url."}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","description":"Value for kind.","type":"string"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"description":"Value for suggested filename.","maxLength":1024,"type":"string"},"url":{"description":"Value for url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"description":"Value for limitations.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"description":"Value for scenario.","properties":{"action_count":{"description":"Value for action count.","maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"description":"Value for secret references.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"description":"Value for start origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"steps":{"description":"Value for steps.","items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","type":"null"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","description":"Current lifecycle or verification status.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","maxLength":64,"minLength":1,"type":"string"},"after_url":{"description":"Value for after url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"description":"Value for artifacts.","properties":{"accessibility":{"description":"Value for accessibility.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"description":"Value for dom.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"description":"Value for text.","maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"description":"Value for history.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"current_url":{"description":"Value for current url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"description":"Value for length.","maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"description":"Value for navigation entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"description":"Value for type.","enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"description":"Value for screenshot.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"description":"Value for storage.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"additionalProperties":false,"description":"Value for value.","properties":{"cookies":{"description":"Value for cookies.","items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"description":"Value for domain.","maxLength":2048,"type":"string"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"type":"string"},"value_sha256":{"description":"Exact SHA-256 digest of value.","type":"null"},"value_state":{"const":"redacted-secret","description":"Value for value state.","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"description":"Value for url.","oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","description":"Value for state.","type":"string"},"value":{"description":"Value for value.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","description":"Value for state.","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","description":"Value for state.","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"description":"Value for observed.","maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"},"retained":{"description":"Value for retained.","maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","description":"Value for state.","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"description":"Value for before url.","properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"description":"Value for origin."},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"description":"Value for redacted.","type":"boolean"},"url":{"description":"Value for url.","maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"description":"Value for completeness.","oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","prefixItems":[],"type":"array"},"status":{"const":"complete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"description":"Value for equality eligible.","type":"boolean"},"missing_sections":{"description":"Value for missing sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","description":"Current lifecycle or verification status.","type":"string"},"truncated_sections":{"description":"Value for truncated sections.","items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"description":"Value for elapsed ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"description":"Structured, caller-actionable error when the operation fails.","maxLength":4096,"type":"string"},"event_sequence_end":{"description":"Value for event sequence end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"description":"Value for event sequence start.","maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["failed","cancelled"],"type":"string"},"step_id":{"description":"Value for step id.","maxLength":64,"minLength":1,"type":"string"},"step_index":{"description":"Value for step index.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"},"max_changes":{"default":2000,"description":"Maximum normalized change records to retain.","maximum":20000,"minimum":1,"type":"integer"},"normalization":{"additionalProperties":false,"default":{"rules":[]},"description":"Exact-literal normalization policy.","properties":{"rules":{"default":[],"description":"Value for rules.","items":{"additionalProperties":false,"properties":{"artifacts":{"description":"Artifact families whose durable string fields use this rule.","items":{"enum":["action_state","dom","accessibility","url","history","storage","events"],"type":"string"},"maxItems":7,"minItems":1,"type":"array"},"match":{"description":"Exact public literal to replace; regular expressions are not used.","maxLength":4096,"minLength":1,"type":"string"},"replacement":{"description":"Recorded replacement text used in normalized comparison.","maxLength":4096,"type":"string"},"rule_id":{"description":"Stable rule identity; rules execute in rule_id order.","maxLength":64,"minLength":1,"type":"string"}},"required":["rule_id","artifacts","match","replacement"],"type":"object"},"maxItems":128,"type":"array"}},"type":"object"}},"required":["before_scenario","after_scenario"],"type":"object"}],"examples":[{"after_scenario":{"browser":{"cleanup":"disconnected-external","mode":"connect","process_ownership":"external","product":"Chromium","version":"149"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"duration_ms":10,"events":{"dropped":0,"items":[],"retained":0},"limitations":[],"scenario":{"action_count":1,"allowed_origins":["https://app.example.test"],"secret_references":[],"start_origin":"https://app.example.test"},"schema_version":1,"steps":[{"action":"scenario_start","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":0,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"scenario_start","step_index":0},{"action":"click","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":10,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"open-settings","step_index":1}]},"before_scenario":{"browser":{"cleanup":"disconnected-external","mode":"connect","process_ownership":"external","product":"Chromium","version":"149"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"duration_ms":10,"events":{"dropped":0,"items":[],"retained":0},"limitations":[],"scenario":{"action_count":1,"allowed_origins":["https://app.example.test"],"secret_references":[],"start_origin":"https://app.example.test"},"schema_version":1,"steps":[{"action":"scenario_start","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":0,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"scenario_start","step_index":0},{"action":"click","after_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"artifacts":{"accessibility":{"state":"not_requested"},"dom":{"state":"not_requested"},"history":{"state":"not_requested"},"screenshot":{"state":"not_requested"},"storage":{"state":"not_requested"},"url":{"state":"not_requested"}},"before_url":{"origin":"https://app.example.test","query_parameter_names":[],"redacted":false,"url":"https://app.example.test/"},"completeness":{"equality_eligible":true,"missing_sections":[],"status":"complete","truncated_sections":[]},"elapsed_ms":10,"error":null,"event_sequence_end":0,"event_sequence_start":1,"status":"completed","step_id":"open-settings","step_index":1}]},"max_changes":2000,"normalization":{"rules":[{"artifacts":["dom","accessibility"],"match":"build-123","replacement":"[BUILD_ID]","rule_id":"volatile-build-id"}]}}],"type":"object"},"kind":"browser-provider","name":"compare_web_captures","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"after_only":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":129,"type":"array"},"aligned_steps":{"maximum":129,"minimum":0,"type":"integer"},"before_only":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":129,"type":"array"},"failures":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["duplicate_before_step_id","duplicate_after_step_id","missing_before_step","missing_after_step","action_mismatch","capture_context_mismatch"],"type":"string"},"reason":{"maxLength":2048,"minLength":1,"type":"string"},"step_id":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["code","step_id","reason"],"type":"object"},"maxItems":520,"type":"array"},"status":{"enum":["aligned","partial","failed"],"type":"string"}},"required":["status","aligned_steps","before_only","after_only","failures"],"type":"object"},"artifact_diffs":{"additionalProperties":false,"properties":{"omitted":{"maximum":1032,"minimum":0,"type":"integer"},"retained":{"maximum":1032,"minimum":0,"type":"integer"},"total":{"maximum":1032,"minimum":0,"type":"integer"}},"required":["total","retained","omitted"],"type":"object"},"comparison_kind":{"const":"browser_scenario","type":"string"},"limitations":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"normalization":{"additionalProperties":false,"properties":{"built_in_rules":{"items":{"enum":["ignore_step_elapsed_ms","ignore_event_sequence","ignore_event_step_index","compare_screenshot_content_digest","compare_normalized_text_content"],"type":"string"},"maxItems":5,"minItems":5,"type":"array"},"rules":{"items":{"additionalProperties":false,"properties":{"artifacts":{"description":"Artifact families whose durable string fields use this rule.","items":{"enum":["action_state","dom","accessibility","url","history","storage","events"],"type":"string"},"maxItems":7,"minItems":1,"type":"array"},"match":{"description":"Exact public literal to replace; regular expressions are not used.","maxLength":4096,"minLength":1,"type":"string"},"replacement":{"description":"Recorded replacement text used in normalized comparison.","maxLength":4096,"type":"string"},"rule_id":{"description":"Stable rule identity; rules execute in rule_id order.","maxLength":64,"minLength":1,"type":"string"}},"required":["rule_id","artifacts","match","replacement"],"type":"object"},"maxItems":128,"type":"array"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["built_in_rules","rules","sha256"],"type":"object"},"overall_status":{"enum":["changed","unchanged","unknown"],"type":"string"},"schema_version":{"const":1,"type":"number"},"steps":{"items":{"additionalProperties":false,"properties":{"after_action":{"maxLength":64,"minLength":1,"type":"string"},"after_step_index":{"maximum":128,"minimum":0,"type":"integer"},"artifact_diffs":{"items":{"additionalProperties":false,"properties":{"after_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"after_state":{"enum":["captured","not_requested","missing","truncated"],"type":"string"},"artifact":{"enum":["action_state","screenshot","dom","accessibility","url","history","storage","events"],"type":"string"},"before_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"before_state":{"enum":["captured","not_requested","missing","truncated"],"type":"string"},"reason":{"anyOf":[{"maxLength":2048,"minLength":1,"type":"string"},{"type":"null"}]},"status":{"enum":["changed","unknown"],"type":"string"}},"required":["artifact","status","before_state","after_state","before_sha256","after_sha256","reason"],"type":"object"},"maxItems":8,"type":"array"},"before_action":{"maxLength":64,"minLength":1,"type":"string"},"before_step_index":{"maximum":128,"minimum":0,"type":"integer"},"omitted_artifact_diffs":{"maximum":8,"minimum":0,"type":"integer"},"status":{"enum":["changed","unchanged","unknown"],"type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"}},"required":["step_id","before_step_index","after_step_index","before_action","after_action","status","artifact_diffs","omitted_artifact_diffs"],"type":"object"},"maxItems":129,"type":"array"}},"required":["schema_version","comparison_kind","overall_status","normalization","alignment","steps","artifact_diffs","limitations"],"type":"object"},{"additionalProperties":false,"properties":{"after_target":{"additionalProperties":false,"properties":{"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url"],"type":"object"},"before_target":{"additionalProperties":false,"properties":{"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url"],"type":"object"},"dimensions":{"additionalProperties":false,"properties":{"accessibility":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}],"default":{"changes":[],"omitted_changes":0,"reason":"Dimension was not recorded by this version 1 capture diff.","status":"unknown","total_changes":0}},"dom_structure":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"metadata":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"network":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"resources":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"scripts":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]},"storage":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}],"default":{"changes":[],"omitted_changes":0,"reason":"Dimension was not recorded by this version 1 capture diff.","status":"unknown","total_changes":0}},"webmcp":{"anyOf":[{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change":{"enum":["added","removed","modified"],"type":"string"},"identity":{"type":"string"}},"required":["identity","change"],"type":"object"},"type":"array"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"type":"null"},"status":{"const":"changed","type":"string"},"total_changes":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["status","total_changes","changes","omitted_changes","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"null"},"status":{"const":"unchanged","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"changes":{"prefixItems":[],"type":"array"},"omitted_changes":{"const":0,"type":"number"},"reason":{"type":"string"},"status":{"const":"unknown","type":"string"},"total_changes":{"const":0,"type":"number"}},"required":["total_changes","changes","omitted_changes","status","reason"],"type":"object"}]}},"required":["dom_structure","scripts","resources","network","metadata","webmcp","accessibility","storage"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"overall_status":{"enum":["changed","unchanged","unknown"],"type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","overall_status","before_target","after_target","dimensions","limitations"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Web Captures"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Capture the current visible viewport of one approved page as a bounded, content-addressed PNG artifact. Screenshot capture requires separate explicit approval and never scrolls, navigates, or evaluates page JavaScript.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_origins":["https://app.example.test"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9222","maximum_image_bytes":4194304,"screenshot_approved":true,"target_id":"TARGET_ID_FROM_LIST_BROWSER_TARGETS"}],"properties":{"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"maximum_image_bytes":{"default":4194304,"description":"Bounded byte count for maximum image.","maximum":8388608,"minimum":1,"type":"integer"},"screenshot_approved":{"const":true,"description":"Explicit operator approval for screenshot.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_origins","target_id","approved","screenshot_approved"],"type":"object"},"kind":"browser-provider","name":"capture_web_screenshot","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"captured_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"target":{"additionalProperties":false,"properties":{"origin":{"type":"string"},"target_id":{"type":"string"},"url":{"type":"string"}},"required":["target_id","url","origin"],"type":"object"},"viewport":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"}},"required":["schema_version","browser","target","captured_at","viewport","artifact","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Web Screenshot"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Compare two self-verifying PNG screenshot artifacts with bounded local pixel metrics. Returns exact changed-pixel ratios and channel deltas without OCR or external services.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"after":{"bytes":70,"data_base64":"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==","media_type":"image/png","sha256":"153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c","uri":"rea://web-screenshot/sha256/153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"},"before":{"bytes":70,"data_base64":"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==","media_type":"image/png","sha256":"153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c","uri":"rea://web-screenshot/sha256/153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"},"channel_threshold":0,"maximum_pixels":16000000}],"properties":{"after":{"description":"The later or right-hand observation to compare.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"before":{"description":"The earlier or left-hand observation to compare.","properties":{"bytes":{"description":"Value for bytes.","maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"description":"Value for data base64.","maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","description":"Value for media type.","type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"description":"Value for uri.","pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"},"channel_threshold":{"default":0,"description":"Value for channel threshold.","maximum":255,"minimum":0,"type":"integer"},"maximum_pixels":{"default":16000000,"description":"Value for maximum pixels.","maximum":32000000,"minimum":1,"type":"integer"}},"required":["before","after"],"type":"object"},"kind":"browser-provider","name":"compare_web_screenshots","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"const":0,"type":"number"},"changed_ratio":{"const":0,"type":"number"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"maximum":255,"minimum":0,"type":"integer"},"mean_absolute_channel_delta":{"maximum":255,"minimum":0,"type":"number"},"schema_version":{"const":1,"type":"number"},"status":{"const":"identical","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"changed_ratio":{"exclusiveMinimum":0,"maximum":1,"type":"number"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"exclusiveMinimum":0,"maximum":255,"type":"integer"},"mean_absolute_channel_delta":{"exclusiveMinimum":0,"maximum":255,"type":"number"},"schema_version":{"const":1,"type":"number"},"status":{"const":"different","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"before":{"additionalProperties":false,"properties":{"height":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"width":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["width","height"],"type":"object"},"changed_pixels":{"type":"null"},"changed_ratio":{"type":"null"},"channel_threshold":{"maximum":255,"minimum":0,"type":"integer"},"compared_pixels":{"const":0,"type":"number"},"limitations":{"items":{"type":"string"},"type":"array"},"maximum_channel_delta":{"type":"null"},"mean_absolute_channel_delta":{"type":"null"},"schema_version":{"const":1,"type":"number"},"status":{"const":"dimension_mismatch","type":"string"}},"required":["schema_version","before","after","channel_threshold","limitations","status","compared_pixels","changed_pixels","changed_ratio","maximum_channel_delta","mean_absolute_channel_delta"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Web Screenshots"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Run one approved, bounded browser scenario through Playwright. Launch mode owns and terminates a temporary browser profile; connect mode attaches to one exact loopback CDP target and disconnects without terminating the external browser. Only the fixed action vocabulary is accepted. Navigation, storage, requests, redirects, secrets, redaction, captures, and limits must be declared before execution. Returns step-indexed Evidence with screenshots, DOM, accessibility, URL/history/storage state, runtime events, explicit missing/truncated sections, and equality eligibility.","effects":{"accessesNetwork":true,"changesUiState":true,"idempotent":false,"launchesProcess":true,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"actions":[{"action":"wait_for","locator":{"kind":"test_id","value":"application-ready"},"state":"visible","step_id":"ready"}],"allowed_origins":["https://app.example.test"],"approved":true,"browser":{"cleanup":"close-and-delete-profile","executable_path":"/opt/chromium/chrome","headless":true,"mode":"launch","user_data":"temporary-owned"},"capture":{"after_each_step":["screenshot","url","accessibility"],"at_end":["dom","history","storage"],"events":["console","page-errors","network","websockets"]},"environment":{"color_scheme":"light","locale":"en-US","reduced_motion":"reduce","service_workers":"block","timezone":"UTC","viewport":{"device_scale_factor":1,"height":720,"width":1280}},"limits":{"action_timeout_ms":5000,"max_accessibility_nodes":10000,"max_dom_nodes":10000,"max_duration_ms":60000,"max_events":2000,"max_frames":100,"max_popups":10,"max_screenshot_bytes":4194304,"max_screenshots":16,"max_storage_entries":256,"max_total_metadata_bytes":4194304,"max_websockets":100,"max_workers":20,"navigation_timeout_ms":10000},"redaction":{"header_names":["authorization","cookie","proxy-authorization","set-cookie"],"query_parameter_names":[],"secret_values":"replace-with-secret-reference"},"request_replay":{"mode":"disabled"},"schema_version":1,"secrets":[],"start_url":{"query":[],"url":"https://app.example.test/"},"storage":{"cookies":[],"local_storage":[],"session_storage":[]}}],"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"action":{"const":"goto","description":"Value for action.","type":"string"},"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"wait_until":{"description":"Value for wait until.","enum":["commit","domcontentloaded","load"],"type":"string"}},"required":["step_id","action","destination","wait_until"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"click","description":"Value for action.","type":"string"},"button":{"default":"left","description":"Value for button.","enum":["left","middle","right"],"type":"string"},"click_count":{"default":1,"description":"Value for click count.","maximum":3,"minimum":1,"type":"integer"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"fill","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["step_id","action","locator","value"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"press","description":"Value for action.","type":"string"},"key":{"description":"Value for key.","maxLength":64,"minLength":1,"type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator","key"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"select_option","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["step_id","action","locator","value"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"description":"Value for action.","enum":["check","uncheck"],"type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"wait_for","description":"Value for action.","type":"string"},"locator":{"description":"Value for locator.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"test_id","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":512,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"exact":{"const":true,"description":"Value for exact.","type":"boolean"},"kind":{"const":"role","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"role":{"description":"Value for role.","enum":["button","checkbox","combobox","dialog","link","listbox","menuitem","option","radio","slider","spinbutton","switch","tab","textbox"],"type":"string"}},"required":["kind","role","name","exact"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"kind":{"const":"css","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","selector","approved"],"type":"object"}]},"state":{"description":"Value for state.","enum":["attached","detached","visible","hidden"],"type":"string"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"timeout_ms":{"description":"Value for timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["step_id","action","locator","state"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"const":"wait_for_timeout","description":"Value for action.","type":"string"},"duration_ms":{"description":"Value for duration ms.","maximum":60000,"minimum":1,"type":"integer"},"step_id":{"description":"Value for step id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["step_id","action","duration_ms"],"type":"object"}]},"maxItems":128,"minItems":1,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"browser":{"description":"Value for browser.","oneOf":[{"additionalProperties":false,"properties":{"cleanup":{"const":"close-and-delete-profile","description":"Value for cleanup.","type":"string"},"executable_path":{"description":"Local filesystem path for executable.","maxLength":4096,"minLength":1,"type":"string"},"headless":{"const":true,"description":"Value for headless.","type":"boolean"},"mode":{"const":"launch","description":"Operation mode that selects the requested behavior.","type":"string"},"user_data":{"const":"temporary-owned","description":"Value for user data.","type":"string"}},"required":["mode","executable_path","headless","user_data","cleanup"],"type":"object"},{"additionalProperties":false,"properties":{"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"cleanup":{"const":"disconnect-only","description":"Value for cleanup.","type":"string"},"mode":{"const":"connect","description":"Operation mode that selects the requested behavior.","type":"string"},"ownership":{"const":"external","description":"Value for ownership.","type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["mode","cdp_endpoint","target_id","ownership","cleanup"],"type":"object"}]},"capture":{"additionalProperties":false,"description":"Value for capture.","properties":{"after_each_step":{"description":"Value for after each step.","items":{"enum":["screenshot","dom","accessibility","url","history","storage"],"type":"string"},"maxItems":6,"type":"array"},"at_end":{"description":"Value for at end.","items":{"enum":["screenshot","dom","accessibility","url","history","storage"],"type":"string"},"maxItems":6,"type":"array"},"events":{"description":"Value for events.","items":{"enum":["console","page-errors","network","websockets","frames","workers","popups","downloads"],"type":"string"},"type":"array"}},"required":["after_each_step","at_end","events"],"type":"object"},"environment":{"additionalProperties":false,"description":"Value for environment.","properties":{"color_scheme":{"description":"Value for color scheme.","enum":["light","dark","no-preference"],"type":"string"},"locale":{"description":"Value for locale.","maxLength":64,"minLength":2,"pattern":"^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$","type":"string"},"reduced_motion":{"description":"Value for reduced motion.","enum":["reduce","no-preference"],"type":"string"},"service_workers":{"const":"block","description":"Value for service workers.","type":"string"},"timezone":{"description":"Value for timezone.","maxLength":128,"minLength":1,"pattern":"^[A-Za-z0-9_+-]+(?:\\\\/[A-Za-z0-9_+-]+)*$","type":"string"},"viewport":{"additionalProperties":false,"description":"Value for viewport.","properties":{"device_scale_factor":{"default":1,"description":"Value for device scale factor.","maximum":4,"minimum":0.5,"type":"number"},"height":{"description":"Value for height.","maximum":4320,"minimum":240,"type":"integer"},"width":{"description":"Value for width.","maximum":7680,"minimum":320,"type":"integer"}},"required":["width","height"],"type":"object"}},"required":["viewport","locale","timezone","color_scheme","reduced_motion","service_workers"],"type":"object"},"limits":{"additionalProperties":false,"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"action_timeout_ms":{"description":"Value for action timeout ms.","maximum":60000,"minimum":1,"type":"integer"},"max_accessibility_nodes":{"description":"Maximum permitted accessibility nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_dom_nodes":{"description":"Maximum permitted dom nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_duration_ms":{"description":"Maximum permitted duration ms for this operation.","maximum":300000,"minimum":100,"type":"integer"},"max_events":{"description":"Maximum permitted events for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_frames":{"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_popups":{"description":"Maximum permitted popups for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_screenshot_bytes":{"description":"Maximum permitted screenshot bytes for this operation.","maximum":8388608,"minimum":1,"type":"integer"},"max_screenshots":{"description":"Maximum permitted screenshots for this operation.","maximum":256,"minimum":0,"type":"integer"},"max_storage_entries":{"description":"Maximum permitted storage entries for this operation.","maximum":512,"minimum":0,"type":"integer"},"max_total_metadata_bytes":{"description":"Maximum permitted total metadata bytes for this operation.","maximum":67108864,"minimum":1024,"type":"integer"},"max_websockets":{"description":"Maximum permitted websockets for this operation.","maximum":10000,"minimum":0,"type":"integer"},"max_workers":{"description":"Maximum permitted workers for this operation.","maximum":1000,"minimum":0,"type":"integer"},"navigation_timeout_ms":{"description":"Value for navigation timeout ms.","maximum":60000,"minimum":1,"type":"integer"}},"required":["max_duration_ms","action_timeout_ms","navigation_timeout_ms","max_events","max_frames","max_workers","max_popups","max_websockets","max_dom_nodes","max_accessibility_nodes","max_screenshots","max_screenshot_bytes","max_storage_entries","max_total_metadata_bytes"],"type":"object"},"redaction":{"additionalProperties":false,"description":"Value for redaction.","properties":{"header_names":{"description":"Value for header names.","items":{"maxLength":256,"minLength":1,"type":"string"},"maxItems":128,"type":"array"},"query_parameter_names":{"description":"Value for query parameter names.","items":{"maxLength":256,"minLength":1,"type":"string"},"maxItems":128,"type":"array"},"secret_values":{"const":"replace-with-secret-reference","description":"Value for secret values.","type":"string"}},"required":["secret_values"],"type":"object"},"request_replay":{"description":"Value for request replay.","oneOf":[{"additionalProperties":false,"properties":{"mode":{"const":"disabled","description":"Operation mode that selects the requested behavior.","type":"string"}},"required":["mode"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"const":"exact","description":"Operation mode that selects the requested behavior.","type":"string"},"routes":{"description":"Value for routes.","items":{"additionalProperties":false,"properties":{"method":{"description":"Value for method.","enum":["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS"],"type":"string"},"request":{"additionalProperties":false,"description":"Value for request.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"response":{"description":"Value for response.","oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]},"headers":{"description":"Value for headers.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+\\\\-.^_`|~0-9A-Za-z]+$","type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"kind":{"const":"response","description":"Value for kind.","type":"string"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"}},"required":["kind","status"],"type":"object"},{"additionalProperties":false,"properties":{"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"kind":{"const":"redirect","description":"Value for kind.","type":"string"},"status":{"anyOf":[{"const":301,"type":"number"},{"const":302,"type":"number"},{"const":303,"type":"number"},{"const":307,"type":"number"},{"const":308,"type":"number"}],"description":"Current lifecycle or verification status."}},"required":["kind","status","destination"],"type":"object"}]},"route_id":{"description":"Value for route id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["route_id","method","request","response"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"unmatched":{"description":"Value for unmatched.","enum":["abort","passthrough-approved-origins"],"type":"string"}},"required":["mode","unmatched","routes"],"type":"object"}]},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"secrets":{"default":[],"description":"Value for secrets.","items":{"additionalProperties":false,"properties":{"environment_variable":{"description":"Value for environment variable.","pattern":"^[A-Z_][A-Z0-9_]{0,127}$","type":"string"},"purpose":{"description":"Value for purpose.","enum":["input","storage","request-replay"],"type":"string"},"redaction":{"const":"replace-with-secret-reference","description":"Value for redaction.","type":"string"},"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["secret_id","environment_variable","purpose","redaction"],"type":"object"},"maxItems":64,"type":"array"},"start_url":{"additionalProperties":false,"description":"Value for start url.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"storage":{"additionalProperties":false,"description":"Value for storage.","properties":{"cookies":{"description":"Value for cookies.","items":{"additionalProperties":false,"properties":{"destination":{"additionalProperties":false,"description":"Value for destination.","properties":{"query":{"default":[],"description":"Non-empty feature or text query to investigate.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":256,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":64,"type":"array"},"url":{"description":"Value for url.","maxLength":65536,"minLength":1,"type":"string"}},"required":["url"],"type":"object"},"http_only":{"description":"Value for http only.","type":"boolean"},"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"same_site":{"description":"Value for same site.","enum":["Strict","Lax","None"],"type":"string"},"secure":{"description":"Value for secure.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value","destination","http_only","secure","same_site"],"type":"object"},"maxItems":128,"type":"array"},"local_storage":{"description":"Value for local storage.","items":{"additionalProperties":false,"properties":{"entries":{"description":"Value for entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":128,"type":"array"},"origin":{"description":"Value for origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["origin","entries"],"type":"object"},"maxItems":32,"type":"array"},"session_storage":{"description":"Value for session storage.","items":{"additionalProperties":false,"properties":{"entries":{"description":"Value for entries.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","maxLength":1024,"minLength":1,"type":"string"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"classification":{"const":"public","description":"Value for classification.","type":"string"},"source":{"const":"literal","description":"Value for source.","type":"string"},"value":{"description":"Value for value.","maxLength":65536,"type":"string"}},"required":["source","value","classification"],"type":"object"},{"additionalProperties":false,"properties":{"secret_id":{"description":"Value for secret id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"source":{"const":"secret","description":"Value for source.","type":"string"}},"required":["source","secret_id"],"type":"object"}]}},"required":["name","value"],"type":"object"},"maxItems":128,"type":"array"},"origin":{"description":"Value for origin.","maxLength":2048,"minLength":1,"type":"string"}},"required":["origin","entries"],"type":"object"},"maxItems":32,"type":"array"}},"type":"object"}},"required":["schema_version","browser","start_url","allowed_origins","environment","actions","storage","request_replay","redaction","capture","limits","approved"],"type":"object"},"kind":"browser-provider","name":"capture_browser_scenario","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"cleanup":{"enum":["terminated-owned-process","disconnected-external"],"type":"string"},"mode":{"enum":["launch","connect"],"type":"string"},"process_ownership":{"enum":["provider-owned","external"],"type":"string"},"product":{"maxLength":1024,"minLength":1,"type":"string"},"version":{"maxLength":256,"minLength":1,"type":"string"}},"required":["mode","process_ownership","cleanup","product","version"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"duration_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events":{"additionalProperties":false,"properties":{"dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"kind":{"const":"console","type":"string"},"level":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text":{"maxLength":65536,"type":"string"},"url":{"anyOf":[{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}]}},"required":["sequence","step_index","kind","level","text","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"page-error","type":"string"},"message":{"maxLength":65536,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"stack":{"anyOf":[{"maxLength":262144,"type":"string"},{"type":"null"}]},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","step_index","kind","message","stack"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"type":"null"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"type":"null"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"type":"null"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"response","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"maximum":599,"minimum":100,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"failure":{"maxLength":1024,"minLength":1,"type":"string"},"header_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"kind":{"const":"request-failed","type":"string"},"method":{"maxLength":32,"minLength":1,"type":"string"},"resource_type":{"maxLength":64,"minLength":1,"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"type":"null"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","method","url","resource_type","header_names","kind","status","failure"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-opened","websocket-closed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"maxLength":65536,"type":"string"},"payload_type":{"const":"text","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["websocket-frame-sent","websocket-frame-received"],"type":"string"},"payload_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"payload_text":{"type":"null"},"payload_type":{"const":"binary","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","url","payload_bytes","truncated","payload_type","payload_text"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"enum":["frame-attached","frame-detached","frame-navigated","worker-created","worker-closed","popup-opened","popup-closed"],"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"url":{"anyOf":[{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},{"type":"null"}]}},"required":["sequence","step_index","kind","url","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"download-cancelled","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"suggested_filename":{"maxLength":1024,"type":"string"},"url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["sequence","step_index","kind","suggested_filename","url"],"type":"object"}]},"maxItems":100000,"type":"array"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["retained","dropped","items"],"type":"object"},"limitations":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"scenario":{"additionalProperties":false,"properties":{"action_count":{"maximum":128,"minimum":1,"type":"integer"},"allowed_origins":{"items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"secret_references":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":64,"type":"array"},"start_origin":{"maxLength":2048,"minLength":1,"type":"string"}},"required":["start_origin","allowed_origins","action_count","secret_references"],"type":"object"},"schema_version":{"const":1,"type":"number"},"steps":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action":{"maxLength":64,"minLength":1,"type":"string"},"after_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"properties":{"accessibility":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"current_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"items":{"additionalProperties":false,"properties":{"name":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"cookies":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"null"},"event_sequence_end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"const":"completed","type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"action":{"maxLength":64,"minLength":1,"type":"string"},"after_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"artifacts":{"additionalProperties":false,"properties":{"accessibility":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"dom":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":16777216,"minimum":0,"type":"integer"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"maxLength":1048576,"type":"string"}},"required":["sha256","bytes","text"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"history":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"current_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"navigation_entries":{"items":{"additionalProperties":false,"properties":{"name":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"type":{"enum":["navigate","reload","back_forward","prerender","unknown"],"type":"string"}},"required":["type","name"],"type":"object"},"maxItems":256,"type":"array"}},"required":["length","current_url","navigation_entries"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"screenshot":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"bytes":{"maximum":8388608,"minimum":1,"type":"integer"},"data_base64":{"maxLength":11184815,"type":"string"},"media_type":{"const":"image/png","type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-screenshot\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","data_base64"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"storage":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"cookies":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"domain":{"maxLength":2048,"type":"string"},"http_only":{"type":"boolean"},"name":{"maxLength":1024,"type":"string"},"path":{"maxLength":4096,"type":"string"},"same_site":{"enum":["Strict","Lax","None"],"type":"string"},"secure":{"type":"boolean"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","domain","path","secure","http_only","same_site","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"local_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"},"session_storage":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"value_state":{"const":"hashed","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"maxLength":1024,"type":"string"},"value_sha256":{"type":"null"},"value_state":{"const":"redacted-secret","type":"string"}},"required":["name","value_state","value_sha256"],"type":"object"}]},"maxItems":512,"type":"array"}},"required":["cookies","local_storage","session_storage"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]},"url":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"captured","type":"string"},"value":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"state":{"const":"not_requested","type":"string"}},"required":["state"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"maxLength":1024,"minLength":1,"type":"string"},"state":{"const":"missing","type":"string"}},"required":["state","reason"],"type":"object"},{"additionalProperties":false,"properties":{"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reason":{"maxLength":1024,"minLength":1,"type":"string"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"truncated","type":"string"}},"required":["state","observed","retained","reason"],"type":"object"}]}},"required":["screenshot","dom","accessibility","url","history","storage"],"type":"object"},"before_url":{"additionalProperties":false,"properties":{"origin":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}]},"query_parameter_names":{"items":{"maxLength":256,"type":"string"},"maxItems":256,"type":"array"},"redacted":{"type":"boolean"},"url":{"maxLength":131072,"type":"string"}},"required":["url","origin","query_parameter_names","redacted"],"type":"object"},"completeness":{"oneOf":[{"additionalProperties":false,"properties":{"equality_eligible":{"const":true,"type":"boolean"},"missing_sections":{"prefixItems":[],"type":"array"},"status":{"const":"complete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"},"status":{"const":"incomplete","type":"string"},"truncated_sections":{"prefixItems":[],"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"},{"additionalProperties":false,"properties":{"equality_eligible":{"const":false,"type":"boolean"},"missing_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"type":"array"},"status":{"const":"truncated","type":"string"},"truncated_sections":{"items":{"enum":["action","screenshot","dom","accessibility","url","history","storage","events","frames","workers","popups","websockets"],"type":"string"},"minItems":1,"type":"array"}},"required":["status","equality_eligible","missing_sections","truncated_sections"],"type":"object"}]},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"maxLength":4096,"type":"string"},"event_sequence_end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"event_sequence_start":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"status":{"enum":["failed","cancelled"],"type":"string"},"step_id":{"maxLength":64,"minLength":1,"type":"string"},"step_index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["step_index","step_id","action","elapsed_ms","before_url","after_url","event_sequence_start","event_sequence_end","artifacts","completeness","status","error"],"type":"object"}]},"maxItems":129,"minItems":1,"type":"array"}},"required":["schema_version","browser","scenario","duration_ms","steps","events","completeness","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Browser Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List Electron file:// page targets from an approved user-owned loopback CDP endpoint. Every path is canonicalized and must remain contained by an approved filesystem root, including after symlink resolution.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"allowed_file_roots":["/Applications/Example.app/Contents/Resources"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9223","limit":100,"offset":0}],"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["cdp_endpoint","allowed_file_roots","approved"],"type":"object"},"kind":"electron-provider","name":"list_electron_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"excluded":{"additionalProperties":false,"properties":{"non_page":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_root":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_url":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_root","unsupported_url","non_page"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"}},"required":["target_id","type","title","file_path","attached"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","browser","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Electron Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Passively inspect one approved Electron file page through CDP. Returns root-confined frames, DOM structure, resource paths, and scripts without evaluating renderer JavaScript or invoking Electron APIs; script contents require separate approval.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"include_script_sources":{"const":false,"default":false,"description":"Whether to include script sources in the result.","type":"boolean"},"limits":{"default":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":500,"description":"Maximum permitted scripts for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":false,"default":false,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_file_roots","approved","target_id"],"type":"object"},{"properties":{"allowed_file_roots":{"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"minItems":1,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cdp_endpoint":{"description":"Approved literal loopback Chrome DevTools Protocol endpoint.","maxLength":2048,"minLength":1,"type":"string"},"include_script_sources":{"const":true,"description":"Whether to include script sources in the result.","type":"boolean"},"limits":{"default":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_dom_nodes":{"default":2000,"description":"Maximum permitted dom nodes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_frames":{"default":200,"description":"Maximum permitted frames for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_resources":{"default":2000,"description":"Maximum permitted resources for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_script_source_bytes":{"default":1048576,"description":"Maximum permitted script source bytes for this operation.","maximum":4194304,"minimum":1,"type":"integer"},"max_scripts":{"default":500,"description":"Maximum permitted scripts for this operation.","maximum":2000,"minimum":1,"type":"integer"},"max_total_script_source_bytes":{"default":4194304,"description":"Maximum permitted total script source bytes for this operation.","maximum":16777216,"minimum":1,"type":"integer"},"max_workers":{"default":500,"description":"Maximum permitted workers for this operation.","maximum":5000,"minimum":1,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"source_capture_approved":{"const":true,"description":"Explicit operator approval for source capture.","type":"boolean"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["cdp_endpoint","allowed_file_roots","approved","target_id","include_script_sources","source_capture_approved"],"type":"object"}],"examples":[{"allowed_file_roots":["/Applications/Example.app/Contents/Resources"],"approved":true,"cdp_endpoint":"http://127.0.0.1:9223","include_script_sources":false,"limits":{"max_dom_nodes":2000,"max_frames":200,"max_resources":2000,"max_script_source_bytes":1048576,"max_scripts":500,"max_total_script_source_bytes":4194304,"max_workers":500},"observation_ms":100,"source_capture_approved":false,"target_id":"TARGET_ID_FROM_LIST_ELECTRON_TARGETS"}],"type":"object"},"kind":"electron-provider","name":"inspect_electron_page","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"browser":{"additionalProperties":false,"properties":{"js_version":{"type":"string"},"product":{"type":"string"},"protocol_version":{"type":"string"},"revision":{"type":"string"},"user_agent":{"type":"string"}},"required":["product","protocol_version","revision","user_agent","js_version"],"type":"object"},"capture_window":{"additionalProperties":false,"properties":{"ended_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["started_at","ended_at","observation_ms"],"type":"object"},"completeness":{"additionalProperties":false,"properties":{"attach_limited_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"conditions":{"items":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"maxItems":3,"minItems":1,"type":"array"},"dropped_events":{"additionalProperties":false,"properties":{"console_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"network_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"timeline_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"webmcp_tools":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"websocket_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["scripts","network_requests","console_events","websocket_connections","websocket_frames","webmcp_tools","timeline_events","total"],"type":"object"},"excluded":{"items":{"additionalProperties":false,"properties":{"count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"reason":{"enum":["disallowed_origin","unsupported_url","unattributed_origin","not_approved","out_of_target_scope","provider_unavailable","invalid_protocol_value"],"type":"string"},"section":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"}},"required":["section","reason","count"],"type":"object"},"type":"array"},"policy_filtered_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"status":{"enum":["complete_within_window","policy_filtered","attach_limited","truncated"],"type":"string"},"truncated_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"},"unavailable_sections":{"items":{"enum":["frames","dom","accessibility","scripts","script_sources","resources","network_requests","network_initiators","console_events","console_text","websocket_connections","websocket_frames","websocket_shapes","json_body_shapes","workers","storage","storage_keys","metadata","webmcp_tools","screenshot","source_maps","timeline"],"type":"string"},"type":"array"}},"required":["status","conditions","policy_filtered_sections","attach_limited_sections","truncated_sections","unavailable_sections","excluded","dropped_events"],"type":"object"},"dom":{"additionalProperties":false,"properties":{"nodes":{"items":{"additionalProperties":false,"properties":{"attribute_names":{"items":{"type":"string"},"type":"array"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_name":{"type":"string"},"node_type":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_value_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parent_index":{"maximum":9007199254740991,"minimum":-1,"type":"integer"}},"required":["index","parent_index","node_type","node_name","node_value_length","attribute_names"],"type":"object"},"type":"array"},"total_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_nodes","nodes"],"type":"object"},"frames":{"items":{"additionalProperties":false,"properties":{"file_path":{"type":"string"},"frame_id":{"type":"string"},"parent_frame_id":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["frame_id","parent_frame_id","file_path"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"resources":{"items":{"additionalProperties":false,"properties":{"content_size":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}]},"file_path":{"type":"string"},"mime_type":{"type":"string"},"resource_key":{"pattern":"^electron_resource_[a-f0-9]{64}$","type":"string"},"type":{"type":"string"}},"required":["resource_key","file_path","type","mime_type","content_size"],"type":"object"},"type":"array"},"schema_version":{"const":1,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"type":"string"},"file_path":{"type":"string"},"frame_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"is_module":{"type":"boolean"},"language":{"anyOf":[{"type":"string"},{"type":"null"}]},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"script_key":{"pattern":"^electron_script_[a-f0-9]{64}$","type":"string"},"source":{"oneOf":[{"additionalProperties":false,"properties":{"included":{"const":false,"type":"boolean"},"reason":{"type":"string"}},"required":["included","reason"],"type":"object"},{"additionalProperties":false,"properties":{"artifact":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"charset":{"const":"utf-8","type":"string"},"media_type":{"maxLength":256,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"text":{"type":"string"},"uri":{"pattern":"^rea:\\\\/\\\\/web-content\\\\/sha256\\\\/[a-f0-9]{64}$","type":"string"}},"required":["uri","sha256","bytes","media_type","charset","text"],"type":"object"},"included":{"const":true,"type":"boolean"}},"required":["included","artifact"],"type":"object"}]}},"required":["script_key","frame_id","file_path","cdp_hash","length","is_module","language","source"],"type":"object"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","items"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"target_id":{"type":"string"},"title":{"type":"string"},"type":{"type":"string"}},"required":["target_id","type","title","file_path","attached"],"type":"object"},"workers":{"default":[],"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"file_path":{"type":"string"},"opener_target_id":{"anyOf":[{"maxLength":256,"minLength":1,"type":"string"},{"type":"null"}]},"parent_frame_id":{"anyOf":[{"maxLength":256,"minLength":1,"type":"string"},{"type":"null"}]},"target_id":{"maxLength":256,"minLength":1,"type":"string"},"type":{"maxLength":100,"minLength":1,"type":"string"}},"required":["target_id","type","file_path","attached","opener_target_id","parent_frame_id"],"type":"object"},"type":"array"}},"required":["schema_version","browser","target","capture_window","completeness","frames","dom","scripts","resources","workers","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Inspect Electron Page"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Statically reconstruct one approved local ASAR or extracted JavaScript application without executing it. The default summary returns architecture/security counts, top evidence-backed findings, unknowns, and paged graph resource URIs; request detail=full only when the complete graph must be returned immediately. Identical inputs are deterministic, so do not repeat the call or reread full Evidence without a specific missing detail.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"detail":"summary","format":"auto","input_path":"/Applications/Example.app/Contents/Resources/app.asar","source_map_read_approved":false}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"detail":{"default":"summary","description":"summary returns bounded findings and paged graph resource URIs; full returns the complete graph only when explicitly required","enum":["summary","full"],"type":"string"},"format":{"default":"auto","description":"Declared input artifact format.","enum":["auto","asar","directory"],"type":"string"},"input_path":{"description":"Local filesystem path for input.","maxLength":16384,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_artifact_entry_bytes":134217728,"max_ast_nodes":2000000,"max_compression_ratio":1000,"max_depth":64,"max_entries":8000,"max_findings":8000,"max_modules":20000,"max_parse_milliseconds":30000,"max_path_bytes":4096,"max_source_map_sources":5000,"max_text_file_bytes":8388608,"max_text_files":5000,"max_total_artifact_bytes":536870912,"max_total_text_bytes":134217728},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_artifact_entry_bytes":{"default":134217728,"description":"Maximum permitted artifact entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_ast_nodes":{"default":2000000,"description":"Maximum permitted ast nodes for this operation.","maximum":20000000,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":64,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_entries":{"default":8000,"description":"Maximum permitted entries for this operation.","maximum":1000000,"minimum":1,"type":"integer"},"max_findings":{"default":8000,"description":"Maximum permitted findings for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_modules":{"default":20000,"description":"Maximum permitted modules for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_parse_milliseconds":{"default":30000,"description":"Maximum permitted parse milliseconds for this operation.","maximum":300000,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_source_map_sources":{"default":5000,"description":"Maximum permitted source map sources for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_text_file_bytes":{"default":8388608,"description":"Maximum permitted text file bytes for this operation.","maximum":67108864,"minimum":1,"type":"integer"},"max_text_files":{"default":5000,"description":"Maximum permitted text files for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_total_artifact_bytes":{"default":536870912,"description":"Maximum permitted total artifact bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_total_text_bytes":{"default":134217728,"description":"Maximum permitted total text bytes for this operation.","maximum":536870912,"minimum":1,"type":"integer"}},"type":"object"},"source_map_read_approved":{"default":false,"description":"Explicit operator approval for source map read.","type":"boolean"}},"required":["input_path","approved"],"type":"object"},"kind":"electron-provider","name":"analyze_javascript_application","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"node_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_kinds":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"}},"required":["kind","count"],"type":"object"},"type":"array"},"pages":{"additionalProperties":false,"properties":{"edges":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"nodes":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"page_limit":{"maximum":500,"minimum":1,"type":"integer"}},"required":["nodes","edges","page_limit"],"type":"object"},"roots":{"additionalProperties":false,"properties":{"items":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["items","total","truncated"],"type":"object"},"top_findings":{"items":{"additionalProperties":false,"properties":{"authority":{"type":"string"},"confidence":{"type":"string"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"$ref":"#/$defs/__schema0"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"state":{"type":"string"}},"required":["node_id","kind","label","authority","state","confidence","location"],"type":"object"},"type":"array"}},"required":["graph_id","node_count","edge_count","roots","node_kinds","top_findings","coverage","limitations","pages"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","summary","statistics","limitations","unknowns","graph"],"type":"object"},{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edge_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"node_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"node_kinds":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"}},"required":["kind","count"],"type":"object"},"type":"array"},"pages":{"additionalProperties":false,"properties":{"edges":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"nodes":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/.*","type":"string"},"page_limit":{"maximum":500,"minimum":1,"type":"integer"}},"required":["nodes","edges","page_limit"],"type":"object"},"roots":{"additionalProperties":false,"properties":{"items":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"type":"array"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["items","total","truncated"],"type":"object"},"top_findings":{"items":{"additionalProperties":false,"properties":{"authority":{"type":"string"},"confidence":{"type":"string"},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"location":{"$ref":"#/$defs/__schema0"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"state":{"type":"string"}},"required":["node_id","kind","label","authority","state","confidence","location"],"type":"object"},"type":"array"}},"required":["graph_id","node_count","edge_count","roots","node_kinds","top_findings","coverage","limitations","pages"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":2,"type":"number"},"semantic_graph":{"additionalProperties":false,"properties":{"coverage":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"fingerprints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"query_tool":{"const":"trace_javascript_semantics","type":"string"},"relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_frontiers":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["graph_id","nodes","relations","unknown_frontiers","fingerprints","coverage","query_tool"],"type":"object"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","summary","statistics","limitations","unknowns","graph","semantic_graph"],"type":"object"}]},{"oneOf":[{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","graph","summary","statistics","limitations"],"type":"object"},{"additionalProperties":false,"properties":{"format":{"enum":["asar","directory"],"type":"string"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"inventory_graph_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"inventory_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":2,"type":"number"},"semantic_graph":{"additionalProperties":false,"properties":{"application_graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"families":{"items":{"additionalProperties":false,"properties":{"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"omitted_relations":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"retained_relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete","partial","unknown","unsupported"],"type":"string"},"unknown_ids":{"items":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"}},"required":["family","status","retained_relations","omitted_relations","unknown_ids"],"type":"object"},"maxItems":12,"minItems":12,"type":"array"},"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_nodes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"omitted_relations":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_nodes","omitted_relations","limits","families"],"type":"object"},"fingerprints":{"items":{"additionalProperties":false,"properties":{"algorithm":{"const":"rea.javascript-semantic-function/v1","type":"string"},"components":{"additionalProperties":false,"properties":{"control_flow_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"effects":{"items":{"enum":["async","child-process","event","network","promise","resource","timer"],"type":"string"},"maxItems":7,"type":"array"},"literal_set_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"normalized_ast_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameter_arity":{"maximum":10000,"minimum":0,"type":"integer"},"relation_shape_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["parameter_arity","normalized_ast_sha256","control_flow_sha256","relation_shape_sha256","literal_set_sha256","effects"],"type":"object"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"fingerprint_id":{"pattern":"^jsrg_fingerprint_[a-f0-9]{64}$","type":"string"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"function_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"status":{"enum":["complete","partial","unavailable"],"type":"string"}},"required":["function_node_id","algorithm","status","components","limitations","evidence","fingerprint_id","fingerprint_sha256"],"type":"object"},"maxItems":20000,"type":"array"},"graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"application_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"function_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"role_key":{"maxLength":1024,"minLength":1,"type":"string"},"source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]}},"required":["artifact_sha256","module_path","source_range","role_key"],"type":"object"},"kind":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["kind","identity","function_node_id","application_node_ids","label","properties","evidence","node_id","identifier_strategy"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"relations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"relation_id":{"pattern":"^jsrg_relation_[a-f0-9]{64}$","type":"string"},"resolution":{"enum":["resolved","candidate"],"type":"string"},"source_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","resolution","properties","evidence","relation_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"root_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptSemanticRelationGraph","type":"string"},"schema_version":{"const":1,"type":"number"},"unknowns":{"items":{"additionalProperties":false,"properties":{"candidate_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reason":{"enum":["ambiguous-target","bound-reached","dynamic-call","dynamic-property","eval-or-generated-code","incomplete-module","missing-source","unsupported-syntax"],"type":"string"},"relation_kinds":{"items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":45,"minItems":1,"type":"array"},"unknown_id":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"}},"required":["node_id","family","relation_kinds","reason","detail","candidate_node_ids","evidence","unknown_id"],"type":"object"},"maxItems":100000,"type":"array"}},"required":["schema","schema_version","root_artifact_sha256","application_graph_id","root_node_ids","nodes","relations","fingerprints","unknowns","coverage","limitations","graph_id"],"type":"object"},"statistics":{"additionalProperties":false,"properties":{"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"invalid_utf8_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"limit_omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nested_asar_containers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parse_failures":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"parsed_javascript_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"policy_filtered_text_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"relevant_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_bytes_read":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"text_files_selected":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated_scopes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"visited_ast_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["relevant_files","nested_asar_containers","text_files_selected","text_bytes_read","omitted_text_files","limit_omitted_text_files","policy_filtered_text_files","invalid_utf8_files","parsed_javascript_files","visited_ast_nodes","findings","modules","parse_failures","truncated_scopes"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"browser_windows":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"context_bridge_apis":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"explicit_web_preferences":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exposed_api_members":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"ipc":{"additionalProperties":false,"properties":{"ambiguous_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"dynamic_channel_operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"literal_channels":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"main_handlers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_listeners":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_literal_renderer_transmissions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["operations","literal_channels","dynamic_channel_operations","renderer_transmissions","renderer_listeners","main_handlers","paired_renderer_transmissions","ambiguous_renderer_transmissions","unpaired_literal_renderer_transmissions"],"type":"object"},"native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"preload_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_native_addon_bindings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"resolved_utility_entrypoints":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sender_validation_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"utility_processes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["browser_windows","explicit_web_preferences","preload_entrypoints","context_bridge_apis","exposed_api_members","ipc","sender_validation_observations","utility_processes","resolved_utility_entrypoints","native_addon_bindings","resolved_native_addon_bindings"],"type":"object"}},"required":["schema_version","input_path","format","root_artifact_sha256","inventory_manifest_id","inventory_graph_sha256","graph","summary","statistics","limitations","semantic_graph"],"type":"object"}]}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Analyze Javascript Application"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Reconcile verified static JavaScript application graphs with existing passive web/Electron CDP, passive V8 Inspector, or provider-owned active Electron Evidence. Active Electron captures contribute an explicitly partial target-only runtime record; they never invent renderer scripts, frames, workers, or execution claims. Exact captured-source digests take priority over caller-declared file/URL mappings; target, frame, script, and worker ambiguity remains explicit, and source-map authority stays separate.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"runtime_observations":[{"authority":"external-service","confidence":"observed","environment":null,"evidence_id":"ev_e9ffe953ecde3cee6f8b1e2e2fc8be64bf58d17b3c680d1230587294f6b02c3a","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"browser":{"js_version":"1","product":"Electron/example","protocol_version":"1.3","revision":"example","user_agent":"Electron example"},"capture_window":{"ended_at":"2026-07-15T00:00:00.100Z","observation_ms":100,"started_at":"2026-07-15T00:00:00.000Z"},"completeness":{"attach_limited_sections":[],"conditions":["complete_within_window"],"dropped_events":{"console_events":0,"network_requests":0,"scripts":0,"timeline_events":0,"total":0,"webmcp_tools":0,"websocket_connections":0,"websocket_frames":0},"excluded":[],"policy_filtered_sections":[],"status":"complete_within_window","truncated_sections":[],"unavailable_sections":[]},"dom":{"nodes":[],"total_nodes":0},"frames":[],"limitations":["Example passive capture."],"resources":[],"schema_version":1,"scripts":{"items":[{"cdp_hash":"example","file_path":"/Applications/Example.app/Contents/Resources/app/renderer.js","frame_id":null,"is_module":true,"language":"JavaScript","length":29,"script_key":"electron_script_4444444444444444444444444444444444444444444444444444444444444444","source":{"artifact":{"bytes":29,"charset":"utf-8","media_type":"text/javascript","sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","text":"export const example = true;\\n","uri":"rea://web-content/sha256/c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"},"included":true}}],"total":1},"target":{"attached":false,"file_path":"/Applications/Example.app/Contents/Resources/app/index.html","target_id":"example-target","title":"Example","type":"page"},"workers":[]},"operation":"inspect_electron_page","parameters":{"allowed_file_roots":["/Applications/Example.app/Contents/Resources/app"],"cdp_endpoint":"http://127.0.0.1:9223","include_script_sources":true,"source_capture_approved":true,"target_id":"example-target"},"predicate_type":"rea.electron-page-inspection/v1","provider":{"id":"rea-cdp-electron","name":"REA Electron file-page CDP observation provider","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"static_layers":[{"analysis":{"authority":"shipped-artifact","confidence":"derived","environment":null,"evidence_id":"ev_9f1239eec535ee47ca0af92a544b16a3b4be7ce7478e0a7a6b6201b91cc39d5c","evidence_links":[],"limitations":[],"locations":[],"normalized_result":{"format":"directory","graph":{"coverage":{"limits":[],"omitted_count":0,"status":"complete","truncated":false},"edges":[],"graph_id":"jag_361585714eb0138287533474fede3727b19167348e3843c577f82b68337c7234","limitations":[],"nodes":[{"identity":{"sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","stability":"global-exact","strategy":"content-digest"},"kind":"javascript-asset","node_id":"jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e","observations":[{"evidence":{"artifact":{"artifact_id":"art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64","available":true,"sha256":"c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"},"authority":"artifact-bytes","confidence":"exact","coverage":{"limits":[],"omitted_count":0,"status":"complete","truncated":false},"evidence_ids":[],"extractor":{"executable_sha256":null,"name":"rea-javascript-application","operation":"inventory-relevant-file","version":"1"},"limitations":[],"location":{"available":true,"value":{"kind":"artifact-path","path":"renderer.js"}},"state":"observed"},"identifier_strategy":{"stability":"observation-exact","strategy":"semantic-content-sha256"},"label":"renderer.js","observation_id":"jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230","properties":{"bytes":29,"path":"renderer.js"}}]}],"root_node_ids":["jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"],"schema":"JavaScriptApplicationGraph","schema_version":1},"input_path":"/Applications/Example.app/Contents/Resources/app","inventory_graph_sha256":"3333333333333333333333333333333333333333333333333333333333333333","inventory_manifest_id":"agm_2222222222222222222222222222222222222222222222222222222222222222","limitations":[],"root_artifact_sha256":"1111111111111111111111111111111111111111111111111111111111111111","schema_version":1,"statistics":{"findings":0,"invalid_utf8_files":0,"limit_omitted_text_files":0,"modules":0,"nested_asar_containers":0,"omitted_text_files":0,"parse_failures":0,"parsed_javascript_files":1,"policy_filtered_text_files":0,"relevant_files":1,"text_bytes_read":29,"text_files_selected":1,"truncated_scopes":0,"visited_ast_nodes":1},"summary":{"browser_windows":0,"context_bridge_apis":0,"explicit_web_preferences":0,"exposed_api_members":0,"ipc":{"ambiguous_renderer_transmissions":0,"dynamic_channel_operations":0,"literal_channels":0,"main_handlers":0,"operations":0,"paired_renderer_transmissions":0,"renderer_listeners":0,"renderer_transmissions":0,"unpaired_literal_renderer_transmissions":0},"native_addon_bindings":0,"preload_entrypoints":0,"resolved_native_addon_bindings":0,"resolved_utility_entrypoints":0,"sender_validation_observations":0,"utility_processes":0}},"operation":"analyze_javascript_application","parameters":{"approved":true,"source_map_read_approved":false},"predicate_type":"rea.javascript-application-analysis/v1","provider":{"id":"rea-javascript-application","name":"REA JavaScript application analyzer","version":"1"},"raw_result":null,"schema_version":2,"subject":{"architecture":null,"digest":{"sha256":"1111111111111111111111111111111111111111111111111111111111111111"},"format":"directory","local_path":"/Applications/Example.app/Contents/Resources/app","name":"app"}},"role":"application"}]}],"properties":{"limits":{"additionalProperties":false,"default":{"max_reconciliation_items":20000,"max_runtime_entities":10000,"max_static_load_states":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_reconciliation_items":{"default":20000,"description":"Maximum permitted reconciliation items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_runtime_entities":{"default":10000,"description":"Maximum permitted runtime entities for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_static_load_states":{"default":20000,"description":"Maximum permitted static load states for this operation.","maximum":50000,"minimum":1,"type":"integer"}},"type":"object"},"runtime_observations":{"description":"Value for runtime observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"static_layers":{"description":"Value for static layers.","items":{"additionalProperties":false,"properties":{"analysis":{"additionalProperties":false,"description":"Value for analysis.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"role":{"description":"Value for role.","enum":["application","cache","assets"],"type":"string"},"runtime_mappings":{"default":[],"description":"Value for runtime mappings.","items":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","description":"Value for artifact prefix.","maxLength":4096,"type":"string"},"kind":{"const":"file-root","description":"Value for kind.","type":"string"},"root":{"description":"Value for root.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","root"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","description":"Value for artifact prefix.","maxLength":4096,"type":"string"},"kind":{"const":"url-prefix","description":"Value for kind.","type":"string"},"prefix":{"description":"Value for prefix.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","prefix"],"type":"object"}]},"maxItems":32,"type":"array"}},"required":["role","analysis"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"}},"required":["static_layers","runtime_observations"],"type":"object"},"kind":"electron-provider","name":"reconcile_javascript_runtime","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"omitted_graph_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_reconciliation_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_runtime_entities":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_static_load_states":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_runtime_entities","omitted_reconciliation_items","omitted_static_load_states","omitted_graph_items"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":40,"minItems":2,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"reconciliation_id":{"pattern":"^jrr_[a-f0-9]{64}$","type":"string"},"reconciliations":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["content-and-location","content-sha256","module-source-sha256","artifact-path","operator-file-mapping","operator-url-mapping","none"],"type":"string"},"candidate_static_count":{"maximum":800000,"minimum":0,"type":"integer"},"candidate_static_nodes":{"items":{"additionalProperties":false,"properties":{"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["static_layer_id","static_node_id"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"entity_kind":{"enum":["target","frame","script","worker"],"type":"string"},"reason":{"enum":["content-and-location-match","unique-content-match","unique-location-match","ambiguous-static-candidates","captured-content-disagrees-with-static-location","no-static-content-match","no-authorized-location-mapping","runtime-frame-unattributed","static-or-runtime-coverage-incomplete","reconciliation-limit-reached"],"type":"string"},"reconciliation_id":{"pattern":"^jrr_item_[a-f0-9]{64}$","type":"string"},"runtime_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"runtime_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"matched","type":"string"}},"required":["reconciliation_id","entity_kind","runtime_evidence_id","runtime_node_id","basis","confidence","reason","candidate_static_count","candidate_static_nodes","static_layer_id","static_node_id","status"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["content-and-location","content-sha256","module-source-sha256","artifact-path","operator-file-mapping","operator-url-mapping","none"],"type":"string"},"candidate_static_count":{"maximum":800000,"minimum":0,"type":"integer"},"candidate_static_nodes":{"items":{"additionalProperties":false,"properties":{"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["static_layer_id","static_node_id"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"entity_kind":{"enum":["target","frame","script","worker"],"type":"string"},"reason":{"enum":["content-and-location-match","unique-content-match","unique-location-match","ambiguous-static-candidates","captured-content-disagrees-with-static-location","no-static-content-match","no-authorized-location-mapping","runtime-frame-unattributed","static-or-runtime-coverage-incomplete","reconciliation-limit-reached"],"type":"string"},"reconciliation_id":{"pattern":"^jrr_item_[a-f0-9]{64}$","type":"string"},"runtime_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"runtime_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"static_layer_id":{"type":"null"},"static_node_id":{"type":"null"},"status":{"enum":["ambiguous","unmatched","unknown"],"type":"string"}},"required":["reconciliation_id","entity_kind","runtime_evidence_id","runtime_node_id","basis","confidence","reason","candidate_static_count","candidate_static_nodes","static_layer_id","static_node_id","status"],"type":"object"}]},"maxItems":50000,"type":"array"},"runtime_captures":{"items":{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"enum":["browser","electron","v8-inspector","electron-active"],"type":"string"},"scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scripts_complete_within_scope":{"type":"boolean"},"target_key":{"maxLength":4096,"minLength":1,"type":"string"},"target_location":{"maxLength":4096,"minLength":1,"type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"workers":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["evidence_id","capture_sha256","kind","target_node_id","target_key","target_location","frames","scripts","workers","scripts_complete_within_scope"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"schema_version":{"const":1,"type":"number"},"source_map_authority":{"additionalProperties":false,"properties":{"limitation":{"maxLength":4096,"minLength":1,"type":"string"},"runtime_script_declarations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_layers_with_read_approval":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"used_for_primary_matching":{"const":false,"type":"boolean"}},"required":["used_for_primary_matching","static_layers_with_read_approval","runtime_script_declarations","limitation"],"type":"object"},"static_layers":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"format":{"enum":["asar","directory"],"type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"input_path":{"maxLength":16384,"minLength":1,"type":"string"},"layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"role":{"enum":["application","cache","assets"],"type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_mappings":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","maxLength":4096,"type":"string"},"kind":{"const":"file-root","type":"string"},"root":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","root","artifact_prefix"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_prefix":{"default":"","maxLength":4096,"type":"string"},"kind":{"const":"url-prefix","type":"string"},"prefix":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","prefix","artifact_prefix"],"type":"object"}]},"maxItems":32,"type":"array"}},"required":["layer_id","role","evidence_id","graph_id","root_artifact_sha256","input_path","format","runtime_mappings"],"type":"object"},"maxItems":8,"minItems":1,"type":"array"},"static_load_states":{"items":{"additionalProperties":false,"properties":{"kind":{"enum":["javascript-asset","javascript-chunk","javascript-module"],"type":"string"},"reason":{"enum":["runtime-script-correspondence","containing-asset-was-loaded","not-observed-in-bounded-capture","layer-outside-runtime-scope","static-or-runtime-coverage-incomplete"],"type":"string"},"runtime_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":10000,"type":"array"},"static_layer_id":{"pattern":"^jrl_[a-f0-9]{64}$","type":"string"},"static_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["loaded","resident-in-loaded-asset","not-observed-in-capture","unknown"],"type":"string"}},"required":["static_layer_id","static_node_id","kind","status","runtime_node_ids","reason"],"type":"object"},"maxItems":50000,"type":"array"},"summary":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"matched":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_frames":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_scripts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_targets":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_workers":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_loaded":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_not_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_resident":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["runtime_targets","runtime_frames","runtime_scripts","runtime_workers","matched","ambiguous","unmatched","unknown","static_loaded","static_resident","static_not_observed","static_unknown"],"type":"object"}},"required":["schema_version","reconciliation_id","static_layers","runtime_captures","graph","summary","reconciliations","static_load_states","source_map_authority","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Reconcile Javascript Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Use this for an explicitly approved, provider-owned Electron run when passive CDP or Inspector observation cannot exercise application behavior. REA owns startup and teardown, accepts bounded click/wait actions plus window-targeted renderer reload/crash and synthetic open-url/second-instance delivery, and returns correlated window/WebContents/process/preload/session/navigation/shell/IPC evidence without retaining payload values. Results identify observed and unavailable event families, coverage status, action targets, and truncation. External shell, navigation, permission, download, popup, updater, and OS-integration effects are blocked and recorded. Use passive Electron tools for observation-only work.","effects":{"accessesNetwork":true,"changesUiState":true,"idempotent":false,"launchesProcess":true,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":true,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"actions":[{"kind":"click","selector":"#run","step_id":"exercise-ipc"}],"application_path":"/Applications/Example.app/Contents/Resources/main.js","application_root":"/Applications/Example.app/Contents/Resources","approved":true,"args":[],"executable_path":"/Applications/Electron.app/Contents/MacOS/Electron","limits":{"action_timeout_ms":5000,"max_actions":20,"max_duration_ms":60000,"max_ipc_events":2000,"max_processes":32,"max_windows":32},"schema_version":1}],"properties":{"actions":{"default":[],"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"click","description":"Value for kind.","type":"string"},"selector":{"description":"Value for selector.","maxLength":512,"minLength":1,"type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind","selector"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":10000,"minimum":0,"type":"integer"},"kind":{"const":"wait","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind","duration_ms"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"renderer-reload","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"renderer-crash","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"window_index":{"default":0,"description":"Value for window index.","maximum":99,"minimum":0,"type":"integer"}},"required":["step_id","kind"],"type":"object"},{"additionalProperties":false,"properties":{"delivery":{"description":"Value for delivery.","enum":["open-url","second-instance"],"type":"string"},"kind":{"const":"deep-link","description":"Value for kind.","type":"string"},"step_id":{"description":"Value for step id.","maxLength":128,"minLength":1,"type":"string"},"url":{"description":"Value for url.","maxLength":4096,"minLength":1,"type":"string"}},"required":["step_id","kind","delivery","url"],"type":"object"}]},"maxItems":100,"type":"array"},"application_path":{"description":"Local filesystem path for application.","maxLength":16384,"minLength":1,"type":"string"},"application_root":{"description":"Approved canonical filesystem application root.","maxLength":16384,"minLength":1,"type":"string"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"args":{"default":[],"description":"Value for args.","items":{"maxLength":4096,"type":"string"},"maxItems":32,"type":"array"},"executable_path":{"description":"Local filesystem path for executable.","maxLength":16384,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"action_timeout_ms":5000,"max_actions":20,"max_duration_ms":60000,"max_ipc_events":2000,"max_processes":32,"max_runtime_events":5000,"max_windows":32},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"action_timeout_ms":{"default":5000,"description":"Value for action timeout ms.","maximum":30000,"minimum":1,"type":"integer"},"max_actions":{"default":20,"description":"Maximum permitted actions for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_duration_ms":{"default":60000,"description":"Maximum permitted duration ms for this operation.","maximum":120000,"minimum":1,"type":"integer"},"max_ipc_events":{"default":2000,"description":"Maximum permitted ipc events for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_processes":{"default":32,"description":"Maximum permitted processes for this operation.","maximum":100,"minimum":1,"type":"integer"},"max_runtime_events":{"default":5000,"description":"Maximum permitted runtime events for this operation.","maximum":20000,"minimum":1,"type":"integer"},"max_windows":{"default":32,"description":"Maximum permitted windows for this operation.","maximum":100,"minimum":1,"type":"integer"}},"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","executable_path","application_path","application_root","approved"],"type":"object"},"kind":"electron-provider","name":"capture_electron_scenario","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"actions":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"null"},"kind":{"enum":["click","wait","renderer-reload","renderer-crash","deep-link"],"type":"string"},"status":{"const":"completed","type":"string"},"step_id":{"maxLength":128,"minLength":1,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"window_index":{"anyOf":[{"maximum":99,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["step_id","kind","window_index","target","elapsed_ms","status","error"],"type":"object"},{"additionalProperties":false,"properties":{"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"error":{"type":"string"},"kind":{"enum":["click","wait","renderer-reload","renderer-crash","deep-link"],"type":"string"},"status":{"enum":["failed","cancelled"],"type":"string"},"step_id":{"maxLength":128,"minLength":1,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"window_index":{"anyOf":[{"maximum":99,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["step_id","kind","window_index","target","elapsed_ms","status","error"],"type":"object"}]},"maxItems":100,"type":"array"},"application":{"additionalProperties":false,"properties":{"application_path":{"maxLength":16384,"minLength":1,"type":"string"},"cleanup":{"const":"terminated-owned-process","type":"string"},"electron_version":{"maxLength":256,"minLength":1,"type":"string"},"executable_path":{"maxLength":16384,"minLength":1,"type":"string"},"process_ownership":{"const":"provider-owned","type":"string"}},"required":["executable_path","application_path","electron_version","process_ownership","cleanup"],"type":"object"},"coverage":{"additionalProperties":false,"default":{"observed_event_families":[],"observed_roles":[],"pre_capture_activity":"unavailable","status":"partial_attach","unavailable_event_families":[]},"properties":{"observed_event_families":{"items":{"maxLength":128,"type":"string"},"maxItems":32,"type":"array"},"observed_roles":{"items":{"maxLength":128,"type":"string"},"maxItems":16,"type":"array"},"pre_capture_activity":{"const":"unavailable","type":"string"},"status":{"enum":["complete","partial_attach","capture_truncated","hook_conflict","target_exited","cleanup_failed"],"type":"string"},"unavailable_event_families":{"items":{"maxLength":128,"type":"string"},"maxItems":32,"type":"array"}},"required":["status","observed_event_families","unavailable_event_families","observed_roles","pre_capture_activity"],"type":"object"},"ipc":{"additionalProperties":false,"properties":{"events":{"items":{"additionalProperties":false,"properties":{"argument_shapes":{"items":{"maxLength":64,"type":"string"},"maxItems":32,"type":"array"},"argument_shapes_truncated":{"default":false,"type":"boolean"},"artifact_path":{"anyOf":[{"maxLength":16384,"type":"string"},{"type":"null"}],"default":null},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null},"capture_method":{"default":"api-wrapper","enum":["api-wrapper","event-emitter","process-hook"],"type":"string"},"channel":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"channel_truncated":{"default":false,"type":"boolean"},"correlation_id":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"direction":{"anyOf":[{"enum":["renderer-to-main","main-to-renderer","main-to-utility","utility-to-main"],"type":"string"},{"type":"null"}]},"error":{"type":"boolean"},"event":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"frame":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"kind":{"enum":["main-handler-invocation","main-event-invocation","utility-process-fork","utility-process-message","ipc-main-to-renderer","ipc-utility-to-main","ipc-renderer-send","ipc-renderer-invoke","ipc-renderer-post-message"],"type":"string"},"phase":{"anyOf":[{"enum":["attempted","completed","blocked","failed","observed"],"type":"string"},{"type":"null"}]},"process_type":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"receiver":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"result_shape":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"sender":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"default":"electron-active-hook","maxLength":64,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]}},"required":["sequence","correlation_id","kind","channel","channel_truncated","frame","argument_shapes","argument_shapes_truncated","result_shape","process_type","source","capture_method","artifact_path","artifact_sha256","error"],"type":"object"},"maxItems":10000,"type":"array"},"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["events","observed","retained","truncated"],"type":"object"},"limitations":{"items":{"maxLength":4096,"type":"string"},"maxItems":100,"type":"array"},"processes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"name":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"service_name":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"type":{"maxLength":128,"minLength":1,"type":"string"}},"required":["pid","type","name","service_name"],"type":"object"},"maxItems":100,"type":"array"},"truncated":{"type":"boolean"}},"required":["items","truncated"],"type":"object"},"schema_version":{"const":1,"type":"number"},"timeline":{"additionalProperties":false,"default":{"events":[],"observed":0,"retained":0,"truncated":false},"properties":{"events":{"items":{"additionalProperties":false,"properties":{"argument_shapes":{"items":{"maxLength":64,"type":"string"},"maxItems":32,"type":"array"},"argument_shapes_truncated":{"type":"boolean"},"artifact_path":{"anyOf":[{"maxLength":16384,"type":"string"},{"type":"null"}]},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"capture_method":{"enum":["api-wrapper","event-emitter","process-hook"],"type":"string"},"channel":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"channel_truncated":{"type":"boolean"},"correlation_id":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}],"default":null},"direction":{"anyOf":[{"enum":["renderer-to-main","main-to-renderer","main-to-utility","utility-to-main"],"type":"string"},{"type":"null"}]},"error":{"type":"boolean"},"event":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"frame":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"kind":{"enum":["main-handler-invocation","main-event-invocation","utility-process-fork","utility-process-message","ipc-main-to-renderer","ipc-utility-to-main","ipc-renderer-send","ipc-renderer-invoke","ipc-renderer-post-message","app-lifecycle","window-lifecycle","web-contents-lifecycle","navigation","shell-attempt","process-lifecycle","permission","popup-attempt","download","protocol","preload","native-addon","updater","error"],"type":"string"},"phase":{"enum":["attempted","completed","blocked","failed","observed"],"type":"string"},"process_type":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}]},"receiver":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"result_shape":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"sender":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"source":{"maxLength":64,"type":"string"},"target":{"anyOf":[{"maxLength":256,"type":"string"},{"type":"null"}]}},"required":["sequence","correlation_id","kind","event","phase","channel","channel_truncated","direction","sender","receiver","frame","target","argument_shapes","argument_shapes_truncated","result_shape","process_type","source","capture_method","artifact_path","artifact_sha256","error"],"type":"object"},"maxItems":20000,"type":"array"},"observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"}},"required":["events","observed","retained","truncated"],"type":"object"},"windows":{"items":{"additionalProperties":false,"properties":{"destroyed":{"type":"boolean"},"title":{"maxLength":16384,"type":"string"},"url":{"maxLength":65536,"type":"string"},"visible":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"web_contents_id":{"maxLength":256,"type":"string"},"window_id":{"maxLength":256,"type":"string"}},"required":["window_id","web_contents_id","url","title","visible","destroyed"],"type":"object"},"maxItems":100,"type":"array"},"windows_truncated":{"type":"boolean"}},"required":["schema_version","application","actions","windows","windows_truncated","processes","ipc","timeline","coverage","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Capture Electron Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"List attachable Node/Electron V8 Inspector targets from one approved literal-loopback endpoint. Only targets inside exact canonical file roots or exact HTTP(S) origins are retained; excluded target locations never enter Evidence.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"allowed_file_roots":["/opt/example-app"],"allowed_origins":[],"approved":true,"inspector_endpoint":"http://127.0.0.1:9229","limit":100,"offset":0}],"properties":{"allowed_file_roots":{"default":[],"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"inspector_endpoint":{"description":"Value for inspector endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":200,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["inspector_endpoint","approved"],"type":"object"},"kind":"runtime-provider","name":"list_javascript_runtime_targets","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"excluded":{"additionalProperties":false,"properties":{"outside_file_roots":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_origins":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unconnectable":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_location":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_file_roots","outside_origins","unsupported_location","unconnectable"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"runtime":{"additionalProperties":false,"properties":{"product":{"maxLength":1024,"minLength":1,"type":"string"},"protocol_version":{"maxLength":100,"minLength":1,"type":"string"},"v8_version":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]}},"required":["product","protocol_version","v8_version"],"type":"object"},"schema_version":{"const":1,"type":"number"},"targets":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"protocol_type":{"maxLength":100,"minLength":1,"type":"string"},"target_id":{"maxLength":256,"minLength":1,"type":"string"}},"required":["target_id","protocol_type","attached","location"],"type":"object"},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["schema_version","runtime","targets","excluded","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"List Javascript Runtime Targets"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Attach passively to one exact approved Node/Electron V8 Inspector target and capture bounded Debugger.scriptParsed plus Runtime execution-context events. REA sends only Runtime.enable and Debugger.enable: it never evaluates, pauses, resumes, reads source, or instruments the target. require/import edges, EventEmitter activity, and Electron IPC remain explicit unknowns; reconcile the returned Evidence with static Application Graph Evidence using reconcile_javascript_runtime.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"allowed_file_roots":["/opt/example-app"],"allowed_origins":[],"approved":true,"inspector_endpoint":"http://127.0.0.1:9229","limits":{"max_events":10000,"max_execution_contexts":1000,"max_location_bytes":16384,"max_scripts":2000,"max_total_metadata_bytes":4194304},"observation_ms":100,"runtime_kind":"node","target_id":"TARGET_ID_FROM_LIST_JAVASCRIPT_RUNTIME_TARGETS"}],"properties":{"allowed_file_roots":{"default":[],"description":"Approved canonical filesystem allowed file roots.","items":{"maxLength":16384,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"allowed_origins":{"description":"Value for allowed origins.","items":{"maxLength":2048,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"inspector_endpoint":{"description":"Value for inspector endpoint.","maxLength":2048,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_events":10000,"max_execution_contexts":1000,"max_location_bytes":16384,"max_scripts":2000,"max_total_metadata_bytes":4194304},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_events":{"default":10000,"description":"Maximum permitted events for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_execution_contexts":{"default":1000,"description":"Maximum permitted execution contexts for this operation.","maximum":5000,"minimum":1,"type":"integer"},"max_location_bytes":{"default":16384,"description":"Maximum permitted location bytes for this operation.","maximum":65536,"minimum":64,"type":"integer"},"max_scripts":{"default":2000,"description":"Maximum permitted scripts for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_total_metadata_bytes":{"default":4194304,"description":"Maximum permitted total metadata bytes for this operation.","maximum":33554432,"minimum":1024,"type":"integer"}},"type":"object"},"observation_ms":{"default":100,"description":"Value for observation ms.","maximum":10000,"minimum":0,"type":"integer"},"runtime_kind":{"description":"Value for runtime kind.","enum":["node","electron-main","electron-preload","electron-renderer"],"type":"string"},"target_id":{"description":"Exact authorized CDP target identifier.","maxLength":256,"minLength":1,"type":"string"}},"required":["inspector_endpoint","approved","target_id","runtime_kind"],"type":"object"},"kind":"runtime-provider","name":"observe_javascript_runtime","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"capture":{"additionalProperties":false,"properties":{"events_dropped":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events_observed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"events_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"metadata_bytes_retained":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observation_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"type":"boolean"},"truncation_reasons":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"}},"required":["observation_ms","events_observed","events_retained","events_dropped","metadata_bytes_retained","truncated","truncation_reasons"],"type":"object"},"directly_observed":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"execution_contexts":{"items":{"additionalProperties":false,"properties":{"context_key":{"maxLength":64,"minLength":1,"type":"string"},"name":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]},"origin":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"null"}]},"state":{"enum":["created","destroyed","cleared"],"type":"string"}},"required":["context_key","state","name","origin"],"type":"object"},"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"runtime":{"additionalProperties":false,"properties":{"product":{"maxLength":1024,"minLength":1,"type":"string"},"protocol_version":{"maxLength":100,"minLength":1,"type":"string"},"v8_version":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}]}},"required":["product","protocol_version","v8_version"],"type":"object"},"schema_version":{"const":1,"type":"number"},"scripts":{"additionalProperties":false,"properties":{"excluded":{"additionalProperties":false,"properties":{"invalid_protocol_value":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_file_roots":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outside_origins":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unsupported_location":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["outside_file_roots","outside_origins","unsupported_location","invalid_protocol_value"],"type":"object"},"items":{"items":{"additionalProperties":false,"properties":{"cdp_hash":{"anyOf":[{"maxLength":512,"type":"string"},{"type":"null"}]},"execution_context_key":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}]},"is_module":{"type":"boolean"},"length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"script_key":{"pattern":"^v8_script_[a-f0-9]{64}$","type":"string"},"status":{"const":"observed-loaded","type":"string"}},"required":["script_key","location","execution_context_key","cdp_hash","length","is_module","status"],"type":"object"},"type":"array"},"observed_total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","observed_total","excluded"],"type":"object"},"target":{"additionalProperties":false,"properties":{"attached":{"type":"boolean"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"authority":{"const":"scope-fallback","type":"string"},"file_path":{"maxLength":16384,"minLength":1,"type":"string"},"kind":{"const":"file","type":"string"}},"required":["kind","file_path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"origin":{"maxLength":2048,"minLength":1,"type":"string"},"sanitized_url":{"maxLength":65536,"minLength":1,"type":"string"}},"required":["kind","origin","sanitized_url"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"builtin","type":"string"},"specifier":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","specifier"],"type":"object"}]},"protocol_type":{"maxLength":100,"minLength":1,"type":"string"},"runtime_kind":{"enum":["node","electron-main","electron-preload","electron-renderer"],"type":"string"},"runtime_kind_authority":{"const":"caller-declared-unverified","type":"string"},"target_id":{"maxLength":256,"minLength":1,"type":"string"}},"required":["target_id","protocol_type","attached","location","runtime_kind","runtime_kind_authority"],"type":"object"},"unavailable_without_instrumentation":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"unknowns":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["schema_version","runtime","target","capture","scripts","execution_contexts","directly_observed","unavailable_without_instrumentation","unknowns","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Observe Javascript Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Trace a typed literal seed through an authenticated JavaScript Application Graph supplied as full Evidence or an Evidence ID returned earlier in this session. Explicit direction, depth, node, edge, and path bounds apply. Original static, native, passive-runtime, inferred, and unknown authorities remain distinct; native addon handoffs never open a provider or execute the application.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"direction":{"default":"both","description":"Direction in which to traverse or compare relationships.","enum":["outgoing","incoming","both"],"type":"string"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_nodes":2000,"max_paths":100,"max_seed_matches":25},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_paths":{"default":100,"description":"Maximum permitted paths for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"native_observations":{"default":[],"description":"Value for native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"seed":{"additionalProperties":false,"description":"Value for seed.","properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"kind":{"description":"Value for kind.","enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null,"description":"Value for match."},"value":{"description":"Value for value.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"}},"required":["seed","application"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"direction":{"default":"both","description":"Direction in which to traverse or compare relationships.","enum":["outgoing","incoming","both"],"type":"string"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_nodes":2000,"max_paths":100,"max_seed_matches":25},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_paths":{"default":100,"description":"Maximum permitted paths for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"native_observations":{"default":[],"description":"Value for native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"seed":{"additionalProperties":false,"description":"Value for seed.","properties":{"case_sensitive":{"default":false,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"kind":{"description":"Value for kind.","enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null,"description":"Value for match."},"value":{"description":"Value for value.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"}},"required":["seed","application_evidence_id"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","direction":"both","seed":{"case_sensitive":false,"kind":"module","match":"exact","value":"renderer.js"}}],"type":"object"},"kind":"application","name":"trace_application_feature","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"coverage":{"additionalProperties":false,"properties":{"frontier_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"type":"array"},"omitted_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_paths":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scanned_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"enum":["complete-within-source","partial","truncated","no-match"],"type":"string"},"total_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","source_graph_status","scanned_nodes","total_seed_matches","omitted_seed_matches","omitted_nodes","omitted_edges","omitted_paths","frontier_node_ids"],"type":"object"},"direction":{"enum":["outgoing","incoming","both"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":65,"minItems":1,"type":"array"},"graph":{"anyOf":[{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},{"type":"null"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"native_handoffs":{"items":{"additionalProperties":false,"properties":{"artifact_path":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]},"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"export_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"native_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"maxItems":64,"type":"array"},"recommended_tools":{"items":{"enum":["open_binary","binary_overview","search_procedures","analyze_function","xrefs"],"type":"string"},"maxItems":5,"type":"array"},"requested_exports":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"status":{"enum":["evidence-linked","requires-provider-analysis"],"type":"string"}},"required":["native_node_id","artifact_sha256","artifact_path","export_node_ids","requested_exports","status","providers","evidence_ids","recommended_tools"],"type":"object"},"maxItems":10000,"type":"array"},"paths":{"items":{"additionalProperties":false,"properties":{"authorities":{"items":{"maxLength":128,"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"contains_inference":{"type":"boolean"},"edge_ids":{"items":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"end_kind":{"maxLength":128,"minLength":1,"type":"string"},"end_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":65,"minItems":1,"type":"array"},"path_id":{"pattern":"^jatp_[a-f0-9]{64}$","type":"string"},"start_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["path_id","start_node_id","end_node_id","end_kind","node_ids","edge_ids","authorities","contains_inference"],"type":"object"},"maxItems":1000,"type":"array"},"schema_version":{"const":1,"type":"number"},"seed":{"additionalProperties":false,"properties":{"case_sensitive":{"default":false,"type":"boolean"},"kind":{"enum":["node-id","route","string","api","channel","module","native-export"],"type":"string"},"match":{"anyOf":[{"enum":["exact","contains"],"type":"string"},{"type":"null"}],"default":null},"value":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","value","match","case_sensitive"],"type":"object"},"seed_matches":{"items":{"additionalProperties":false,"properties":{"basis":{"enum":["node-id","label","identity","property"],"type":"string"},"field":{"maxLength":256,"minLength":1,"type":"string"},"kind":{"maxLength":128,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","kind","basis","field"],"type":"object"},"maxItems":1000,"type":"array"},"source_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"source_graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"summary":{"additionalProperties":false,"properties":{"inferred_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"matched_seeds":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"native_handoffs":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observed_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"terminal_paths":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traced_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traced_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unavailable_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_facts":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["matched_seeds","traced_nodes","traced_edges","terminal_paths","native_handoffs","observed_facts","inferred_facts","unknown_facts","unavailable_facts"],"type":"object"},"trace_id":{"pattern":"^jatr_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","trace_id","source_evidence_id","source_graph_id","seed","direction","seed_matches","graph","paths","native_handoffs","summary","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Application Feature"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Trace bounded static JavaScript data-flow, direct call/return, and closure relations from authenticated analyze_javascript_application v2 Evidence. Queries declare direction and exact node, relation, depth, function, module, and page limits. Dynamic or unsupported semantics remain explicit unknowns; static reachability never claims runtime execution.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"query":{"additionalProperties":false,"description":"Non-empty feature or text query to investigate.","properties":{"allowed_relations":{"description":"Value for allowed relations.","items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":44,"minItems":1,"type":"array"},"cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null,"description":"Value for cursor."},"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"expected":{"anyOf":[{"additionalProperties":false,"properties":{"classes":{"description":"Value for classes.","items":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"maxItems":24,"minItems":1,"type":"array"},"role":{"description":"Value for role.","enum":["source","sink"],"type":"string"}},"required":["role","classes"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for expected."},"include_ambiguous_dynamic_edges":{"default":false,"description":"Whether to include ambiguous dynamic edges in the result.","type":"boolean"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_functions":500,"max_modules":500,"max_nodes":2000,"max_seed_matches":25,"max_unknowns":1000,"page_size":200},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"description":"Maximum permitted functions for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"description":"Maximum permitted modules for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"description":"Maximum permitted unknowns for this operation.","maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"description":"Value for page size.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"seed":{"description":"Value for seed.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","description":"Value for kind.","type":"string"},"value":{"$ref":"#/$defs/__schema0","description":"Value for value."}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"description":"Exact SHA-256 digest of fingerprint.","pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"description":"Value for field.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","description":"Value for kind.","type":"string"}},"required":["kind","field"],"type":"object"}]},"source_map_authority":{"additionalProperties":false,"default":{"authority":"none"},"description":"Value for source map authority.","properties":{"authority":{"const":"none","description":"Value for authority.","type":"string"}},"required":["authority"],"type":"object"}},"required":["seed","direction"],"type":"object"}},"required":["application","query"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"query":{"additionalProperties":false,"description":"Non-empty feature or text query to investigate.","properties":{"allowed_relations":{"description":"Value for allowed relations.","items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":44,"minItems":1,"type":"array"},"cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"default":null,"description":"Value for cursor."},"direction":{"description":"Direction in which to traverse or compare relationships.","enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"expected":{"anyOf":[{"additionalProperties":false,"properties":{"classes":{"description":"Value for classes.","items":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"maxItems":24,"minItems":1,"type":"array"},"role":{"description":"Value for role.","enum":["source","sink"],"type":"string"}},"required":["role","classes"],"type":"object"},{"type":"null"}],"default":null,"description":"Value for expected."},"include_ambiguous_dynamic_edges":{"default":false,"description":"Whether to include ambiguous dynamic edges in the result.","type":"boolean"},"limits":{"additionalProperties":false,"default":{"max_depth":12,"max_edges":4000,"max_functions":500,"max_modules":500,"max_nodes":2000,"max_seed_matches":25,"max_unknowns":1000,"page_size":200},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_depth":{"default":12,"description":"Maximum permitted depth for this operation.","maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"description":"Maximum permitted edges for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"description":"Maximum permitted functions for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"description":"Maximum permitted modules for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"description":"Maximum permitted nodes for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"description":"Maximum permitted seed matches for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"description":"Maximum permitted unknowns for this operation.","maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"description":"Value for page size.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"seed":{"description":"Value for seed.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","description":"Value for kind.","type":"string"},"node_id":{"description":"Value for node id.","pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","description":"Value for kind.","type":"string"},"value":{"$ref":"#/$defs/__schema0","description":"Value for value."}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"description":"Exact SHA-256 digest of fingerprint.","pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","description":"Value for kind.","type":"string"},"value":{"description":"Value for value.","maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"description":"Value for field.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","description":"Value for kind.","type":"string"}},"required":["kind","field"],"type":"object"}]},"source_map_authority":{"additionalProperties":false,"default":{"authority":"none"},"description":"Value for source map authority.","properties":{"authority":{"const":"none","description":"Value for authority.","type":"string"}},"required":["authority"],"type":"object"}},"required":["seed","direction"],"type":"object"}},"required":["application_evidence_id","query"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","query":{"direction":"backward-provenance","seed":{"kind":"semantic-node","node_id":"jsrg_node_0000000000000000000000000000000000000000000000000000000000000000"},"source_map_authority":{"authority":"none"}}}],"type":"object"},"kind":"application","name":"trace_javascript_semantics","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"accepted_limit_ranges":{"additionalProperties":false,"properties":{"max_depth":{"additionalProperties":false,"properties":{"maximum":{"const":64,"type":"number"},"minimum":{"const":0,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_edges":{"additionalProperties":false,"properties":{"maximum":{"const":100000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_functions":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_modules":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_nodes":{"additionalProperties":false,"properties":{"maximum":{"const":50000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_seed_matches":{"additionalProperties":false,"properties":{"maximum":{"const":1000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"max_unknowns":{"additionalProperties":false,"properties":{"maximum":{"const":10000,"type":"number"},"minimum":{"const":0,"type":"number"}},"required":["minimum","maximum"],"type":"object"},"page_size":{"additionalProperties":false,"properties":{"maximum":{"const":1000,"type":"number"},"minimum":{"const":1,"type":"number"}},"required":["minimum","maximum"],"type":"object"}},"required":["max_seed_matches","max_nodes","max_edges","max_depth","max_functions","max_modules","max_unknowns","page_size"],"type":"object"},"applied_limits":{"additionalProperties":false,"properties":{"max_depth":{"default":12,"maximum":64,"minimum":0,"type":"integer"},"max_edges":{"default":4000,"maximum":100000,"minimum":1,"type":"integer"},"max_functions":{"default":500,"maximum":10000,"minimum":1,"type":"integer"},"max_modules":{"default":500,"maximum":10000,"minimum":1,"type":"integer"},"max_nodes":{"default":2000,"maximum":50000,"minimum":1,"type":"integer"},"max_seed_matches":{"default":25,"maximum":1000,"minimum":1,"type":"integer"},"max_unknowns":{"default":1000,"maximum":10000,"minimum":0,"type":"integer"},"page_size":{"default":200,"maximum":1000,"minimum":1,"type":"integer"}},"required":["max_seed_matches","max_nodes","max_edges","max_depth","max_functions","max_modules","max_unknowns","page_size"],"type":"object"},"coverage":{"additionalProperties":false,"properties":{"frontier":{"items":{"additionalProperties":false,"properties":{"depth":{"maximum":65,"minimum":0,"type":"integer"},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"reason":{"enum":["max-depth","max-edges","max-functions","max-modules","max-nodes","max-seed-matches"],"type":"string"}},"required":["node_id","depth","reason"],"type":"object"},"maxItems":100000,"type":"array"},"status":{"enum":["complete","partial","truncated","unavailable"],"type":"string"}},"required":["status","frontier"],"type":"object"},"direction":{"enum":["backward-provenance","forward-influence","callers","ownership"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"expected_match_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"application_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"function_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"role_key":{"maxLength":1024,"minLength":1,"type":"string"},"source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]}},"required":["artifact_sha256","module_path","source_range","role_key"],"type":"object"},"kind":{"enum":["module","function","parameter","binding","expression","literal","property-slot","call-site","return-site","closure-capture","promise","task","event","listener","timer","child-process","stdio","signal","config-source","request","response","boundary","resource","unknown-frontier"],"type":"string"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["kind","identity","function_node_id","application_node_ids","label","properties","evidence","node_id","identifier_strategy"],"type":"object"},"maxItems":3000,"type":"array"},"page":{"additionalProperties":false,"properties":{"next_cursor":{"anyOf":[{"pattern":"^jsrqc_[0-9]+_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"size":{"maximum":1000,"minimum":0,"type":"integer"}},"required":["offset","size","next_cursor"],"type":"object"},"query_id":{"pattern":"^jsrq_[a-f0-9]{64}$","type":"string"},"relations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"relation_id":{"pattern":"^jsrg_relation_[a-f0-9]{64}$","type":"string"},"resolution":{"enum":["resolved","candidate"],"type":"string"},"source_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","resolution","properties","evidence","relation_id","identifier_strategy"],"type":"object"},"maxItems":1000,"type":"array"},"schema_version":{"const":1,"type":"number"},"seed":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"semantic-node","type":"string"},"node_id":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"application-node","type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["kind","node_id"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"literal","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"function","type":"string"}},"required":["kind","fingerprint_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"property","type":"string"},"name":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"endpoint","type":"string"},"value":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","value"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"event","type":"string"},"name":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"field":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"boundary-field","type":"string"}},"required":["kind","field"],"type":"object"}]},"seed_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"source_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"source_graph_id":{"pattern":"^jsrg_[a-f0-9]{64}$","type":"string"},"status":{"enum":["found","no-match","ambiguous","partial","truncated","unsupported"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"relevant_unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_unknowns":{"maximum":10000,"minimum":0,"type":"integer"},"total_seed_matches":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_functions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_modules":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"traversed_relations":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total_seed_matches","retained_seed_matches","traversed_nodes","traversed_relations","traversed_functions","traversed_modules","relevant_unknowns","retained_unknowns"],"type":"object"},"unknowns":{"items":{"additionalProperties":false,"properties":{"candidate_node_ids":{"items":{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"family":{"enum":["boundary","call-flow","child-process","closure","configuration","data-flow","event","object-flow","promise-ownership","request","resource-lifecycle","timer"],"type":"string"},"node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"reason":{"enum":["ambiguous-target","bound-reached","dynamic-call","dynamic-property","eval-or-generated-code","incomplete-module","missing-source","unsupported-syntax"],"type":"string"},"relation_kinds":{"items":{"enum":["acquires","aggregates","aliases","argument-to-parameter","awaits","calls","cancels-timer","captures","chains","coerces","connects-stdio","consumed-by","constructs-request","creates-promise","defaults","defines","destructures","detaches-task","dispatches-candidate","forwards-signal","listens-error","listens-exit","owns","overrides","parses","reads","reads-argv","reads-config","reads-environment","reads-property","registers-listener","releases","removes-listener","returns-task","returns-to-call","schedules-timer","spawns","spreads","supplies-argv","supplies-env","supplies-request-field","validates","writes","writes-property"],"type":"string"},"maxItems":45,"minItems":1,"type":"array"},"unknown_id":{"pattern":"^jsrg_unknown_[a-f0-9]{64}$","type":"string"}},"required":["node_id","family","relation_kinds","reason","detail","candidate_node_ids","evidence","unknown_id"],"type":"object"},"maxItems":100000,"type":"array"}},"required":["schema_version","query_id","source_graph_id","seed","direction","status","seed_node_ids","nodes","relations","unknowns","expected_match_node_ids","summary","coverage","page","applied_limits","accepted_limit_ranges","limitations","source_evidence_id","evidence_links"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Trace Javascript Semantics"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two authenticated JavaScript Application Graph versions supplied as full Evidence or Evidence IDs returned earlier in this session. Uses unique-only exact digest, module source digest, source-map identity, structural fingerprint, and non-module semantic-key tiers. Reports added, removed, changed, ambiguous, and unknown entities plus a bounded changed_from graph without fuzzy or module-ordinal pairing.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left","right"],"type":"object"},{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left","right_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the left native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"left_native_observations":{"default":[],"description":"Value for left native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"limits":{"additionalProperties":false,"default":{"max_candidate_nodes":100,"max_comparison_items":20000,"max_graph_edges":40000,"max_graph_nodes":20000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_comparison_items":{"default":20000,"description":"Maximum permitted comparison items for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_graph_edges":{"default":40000,"description":"Maximum permitted graph edges for this operation.","maximum":200000,"minimum":1,"type":"integer"},"max_graph_nodes":{"default":20000,"description":"Maximum permitted graph nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_native_observation_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the right native observation observations.","items":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":64,"type":"array"},"right_native_observations":{"default":[],"description":"Value for right native observations.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":64,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"}],"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111"}],"type":"object"},"kind":"application","name":"compare_application_versions","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"comparison_id":{"pattern":"^javc_[a-f0-9]{64}$","type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"const":0,"type":"number"},"omitted_comparison_items":{"const":0,"type":"number"},"omitted_graph_edges":{"const":0,"type":"number"},"omitted_graph_nodes":{"const":0,"type":"number"},"omitted_graph_observations":{"const":0,"type":"number"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"complete-within-inputs","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"},{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"const":0,"type":"number"},"omitted_comparison_items":{"const":0,"type":"number"},"omitted_graph_edges":{"const":0,"type":"number"},"omitted_graph_nodes":{"const":0,"type":"number"},"omitted_graph_observations":{"const":0,"type":"number"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"partial","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"},{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"omitted_candidate_references":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_comparison_items":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_graph_observations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"status":{"const":"truncated","type":"string"}},"required":["left_graph_status","right_graph_status","omitted_comparison_items","omitted_candidate_references","omitted_graph_nodes","omitted_graph_edges","omitted_graph_observations","status"],"type":"object"}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"graph":{"additionalProperties":false,"properties":{"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"edges":{"items":{"additionalProperties":false,"properties":{"edge_id":{"pattern":"^jag_edge_[a-f0-9]{64}$","type":"string"},"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"relationship-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"},"relation":{"enum":["contains","loads","imports","maps_to","exposes","sends","invokes","handles","calls","persists_to","observed_as","changed_from"],"type":"string"},"source_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"target_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["source_node_id","target_node_id","relation","properties","evidence","edge_id","identifier_strategy"],"type":"object"},"maxItems":200000,"type":"array"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"nodes":{"items":{"additionalProperties":false,"properties":{"identity":{"oneOf":[{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"global-exact","type":"string"},"strategy":{"const":"content-digest","type":"string"}},"required":["strategy","stability","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"original_source":{"maxLength":4096,"minLength":1,"type":"string"},"source_map_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"stability":{"const":"source-map-exact","type":"string"},"strategy":{"const":"source-map-original","type":"string"}},"required":["strategy","stability","source_map_sha256","original_source","source_sha256"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"canonical-path","type":"string"}},"required":["strategy","stability","artifact_sha256","path"],"type":"object"},{"additionalProperties":false,"properties":{"algorithm":{"maxLength":128,"minLength":1,"type":"string"},"basis":{"items":{"enum":["syntax-tree","control-flow","imports","exports","literals","api-usage"],"type":"string"},"maxItems":6,"minItems":1,"type":"array"},"fingerprint_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"stability":{"const":"cross-version-inference","type":"string"},"strategy":{"const":"structural-fingerprint","type":"string"}},"required":["strategy","stability","algorithm","fingerprint_sha256","basis"],"type":"object"},{"additionalProperties":false,"properties":{"artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"key":{"maxLength":4096,"minLength":1,"type":"string"},"namespace":{"maxLength":512,"minLength":1,"type":"string"},"stability":{"const":"artifact-version","type":"string"},"strategy":{"const":"artifact-local-key","type":"string"}},"required":["strategy","stability","artifact_sha256","namespace","key"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime_key":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"capture-only","type":"string"},"strategy":{"const":"runtime-instance","type":"string"}},"required":["strategy","stability","capture_sha256","runtime_key"],"type":"object"},{"additionalProperties":false,"properties":{"observation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope":{"maxLength":4096,"minLength":1,"type":"string"},"stability":{"const":"observation-only","type":"string"},"strategy":{"const":"observation-fingerprint","type":"string"}},"required":["strategy","stability","observation_sha256","scope"],"type":"object"}]},"kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"observations":{"items":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"artifact":{"oneOf":[{"additionalProperties":false,"properties":{"artifact_id":{"pattern":"^art_[a-f0-9]{64}$","type":"string"},"available":{"const":true,"type":"boolean"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["available","artifact_id","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"authority":{"enum":["artifact-bytes","ast-static-analysis","static-relationship-inference","passive-cdp-runtime","cross-layer-reconciliation","cross-version-comparison","controlled-replay","native-analysis-provider","managed-static-analysis","historical-reference","user-assertion","unknown"],"type":"string"},"confidence":{"enum":["exact","high","medium","low","unknown"],"type":"string"},"coverage":{"anyOf":[{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"const":0,"type":"number"},"status":{"const":"complete","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"omitted_count":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"status":{"const":"partial","type":"string"},"truncated":{"const":true,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"},{"additionalProperties":false,"properties":{"limits":{"items":{"additionalProperties":false,"properties":{"name":{"maxLength":128,"minLength":1,"type":"string"},"unit":{"enum":["items","bytes","milliseconds","depth","characters","instructions","other"],"type":"string"},"value":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["name","value","unit"],"type":"object"},"maxItems":32,"type":"array"},"omitted_count":{"type":"null"},"status":{"enum":["unknown","unavailable"],"type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["status","truncated","omitted_count","limits"],"type":"object"}]},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"extractor":{"additionalProperties":false,"properties":{"executable_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"name":{"maxLength":128,"minLength":1,"type":"string"},"operation":{"maxLength":256,"minLength":1,"type":"string"},"version":{"maxLength":128,"minLength":1,"type":"string"}},"required":["name","version","operation","executable_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"location":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"value":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"kind":{"const":"source-range","type":"string"},"source":{"maxLength":4096,"minLength":1,"type":"string"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["kind","source","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"url","type":"string"},"url":{"maxLength":16384,"minLength":1,"type":"string"}},"required":["kind","url"],"type":"object"},{"additionalProperties":false,"properties":{"capture_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"frame_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"kind":{"const":"runtime","type":"string"},"script_key":{"anyOf":[{"maxLength":512,"minLength":1,"type":"string"},{"type":"null"}]},"target_key":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","capture_sha256","target_key","frame_key","script_key"],"type":"object"},{"additionalProperties":false,"properties":{"address":{"maxLength":512,"minLength":1,"type":"string"},"kind":{"const":"native-address","type":"string"},"symbol":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","address","symbol"],"type":"object"},{"additionalProperties":false,"properties":{"export_path":{"maxLength":4096,"minLength":1,"type":"string"},"kind":{"const":"package-export","type":"string"},"package_name":{"maxLength":512,"minLength":1,"type":"string"}},"required":["kind","package_name","export_path"],"type":"object"}]}},"required":["available","value"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"reason":{"enum":["not-applicable","not-observed","not-approved","truncated","provider-unavailable","unresolved","unknown"],"type":"string"}},"required":["available","reason","detail"],"type":"object"}]},"state":{"enum":["observed","inferred","unknown","unavailable"],"type":"string"}},"required":["authority","state","confidence","artifact","location","extractor","coverage","limitations","evidence_ids"],"type":"object"},"identifier_strategy":{"additionalProperties":false,"properties":{"stability":{"const":"observation-exact","type":"string"},"strategy":{"const":"semantic-content-sha256","type":"string"}},"required":["strategy","stability"],"type":"object"},"label":{"anyOf":[{"maxLength":1024,"minLength":1,"type":"string"},{"type":"null"}]},"observation_id":{"pattern":"^jag_observation_[a-f0-9]{64}$","type":"string"},"properties":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"maxLength":128,"minLength":1,"type":"string"},"type":"object"}},"required":["label","properties","evidence","observation_id","identifier_strategy"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["node_id","kind","identity","observations"],"type":"object"},"maxItems":100000,"minItems":1,"type":"array"},"root_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schema":{"const":"JavaScriptApplicationGraph","type":"string"},"schema_version":{"const":1,"type":"number"}},"required":["schema","schema_version","root_node_ids","nodes","edges","coverage","limitations","graph_id"],"type":"object"},"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"anyOf":[{"additionalProperties":false,"properties":{"basis":{"enum":["exact-node-identity","exact-content-digest","exact-module-source-digest"],"type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"exact","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"const":"source-map-identity","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"high","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},{"additionalProperties":false,"properties":{"basis":{"enum":["structural-fingerprint","semantic-key"],"type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"medium","type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"}]},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"type":"null"},"status":{"enum":["removed","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"unmatched","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"enum":["added","unknown"],"type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"prefixItems":[],"type":"array"},"candidate_right_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"prefixItems":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"type":"null"},"status":{"const":"unknown","type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"},{"additionalProperties":false,"properties":{"dimensions":{"items":{"enum":["content","location","properties","relationships","availability","coverage"],"type":"string"},"maxItems":6,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":130,"minItems":2,"type":"array"},"item_id":{"pattern":"^javc_item_[a-f0-9]{64}$","type":"string"},"left_node_id":{"type":"null"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"match":{"additionalProperties":false,"properties":{"basis":{"const":"none","type":"string"},"candidate_left_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"prefixItems":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}],"type":"array"},"candidate_right_node_ids":{"prefixItems":[],"type":"array"},"confidence":{"const":"unknown","type":"string"},"status":{"const":"ambiguous","type":"string"}},"required":["status","basis","confidence","candidate_left_node_ids","candidate_right_node_ids"],"type":"object"},"node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"right_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"unknown","type":"string"}},"required":["item_id","node_kind","dimensions","evidence_links","limitations","status","left_node_id","right_node_id","match"],"type":"object"}]},"maxItems":50000,"type":"array"},"left":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"matching":{"additionalProperties":false,"properties":{"ambiguous":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_content_digest":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_module_source_digest":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"exact_node_identity":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"semantic_key":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_map_identity":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural_fingerprint":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unmatched":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["exact_node_identity","exact_content_digest","exact_module_source_digest","source_map_identity","structural_fingerprint","semantic_key","ambiguous","unmatched"],"type":"object"},"right":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","added","removed","changed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","left","right","summary","matching","items","graph","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Application Versions"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare a cryptographically committed HistoricalSourceGraph/v1 with authenticated JavaScript Application Graph Evidence supplied directly or by session Evidence ID. Uses explicit exact-digest, source-map path, current-path, suffix, and basename signals with stable weights. Classifies unchanged, modified, removed, split, merged, duplicated, and unknown; incomplete coverage and ambiguous weak signals never become absence or forced matches.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"description":"Value for application.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"limits":{"additionalProperties":false,"default":{"max_application_nodes":20000,"max_candidate_evaluations":1000000,"max_candidate_nodes":100,"max_source_files":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_application_nodes":{"default":20000,"description":"Maximum permitted application nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_candidate_evaluations":{"default":1000000,"description":"Maximum permitted candidate evaluations for this operation.","maximum":10000000,"minimum":1,"type":"integer"},"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_source_files":{"default":10000,"description":"Maximum permitted source files for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"reference":{"additionalProperties":false,"description":"Value for reference.","properties":{"authority":{"const":"historical-reference","description":"Value for authority.","type":"string"},"entries":{"description":"Value for entries.","items":{"anyOf":[{"anyOf":[{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"const":"hashed","description":"Value for content state.","type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"description":"Value for size.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"description":"Value for content state.","enum":["redacted-secret","excluded","unreadable","too-large","unknown"],"type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","type":"null"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for size."}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"}]},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"directory","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"tree_state":{"description":"Value for tree state.","enum":["enumerated","partial","excluded","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","tree_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"symlink","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"target":{"description":"Value for target.","maxLength":4096,"minLength":1,"type":"string"},"target_state":{"description":"Value for target state.","enum":["internal","external","missing","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","target","target_state"],"type":"object"}]},"maxItems":100000,"type":"array"},"exclusions":{"description":"Value for exclusions.","items":{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","enum":["configured-secret","symlink-escape","size-limit","inventory-limit","unreadable","caller-excluded"],"type":"string"}},"required":["path","reason"],"type":"object"},"maxItems":100000,"type":"array"},"inventory_state":{"description":"Value for inventory state.","enum":["complete","partial","unknown"],"type":"string"},"languages":{"description":"Value for languages.","items":{"maxLength":100,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"manifests":{"description":"Value for manifests.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":10000,"type":"array"},"parse_failures":{"description":"Value for parse failures.","items":{"additionalProperties":false,"properties":{"parser":{"description":"Value for parser.","maxLength":100,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"}},"required":["path","parser","reason"],"type":"object"},"maxItems":10000,"type":"array"},"provenance":{"additionalProperties":false,"description":"Value for provenance.","properties":{"caller":{"description":"Value for caller.","maxLength":200,"minLength":1,"pattern":"^[\\\\w .:@/+-]+$","type":"string"},"importer":{"description":"Value for importer.","maxLength":100,"minLength":1,"type":"string"},"importer_version":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for importer version."}},"required":["importer","importer_version","caller"],"type":"object"},"relationships":{"description":"Value for relationships.","items":{"additionalProperties":false,"properties":{"from_path":{"description":"Local filesystem path for from.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"description":"Value for kind.","enum":["imports","requires","references","declares-module"],"type":"string"},"parse_state":{"description":"Value for parse state.","enum":["parsed","partial","unknown"],"type":"string"},"resolution":{"description":"Value for resolution.","enum":["internal","external","unresolved","unknown"],"type":"string"},"to":{"description":"Value for to.","maxLength":4096,"minLength":1,"type":"string"}},"required":["from_path","to","kind","resolution","parse_state"],"type":"object"},"maxItems":200000,"type":"array"},"root_alias":{"const":"$REFERENCE_ROOT","description":"Value for root alias.","type":"string"},"root_sha256":{"description":"Exact SHA-256 digest of root.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema":{"const":"HistoricalSourceGraph/v1","description":"Value for schema.","type":"string"},"vcs":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"dirty":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for dirty."},"head":{"description":"Value for head.","pattern":"^(?:[a-f0-9]{40}|[a-f0-9]{64})$","type":"string"},"kind":{"const":"git","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"none","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"unknown","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"}]},{"type":"null"}],"description":"Value for vcs."}},"required":["schema","authority","root_alias","root_sha256","inventory_state","entries","relationships","parse_failures","exclusions","languages","manifests","vcs","provenance","limitations"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["reference","application"],"type":"object"},{"additionalProperties":false,"properties":{"application_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"limits":{"additionalProperties":false,"default":{"max_application_nodes":20000,"max_candidate_evaluations":1000000,"max_candidate_nodes":100,"max_source_files":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_application_nodes":{"default":20000,"description":"Maximum permitted application nodes for this operation.","maximum":100000,"minimum":1,"type":"integer"},"max_candidate_evaluations":{"default":1000000,"description":"Maximum permitted candidate evaluations for this operation.","maximum":10000000,"minimum":1,"type":"integer"},"max_candidate_nodes":{"default":100,"description":"Maximum permitted candidate nodes for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_source_files":{"default":10000,"description":"Maximum permitted source files for this operation.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"reference":{"additionalProperties":false,"description":"Value for reference.","properties":{"authority":{"const":"historical-reference","description":"Value for authority.","type":"string"},"entries":{"description":"Value for entries.","items":{"anyOf":[{"anyOf":[{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"const":"hashed","description":"Value for content state.","type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"},"size":{"description":"Value for size.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"content_state":{"description":"Value for content state.","enum":["redacted-secret","excluded","unreadable","too-large","unknown"],"type":"string"},"kind":{"const":"file","description":"Value for kind.","type":"string"},"language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for language."},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"sha256":{"description":"Value for sha256.","type":"null"},"size":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for size."}},"required":["path","classifications","limitations","kind","language","sha256","size","content_state"],"type":"object"}]},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"directory","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"tree_state":{"description":"Value for tree state.","enum":["enumerated","partial","excluded","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","tree_state"],"type":"object"},{"additionalProperties":false,"properties":{"classifications":{"description":"Value for classifications.","items":{"enum":["source","test","config","manifest","generated","vendor","documentation","unknown"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"kind":{"const":"symlink","description":"Value for kind.","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"target":{"description":"Value for target.","maxLength":4096,"minLength":1,"type":"string"},"target_state":{"description":"Value for target state.","enum":["internal","external","missing","unreadable","unknown"],"type":"string"}},"required":["path","classifications","limitations","kind","target","target_state"],"type":"object"}]},"maxItems":100000,"type":"array"},"exclusions":{"description":"Value for exclusions.","items":{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","enum":["configured-secret","symlink-escape","size-limit","inventory-limit","unreadable","caller-excluded"],"type":"string"}},"required":["path","reason"],"type":"object"},"maxItems":100000,"type":"array"},"inventory_state":{"description":"Value for inventory state.","enum":["complete","partial","unknown"],"type":"string"},"languages":{"description":"Value for languages.","items":{"maxLength":100,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"limitations":{"description":"Value for limitations.","items":{"maxLength":1024,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"manifests":{"description":"Value for manifests.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":10000,"type":"array"},"parse_failures":{"description":"Value for parse failures.","items":{"additionalProperties":false,"properties":{"parser":{"description":"Value for parser.","maxLength":100,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"reason":{"description":"Value for reason.","maxLength":1024,"minLength":1,"type":"string"}},"required":["path","parser","reason"],"type":"object"},"maxItems":10000,"type":"array"},"provenance":{"additionalProperties":false,"description":"Value for provenance.","properties":{"caller":{"description":"Value for caller.","maxLength":200,"minLength":1,"pattern":"^[\\\\w .:@/+-]+$","type":"string"},"importer":{"description":"Value for importer.","maxLength":100,"minLength":1,"type":"string"},"importer_version":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for importer version."}},"required":["importer","importer_version","caller"],"type":"object"},"relationships":{"description":"Value for relationships.","items":{"additionalProperties":false,"properties":{"from_path":{"description":"Local filesystem path for from.","maxLength":4096,"minLength":1,"type":"string"},"kind":{"description":"Value for kind.","enum":["imports","requires","references","declares-module"],"type":"string"},"parse_state":{"description":"Value for parse state.","enum":["parsed","partial","unknown"],"type":"string"},"resolution":{"description":"Value for resolution.","enum":["internal","external","unresolved","unknown"],"type":"string"},"to":{"description":"Value for to.","maxLength":4096,"minLength":1,"type":"string"}},"required":["from_path","to","kind","resolution","parse_state"],"type":"object"},"maxItems":200000,"type":"array"},"root_alias":{"const":"$REFERENCE_ROOT","description":"Value for root alias.","type":"string"},"root_sha256":{"description":"Exact SHA-256 digest of root.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema":{"const":"HistoricalSourceGraph/v1","description":"Value for schema.","type":"string"},"vcs":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"dirty":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Value for dirty."},"head":{"description":"Value for head.","pattern":"^(?:[a-f0-9]{40}|[a-f0-9]{64})$","type":"string"},"kind":{"const":"git","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"none","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"},{"additionalProperties":false,"properties":{"dirty":{"description":"Value for dirty.","type":"null"},"head":{"description":"Value for head.","type":"null"},"kind":{"const":"unknown","description":"Value for kind.","type":"string"}},"required":["kind","head","dirty"],"type":"object"}]},{"type":"null"}],"description":"Value for vcs."}},"required":["schema","authority","root_alias","root_sha256","inventory_state","entries","relationships","parse_failures","exclusions","languages","manifests","vcs","provenance","limitations"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["reference","application_evidence_id"],"type":"object"}],"examples":[{"application_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","reference":{"authority":"historical-reference","entries":[{"classifications":["source"],"kind":"directory","limitations":[],"path":"src","tree_state":"enumerated"},{"classifications":["source"],"content_state":"hashed","kind":"file","language":"TypeScript","limitations":[],"path":"src/main.ts","sha256":"2222222222222222222222222222222222222222222222222222222222222222","size":128}],"exclusions":[],"inventory_state":"complete","languages":["TypeScript"],"limitations":[],"manifests":[],"parse_failures":[],"provenance":{"caller":"contract-example","importer":"rea","importer_version":"1"},"relationships":[],"root_alias":"$REFERENCE_ROOT","root_sha256":"683969414c3e674a368392213c78021322fb39609b0c57f346b22da6464b2110","schema":"HistoricalSourceGraph/v1","vcs":{"dirty":null,"head":null,"kind":"none"}}}],"type":"object"},"kind":"application","name":"compare_source_to_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"application":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"root_artifact_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["evidence_id","graph_id","root_artifact_sha256"],"type":"object"},"comparison_id":{"pattern":"^stbc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"application_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"candidate_evaluations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_application_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_candidate_evaluations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_candidate_references":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_source_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_unmapped_current_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"reference_inventory_state":{"enum":["complete","partial","unknown"],"type":"string"},"retained_application_nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"retained_source_files":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"}},"required":["status","reference_inventory_state","application_graph_status","retained_source_files","omitted_source_files","retained_application_nodes","omitted_application_nodes","candidate_evaluations","omitted_candidate_evaluations","omitted_candidate_references","omitted_unmapped_current_nodes"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1,"minItems":1,"type":"array"},"items":{"items":{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"confidence":{"enum":["exact","high","medium","low"],"type":"string"},"current_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"current_node_kind":{"enum":["package","installer","artifact","asar-entry","electron-main","electron-preload","electron-renderer","electron-utility","javascript-asset","javascript-chunk","javascript-module","source-map","source-module","browser-window","frame","target","context-bridge-api","ipc-channel","ipc-handler","worker","service-worker","endpoint","storage","native-addon","native-export","managed-assembly","managed-module","managed-type","managed-method","managed-field","managed-pinvoke-import","managed-native-implementation","runtime-script-instance","unknown"],"type":"string"},"score":{"maximum":300,"minimum":1,"type":"integer"},"signals":{"items":{"additionalProperties":false,"properties":{"current_values":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":64,"minItems":1,"type":"array"},"kind":{"enum":["exact-source-digest","source-map-original-path","current-path-exact","current-path-suffix","basename-match","language-extension"],"type":"string"},"source_value":{"maxLength":4096,"minLength":1,"type":"string"},"weight":{"maximum":100,"minimum":1,"type":"integer"}},"required":["kind","weight","source_value","current_values"],"type":"object"},"maxItems":6,"minItems":1,"type":"array"}},"required":["current_node_id","current_node_kind","score","confidence","signals"],"type":"object"},"maxItems":1000,"type":"array"},"confidence":{"enum":["exact","high","medium","unknown"],"type":"string"},"current_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"mapping_id":{"pattern":"^stbc_item_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"source_language":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"source_path":{"maxLength":4096,"minLength":1,"type":"string"},"source_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["unchanged","modified","removed","split","merged","duplicated","unknown"],"type":"string"}},"required":["mapping_id","source_path","source_sha256","source_language","status","confidence","current_node_ids","candidates","omitted_candidates","limitations"],"type":"object"},"maxItems":100000,"type":"array"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"reference":{"additionalProperties":false,"properties":{"inventory_state":{"enum":["complete","partial","unknown"],"type":"string"},"root_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["root_sha256","inventory_state"],"type":"object"},"schema_version":{"const":1,"type":"number"},"scoring":{"additionalProperties":false,"properties":{"algorithm":{"const":"rea-source-to-bundle-signals/v1","type":"string"},"minimum_candidate_score":{"const":20,"type":"number"},"weights":{"items":{"additionalProperties":false,"properties":{"signal":{"enum":["exact-source-digest","source-map-original-path","current-path-exact","current-path-suffix","basename-match","language-extension"],"type":"string"},"weight":{"maximum":100,"minimum":1,"type":"integer"}},"required":["signal","weight"],"type":"object"},"type":"array"}},"required":["algorithm","minimum_candidate_score","weights"],"type":"object"},"summary":{"additionalProperties":false,"properties":{"duplicated":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"merged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"modified":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"split":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","modified","removed","split","merged","duplicated","unknown"],"type":"object"},"unmapped_current_node_ids":{"items":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"}},"required":["schema_version","comparison_id","reference","application","scoring","summary","items","unmapped_current_node_ids","coverage","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Source To Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare bounded static return shapes for one exact module/export selector on each authenticated JavaScript Application Graph, supplied as full Evidence or session Evidence IDs. Variants pair only by reciprocal unique literal discriminants; dynamic values, incomplete properties, and ambiguous variants remain unknown. Reports JSON Pointer changes and recommends controlled replay separately without executing JavaScript.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left","right"],"type":"object"},{"additionalProperties":false,"properties":{"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left","right_evidence_id"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left_evidence_id","right"],"type":"object"},{"additionalProperties":false,"properties":{"left_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"left_export_name":{"description":"Value for left export name.","maxLength":4096,"minLength":1,"type":"string"},"left_module_path":{"description":"Local filesystem path for left module.","maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"default":{"max_candidate_exports":100,"max_changes":1000,"max_return_variants":128},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_candidate_exports":{"default":100,"description":"Maximum permitted candidate exports for this operation.","maximum":1000,"minimum":1,"type":"integer"},"max_changes":{"default":1000,"description":"Maximum permitted changes for this operation.","maximum":10000,"minimum":1,"type":"integer"},"max_return_variants":{"default":128,"description":"Maximum permitted return variants for this operation.","maximum":1000,"minimum":1,"type":"integer"}},"type":"object"},"right_evidence_id":{"description":"Evidence ID returned earlier in this session","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_export_name":{"description":"Value for right export name.","maxLength":4096,"minLength":1,"type":"string"},"right_module_path":{"description":"Local filesystem path for right module.","maxLength":4096,"minLength":1,"type":"string"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_module_path","left_export_name","right_module_path","right_export_name","left_evidence_id","right_evidence_id"],"type":"object"}],"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","left_export_name":"default","left_module_path":"parser.mjs","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111","right_export_name":"default","right_module_path":"parser.mjs"}],"type":"object"},"kind":"application","name":"compare_javascript_export_shapes","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"items":{"additionalProperties":false,"properties":{"change_id":{"pattern":"^jesc_change_[a-f0-9]{64}$","type":"string"},"discriminant":{"anyOf":[{"additionalProperties":false,"properties":{"path":{"maxLength":4096,"type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["path","value"],"type":"object"},{"type":"null"}]},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"left":{"oneOf":[{"additionalProperties":false,"properties":{"availability":{"const":"absent","type":"string"}},"required":["availability"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"literal","type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["availability","value"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"union","type":"string"},"values":{"items":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"maxItems":32,"minItems":1,"type":"array"}},"required":["availability","values"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"unknown","type":"string"},"reason":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["availability","reason"],"type":"object"}]},"left_source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":20,"type":"array"},"path":{"maxLength":4096,"type":"string"},"right":{"oneOf":[{"additionalProperties":false,"properties":{"availability":{"const":"absent","type":"string"}},"required":["availability"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"literal","type":"string"},"value":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["availability","value"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"union","type":"string"},"values":{"items":{"anyOf":[{"maxLength":4096,"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"maxItems":32,"minItems":1,"type":"array"}},"required":["availability","values"],"type":"object"},{"additionalProperties":false,"properties":{"availability":{"const":"unknown","type":"string"},"reason":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["availability","reason"],"type":"object"}]},"right_source_range":{"anyOf":[{"additionalProperties":false,"properties":{"end":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"},"start":{"additionalProperties":false,"properties":{"column":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"line":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["line","column"],"type":"object"}},"required":["start","end"],"type":"object"},{"type":"null"}]},"status":{"enum":["added","removed","changed","unknown"],"type":"string"}},"required":["change_id","status","path","discriminant","left","right","left_source_range","right_source_range","evidence_links","limitations"],"type":"object"},"maxItems":10000,"type":"array"},"comparison_id":{"pattern":"^jesc_[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"left_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"left_omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left_omitted_property_coverage":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left_source_omitted_variants":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_left_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"omitted_right_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"paired_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_graph_status":{"enum":["complete","partial","unknown","unavailable"],"type":"string"},"right_omitted_fields":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_omitted_property_coverage":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"right_source_omitted_variants":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"enum":["complete-within-inputs","partial","truncated"],"type":"string"},"unpaired_left_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unpaired_right_variants":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["status","left_graph_status","right_graph_status","paired_variants","unpaired_left_variants","unpaired_right_variants","omitted_left_variants","omitted_right_variants","left_source_omitted_variants","right_source_omitted_variants","left_omitted_fields","right_omitted_fields","left_omitted_property_coverage","right_omitted_property_coverage","omitted_candidates","omitted_changes"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":2,"minItems":2,"type":"array"},"left":{"anyOf":[{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"selected","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"type":"null"},"status":{"enum":["missing","ambiguous"],"type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"const":"unavailable","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"}]},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"right":{"anyOf":[{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},"status":{"const":"selected","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"type":"null"},"status":{"enum":["missing","ambiguous"],"type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"},{"additionalProperties":false,"properties":{"candidates":{"items":{"additionalProperties":false,"properties":{"export_name":{"maxLength":4096,"minLength":1,"type":"string"},"matches_requested_export":{"type":"boolean"},"matches_requested_module":{"type":"boolean"},"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"node_id":{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"}},"required":["node_id","module_path","export_name","matches_requested_module","matches_requested_export"],"type":"object"},"maxItems":1000,"type":"array"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"graph_id":{"pattern":"^jag_[a-f0-9]{64}$","type":"string"},"omitted_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"requested_export_name":{"maxLength":4096,"minLength":1,"type":"string"},"requested_module_path":{"maxLength":4096,"minLength":1,"type":"string"},"selected_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"const":"unavailable","type":"string"}},"required":["evidence_id","graph_id","requested_module_path","requested_export_name","candidates","omitted_candidates","status","selected_node_id"],"type":"object"}]},"runtime_validation":{"additionalProperties":false,"properties":{"automatically_started":{"const":false,"type":"boolean"},"recommended_tool":{"const":"run_controlled_replay","type":"string"},"required_for":{"const":"runtime-semantics","type":"string"}},"required":["recommended_tool","automatically_started","required_for"],"type":"object"},"schema_version":{"const":1,"type":"number"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added","removed","changed","unknown"],"type":"object"}},"required":["schema_version","comparison_id","left","right","summary","changes","coverage","evidence_links","limitations","runtime_validation"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Compare Javascript Export Shapes"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Plan or execute a content-bound extracted-module JavaScript replay inside the Linux Bubblewrap, seccomp, and cgroup boundary. Execution requires approved: true and the exact plan digest. Supports deterministic boundary cases and optional left/right differential comparison; observations have controlled-replay authority and do not claim real application runtime behavior.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"cases":[{"arguments":[""],"case_id":"empty"}],"determinism":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"left":{"entry_alias":"parser","entry_export":"default","modules":[{"alias":"parser","dependencies":{},"format":"esm","path":"/approved/parser.mjs","role":"module"}]},"limits":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"mode":"plan"}],"oneOf":[{"additionalProperties":false,"properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},{"additionalProperties":false,"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"execute","description":"Operation mode that selects the requested behavior.","type":"string"},"plan_digest":{"description":"Value for plan digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode","approved","plan_digest"],"type":"object"}],"type":"object"},"kind":"application","name":"run_controlled_replay","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"additionalProperties":false,"properties":{"evidence":{"type":"null"},"phase":{"const":"plan","type":"string"},"plan":{"additionalProperties":false,"properties":{"cases":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},"case_id":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["case_id","arguments","sha256"],"type":"object"},"type":"array"},"determinism":{"additionalProperties":false,"properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","type":"string"},"platform":{"const":"linux","default":"linux","type":"string"},"random_seed":{"default":0,"maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","type":"string"}},"required":["clock_iso","random_seed","locale","timezone","platform"],"type":"object"},"effects":{"items":{"type":"string"},"type":"array"},"filesystem":{"additionalProperties":false,"properties":{"host_writes":{"const":false,"type":"boolean"},"private_tmpfs_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["host_writes","private_tmpfs_bytes"],"type":"object"},"left":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"limits":{"additionalProperties":false,"properties":{"cpu_quota_percent":{"default":50,"maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"maximum":10000,"minimum":100,"type":"integer"}},"required":["wall_time_ms","memory_bytes","tasks","cpu_quota_percent","tmpfs_bytes","module_bytes","input_bytes","protocol_bytes","output_bytes","stderr_bytes","result_depth","result_nodes"],"type":"object"},"network":{"const":"none","type":"string"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_version":{"const":"linux-bwrap-systemd-v1","type":"string"},"reproducer_export":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"const":"evidence_write","type":"string"},"include_sources":{"type":"boolean"},"path":{"minLength":1,"type":"string"}},"required":["path","include_sources","authority"],"type":"object"},{"type":"null"}]},"right":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"runtime":{"additionalProperties":false,"properties":{"executable":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"read_only_files":{"items":{"additionalProperties":false,"properties":{"destination_path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["source_path","destination_path","sha256"],"type":"object"},"minItems":1,"type":"array"},"worker":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["executable","worker","read_only_files"],"type":"object"},"sandbox":{"additionalProperties":false,"properties":{"bubblewrap":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"seccomp_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"shell":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemctl":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemd_run":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["bubblewrap","systemd_run","systemctl","shell","seccomp_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","plan_digest","policy_version","policy_sha256","network","filesystem","runtime","sandbox","left","cases","determinism","limits","effects","reproducer_export"],"type":"object"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"maxItems":0,"minItems":0,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"phase":{"const":"execute","type":"string"},"plan":{"type":"null"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema1"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"minItems":1,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"}],"type":"object"},"requiresSession":false,"title":"Run Controlled Replay"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Prepare a hash-bound Node/JavaScript characterization plan and deterministic reversible export transformation without executing target code. The exact source, selected byte range, runtime closure, sandbox profile, cases, and limits are committed for separate execution approval.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"expected_effect":"pure","instrumentation":{"artifact_path":"/approved/bundle.js","artifact_sha256":"0000000000000000000000000000000000000000000000000000000000000000","selection":{"byte_end":120,"byte_start":100,"export_name":"selected","selected_sha256":"0000000000000000000000000000000000000000000000000000000000000000"}},"preparation_approved":true,"replay":{"cases":[{"arguments":[""],"case_id":"empty"}],"left":{"entry_alias":"bundle","entry_export":"selected","modules":[{"alias":"bundle","dependencies":{},"format":"commonjs-factory","path":"/approved/bundle.js","role":"module"}]},"mode":"plan"},"selected_alias":"bundle"}],"properties":{"expected_effect":{"description":"Expected effect used to reject stale or mismatched input.","enum":["pure","observation-only"],"type":"string"},"instrumentation":{"additionalProperties":false,"description":"Value for instrumentation.","properties":{"artifact_path":{"description":"Local filesystem path for artifact.","maxLength":4096,"minLength":1,"type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"selection":{"additionalProperties":false,"description":"Value for selection.","properties":{"byte_end":{"description":"Value for byte end.","maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"description":"Value for byte start.","maximum":9007199254740991,"minimum":0,"type":"integer"},"export_name":{"description":"Value for export name.","pattern":"^[A-Za-z_$][A-Za-z0-9_$]{0,199}$","type":"string"},"selected_sha256":{"description":"Exact SHA-256 digest of selected.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256","export_name"],"type":"object"}},"required":["artifact_path","artifact_sha256","selection"],"type":"object"},"preparation_approved":{"const":true,"description":"Explicit operator approval for preparation.","type":"boolean"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},"selected_alias":{"description":"Value for selected alias.","maxLength":200,"minLength":1,"type":"string"}},"required":["preparation_approved","selected_alias","expected_effect","instrumentation","replay"],"type":"object"},"kind":"application","name":"prepare_node_characterization","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"phase":{"const":"preparation","type":"string"},"plan":{"additionalProperties":false,"properties":{"allowed_boundaries":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length"],"type":"object"},"authority":{"additionalProperties":false,"properties":{"execution_approved":{"const":false,"type":"boolean"},"network":{"enum":["none","loopback"],"type":"string"},"preparation_approved":{"const":true,"type":"boolean"},"provider_owned_process_only":{"const":true,"type":"boolean"}},"required":["preparation_approved","execution_approved","network","provider_owned_process_only"],"type":"object"},"callable":{"additionalProperties":false,"properties":{"callable_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"export_name":{"maxLength":1000,"minLength":1,"type":"string"},"module_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selector_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"semantic_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["callable_id","module_id","export_name","semantic_evidence_id","selector_sha256"],"type":"object"},"determinism":{"additionalProperties":false,"properties":{"clock":{"enum":["fixed","real"],"type":"string"},"identifiers":{"enum":["deterministic","runtime"],"type":"string"},"randomness":{"enum":["seeded","system"],"type":"string"},"seed":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["clock","randomness","identifiers","seed"],"type":"object"},"expected_effect":{"enum":["pure","observation-only"],"type":"string"},"isolated_home":{"maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"properties":{"idle_timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"},"max_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_calls":{"maximum":10000,"minimum":1,"type":"integer"},"max_files":{"maximum":100000,"minimum":0,"type":"integer"},"max_handles":{"maximum":100000,"minimum":0,"type":"integer"},"max_processes":{"maximum":1000,"minimum":0,"type":"integer"},"timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"}},"required":["max_calls","max_processes","max_files","max_bytes","max_handles","timeout_ms","idle_timeout_ms"],"type":"object"},"plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"preparation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime":{"additionalProperties":false,"properties":{"executable_path":{"maxLength":4096,"minLength":1,"type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"family":{"maxLength":100,"minLength":1,"type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"provider_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"version":{"maxLength":500,"minLength":1,"type":"string"}},"required":["family","provider_id","executable_path","executable_sha256","version","profile_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"working_directory":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["schema_version","plan_sha256","preparation_sha256","artifact","runtime","callable","working_directory","isolated_home","expected_effect","allowed_boundaries","limits","determinism","authority"],"type":"object"},"replay":{"additionalProperties":false,"properties":{"evidence":{"type":"null"},"phase":{"const":"plan","type":"string"},"plan":{"additionalProperties":false,"properties":{"cases":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},"case_id":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["case_id","arguments","sha256"],"type":"object"},"type":"array"},"determinism":{"additionalProperties":false,"properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","type":"string"},"platform":{"const":"linux","default":"linux","type":"string"},"random_seed":{"default":0,"maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","type":"string"}},"required":["clock_iso","random_seed","locale","timezone","platform"],"type":"object"},"effects":{"items":{"type":"string"},"type":"array"},"filesystem":{"additionalProperties":false,"properties":{"host_writes":{"const":false,"type":"boolean"},"private_tmpfs_bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["host_writes","private_tmpfs_bytes"],"type":"object"},"left":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"limits":{"additionalProperties":false,"properties":{"cpu_quota_percent":{"default":50,"maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"maximum":10000,"minimum":100,"type":"integer"}},"required":["wall_time_ms","memory_bytes","tasks","cpu_quota_percent","tmpfs_bytes","module_bytes","input_bytes","protocol_bytes","output_bytes","stderr_bytes","result_depth","result_nodes"],"type":"object"},"network":{"const":"none","type":"string"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"policy_version":{"const":"linux-bwrap-systemd-v1","type":"string"},"reproducer_export":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"const":"evidence_write","type":"string"},"include_sources":{"type":"boolean"},"path":{"minLength":1,"type":"string"}},"required":["path","include_sources","authority"],"type":"object"},{"type":"null"}]},"right":{"additionalProperties":false,"properties":{"entry_alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"type":"string"},"modules":{"items":{"additionalProperties":false,"properties":{"alias":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"byte_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"canonical_path":{"minLength":1,"type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"propertyNames":{"type":"string"},"type":"object"},"format":{"enum":["esm","commonjs-factory"],"type":"string"},"role":{"enum":["module","stub"],"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["alias","canonical_path","format","role","byte_count","sha256","dependencies"],"type":"object"},"type":"array"}},"required":["modules","entry_alias","entry_export"],"type":"object"},"runtime":{"additionalProperties":false,"properties":{"executable":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"read_only_files":{"items":{"additionalProperties":false,"properties":{"destination_path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"source_path":{"minLength":1,"type":"string"}},"required":["source_path","destination_path","sha256"],"type":"object"},"minItems":1,"type":"array"},"worker":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["executable","worker","read_only_files"],"type":"object"},"sandbox":{"additionalProperties":false,"properties":{"bubblewrap":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"seccomp_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"shell":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemctl":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"},"systemd_run":{"additionalProperties":false,"properties":{"path":{"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"version":{"minLength":1,"type":"string"}},"required":["path","version","sha256"],"type":"object"}},"required":["bubblewrap","systemd_run","systemctl","shell","seccomp_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","plan_digest","policy_version","policy_sha256","network","filesystem","runtime","sandbox","left","cases","determinism","limits","effects","reproducer_export"],"type":"object"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema2"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"maxItems":0,"minItems":0,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},"schema_version":{"const":1,"type":"number"},"transformation":{"additionalProperties":false,"properties":{"artifact_path":{"maxLength":4096,"minLength":1,"type":"string"},"inserted_ranges":{"items":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inserted_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"purpose":{"enum":["factory-prefix","export-binding","factory-suffix"],"type":"string"}},"required":["byte_start","byte_end","inserted_sha256","purpose"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"instrumented_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"instrumented_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"commonjs-factory-export-v1","type":"string"},"original_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_format":{"const":"commonjs-factory","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_range":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"selected_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256"],"type":"object"},"source_map":{"const":null,"type":"null"}},"required":["schema_version","kind","artifact_path","original_sha256","original_byte_length","instrumented_sha256","instrumented_byte_length","selected_range","inserted_ranges","output_format","source_map"],"type":"object"},"transformation_evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]}},"required":["schema_version","phase","plan","transformation","transformation_evidence","replay"],"type":"object"},"requiresSession":false,"title":"Prepare Node Characterization"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Recompute and execute one separately approved exact Node characterization plan in the owned controlled-replay boundary. Returns transformation, replay, cleanup, and provider-neutral characterization Evidence v2; stale plans fail before execution.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved_plan_sha256":"0000000000000000000000000000000000000000000000000000000000000000","execution_approved":true,"preparation":{"expected_effect":"pure","instrumentation":{"artifact_path":"/approved/bundle.js","artifact_sha256":"0000000000000000000000000000000000000000000000000000000000000000","selection":{"byte_end":120,"byte_start":100,"export_name":"selected","selected_sha256":"0000000000000000000000000000000000000000000000000000000000000000"}},"preparation_approved":true,"replay":{"cases":[{"arguments":[""],"case_id":"empty"}],"left":{"entry_alias":"bundle","entry_export":"selected","modules":[{"alias":"bundle","dependencies":{},"format":"commonjs-factory","path":"/approved/bundle.js","role":"module"}]},"mode":"plan"},"selected_alias":"bundle"}}],"properties":{"approved_plan_sha256":{"description":"Exact SHA-256 digest of approved plan.","pattern":"^[a-f0-9]{64}$","type":"string"},"execution_approved":{"const":true,"description":"Explicit operator approval for execution.","type":"boolean"},"preparation":{"additionalProperties":false,"description":"Value for preparation.","properties":{"expected_effect":{"description":"Expected effect used to reject stale or mismatched input.","enum":["pure","observation-only"],"type":"string"},"instrumentation":{"additionalProperties":false,"description":"Value for instrumentation.","properties":{"artifact_path":{"description":"Local filesystem path for artifact.","maxLength":4096,"minLength":1,"type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"selection":{"additionalProperties":false,"description":"Value for selection.","properties":{"byte_end":{"description":"Value for byte end.","maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"description":"Value for byte start.","maximum":9007199254740991,"minimum":0,"type":"integer"},"export_name":{"description":"Value for export name.","pattern":"^[A-Za-z_$][A-Za-z0-9_$]{0,199}$","type":"string"},"selected_sha256":{"description":"Exact SHA-256 digest of selected.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256","export_name"],"type":"object"}},"required":["artifact_path","artifact_sha256","selection"],"type":"object"},"preparation_approved":{"const":true,"description":"Explicit operator approval for preparation.","type":"boolean"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"cases":{"default":[],"description":"Value for cases.","items":{"additionalProperties":false,"properties":{"arguments":{"description":"Value for arguments.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"type":"array"},"case_id":{"description":"Value for case id.","maxLength":128,"minLength":1,"type":"string"}},"required":["case_id","arguments"],"type":"object"},"maxItems":128,"type":"array"},"determinism":{"additionalProperties":false,"default":{"clock_iso":"2000-01-01T00:00:00.000Z","locale":"en-US","platform":"linux","random_seed":0,"timezone":"UTC"},"description":"Value for determinism.","properties":{"clock_iso":{"default":"2000-01-01T00:00:00.000Z","description":"Value for clock iso.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"locale":{"const":"en-US","default":"en-US","description":"Value for locale.","type":"string"},"platform":{"const":"linux","default":"linux","description":"Value for platform.","type":"string"},"random_seed":{"default":0,"description":"Value for random seed.","maximum":4294967295,"minimum":0,"type":"integer"},"timezone":{"const":"UTC","default":"UTC","description":"Value for timezone.","type":"string"}},"type":"object"},"generator":{"additionalProperties":false,"description":"Value for generator.","properties":{"count":{"description":"Value for count.","maximum":64,"minimum":1,"type":"integer"},"preset":{"description":"Value for preset.","enum":["parser-boundaries","sanitizer-boundaries","clipboard-boundaries"],"type":"string"},"seed":{"description":"Value for seed.","maximum":4294967295,"minimum":0,"type":"integer"}},"required":["preset","seed","count"],"type":"object"},"left":{"additionalProperties":false,"description":"Left-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"},"limits":{"additionalProperties":false,"default":{"cpu_quota_percent":50,"input_bytes":262144,"memory_bytes":134217728,"module_bytes":4194304,"output_bytes":524288,"protocol_bytes":16777216,"result_depth":16,"result_nodes":10000,"stderr_bytes":32768,"tasks":8,"tmpfs_bytes":16777216,"wall_time_ms":3000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"cpu_quota_percent":{"default":50,"description":"Value for cpu quota percent.","maximum":100,"minimum":1,"type":"integer"},"input_bytes":{"default":262144,"description":"Bounded byte count for input.","maximum":1048576,"minimum":1,"type":"integer"},"memory_bytes":{"default":134217728,"description":"Bounded byte count for memory.","maximum":536870912,"minimum":16777216,"type":"integer"},"module_bytes":{"default":4194304,"description":"Bounded byte count for module.","maximum":16777216,"minimum":1,"type":"integer"},"output_bytes":{"default":524288,"description":"Bounded byte count for output.","maximum":4194304,"minimum":1,"type":"integer"},"protocol_bytes":{"default":16777216,"description":"Bounded byte count for protocol.","maximum":67108864,"minimum":1048576,"type":"integer"},"result_depth":{"default":16,"description":"Value for result depth.","maximum":64,"minimum":1,"type":"integer"},"result_nodes":{"default":10000,"description":"Value for result nodes.","maximum":100000,"minimum":1,"type":"integer"},"stderr_bytes":{"default":32768,"description":"Bounded byte count for stderr.","maximum":262144,"minimum":0,"type":"integer"},"tasks":{"default":8,"description":"Value for tasks.","maximum":32,"minimum":1,"type":"integer"},"tmpfs_bytes":{"default":16777216,"description":"Bounded byte count for tmpfs.","maximum":67108864,"minimum":1048576,"type":"integer"},"wall_time_ms":{"default":3000,"description":"Value for wall time ms.","maximum":10000,"minimum":100,"type":"integer"}},"type":"object"},"mode":{"const":"plan","description":"Operation mode that selects the requested behavior.","type":"string"},"reproducer_export":{"additionalProperties":false,"description":"Value for reproducer export.","properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"include_sources":{"default":false,"description":"Whether to include sources in the result.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"}},"required":["path","approved"],"type":"object"},"right":{"additionalProperties":false,"description":"Right-hand input used for comparison or differential execution.","properties":{"entry_alias":{"description":"Value for entry alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"entry_export":{"default":"default","description":"Value for entry export.","maxLength":256,"minLength":1,"type":"string"},"modules":{"description":"Value for modules.","items":{"additionalProperties":false,"properties":{"alias":{"description":"Value for alias.","maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"dependencies":{"additionalProperties":{"maxLength":256,"minLength":1,"pattern":"^[A-Za-z0-9_./:@-]+$","type":"string"},"default":{},"description":"Value for dependencies.","propertyNames":{"maxLength":256,"minLength":1,"type":"string"},"type":"object"},"format":{"description":"Declared input artifact format.","enum":["esm","commonjs-factory"],"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":4096,"pattern":"^\\\\/.*","type":"string"},"role":{"default":"module","description":"Value for role.","enum":["module","stub"],"type":"string"}},"required":["alias","path","format"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["modules","entry_alias"],"type":"object"}},"required":["left","mode"],"type":"object"},"selected_alias":{"description":"Value for selected alias.","maxLength":200,"minLength":1,"type":"string"}},"required":["preparation_approved","selected_alias","expected_effect","instrumentation","replay"],"type":"object"}},"required":["execution_approved","approved_plan_sha256","preparation"],"type":"object"},"kind":"application","name":"execute_node_characterization","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"phase":{"const":"execution","type":"string"},"plan":{"additionalProperties":false,"properties":{"allowed_boundaries":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"artifact":{"additionalProperties":false,"properties":{"byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"maxLength":4096,"minLength":1,"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","sha256","byte_length"],"type":"object"},"authority":{"additionalProperties":false,"properties":{"execution_approved":{"const":false,"type":"boolean"},"network":{"enum":["none","loopback"],"type":"string"},"preparation_approved":{"const":true,"type":"boolean"},"provider_owned_process_only":{"const":true,"type":"boolean"}},"required":["preparation_approved","execution_approved","network","provider_owned_process_only"],"type":"object"},"callable":{"additionalProperties":false,"properties":{"callable_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"export_name":{"maxLength":1000,"minLength":1,"type":"string"},"module_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selector_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"semantic_evidence_id":{"anyOf":[{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["callable_id","module_id","export_name","semantic_evidence_id","selector_sha256"],"type":"object"},"determinism":{"additionalProperties":false,"properties":{"clock":{"enum":["fixed","real"],"type":"string"},"identifiers":{"enum":["deterministic","runtime"],"type":"string"},"randomness":{"enum":["seeded","system"],"type":"string"},"seed":{"maximum":4294967295,"minimum":0,"type":"integer"}},"required":["clock","randomness","identifiers","seed"],"type":"object"},"expected_effect":{"enum":["pure","observation-only"],"type":"string"},"isolated_home":{"maxLength":4096,"minLength":1,"type":"string"},"limits":{"additionalProperties":false,"properties":{"idle_timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"},"max_bytes":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"max_calls":{"maximum":10000,"minimum":1,"type":"integer"},"max_files":{"maximum":100000,"minimum":0,"type":"integer"},"max_handles":{"maximum":100000,"minimum":0,"type":"integer"},"max_processes":{"maximum":1000,"minimum":0,"type":"integer"},"timeout_ms":{"maximum":300000,"minimum":1,"type":"integer"}},"required":["max_calls","max_processes","max_files","max_bytes","max_handles","timeout_ms","idle_timeout_ms"],"type":"object"},"plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"preparation_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"runtime":{"additionalProperties":false,"properties":{"executable_path":{"maxLength":4096,"minLength":1,"type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"family":{"maxLength":100,"minLength":1,"type":"string"},"profile_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"provider_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"version":{"maxLength":500,"minLength":1,"type":"string"}},"required":["family","provider_id","executable_path","executable_sha256","version","profile_sha256"],"type":"object"},"schema_version":{"const":1,"type":"number"},"working_directory":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["schema_version","plan_sha256","preparation_sha256","artifact","runtime","callable","working_directory","isolated_home","expected_effect","allowed_boundaries","limits","determinism","authority"],"type":"object"},"replay":{"additionalProperties":false,"properties":{"evidence":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema1"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"phase":{"const":"execute","type":"string"},"plan":{"type":"null"},"source_evidence":{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"residual_resources":{"items":{"type":"string"},"type":"array"},"state":{"enum":["complete","incomplete"],"type":"string"}},"required":["state","residual_resources"],"type":"object"},"comparison":{"items":{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"left_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"right_index":{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},"status":{"enum":["equal","changed","unknown"],"type":"string"}},"required":["case_id","status","left_index","right_index"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"outcomes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"return","type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"},"value":{"$ref":"#/$defs/__schema1"}},"required":["case_id","input_sha256","outcome","value","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"exception":{"additionalProperties":false,"properties":{"message":{"type":"string"},"name":{"type":"string"},"stack":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","message","stack"],"type":"object"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["exception","serialization_error","denied"],"type":"string"},"output_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","exception","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"enum":["timeout","oom","crash","cancelled"],"type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":false,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"},{"additionalProperties":false,"properties":{"case_id":{"type":"string"},"input_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"outcome":{"const":"protocol_error","type":"string"},"output_sha256":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["case_id","input_sha256","outcome","output_sha256","truncated"],"type":"object"}]},"type":"array"},"plan_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reproducer":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"state":{"const":"written","type":"string"}},"required":["state","path","sha256"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"type":"string"},"path":{"type":"string"},"state":{"const":"failed","type":"string"}},"required":["state","path","error"],"type":"object"}]},{"type":"null"}]},"schema_version":{"const":1,"type":"number"},"stderr":{"type":"string"},"termination":{"enum":["completed","timeout","oom","crash","cancelled","protocol_error"],"type":"string"}},"required":["schema_version","plan_digest","outcomes","stderr","termination","cleanup","limitations","reproducer"],"type":"object"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","confidence","authority","environment","limitations","locations","evidence_links","normalized_result"],"type":"object"},"minItems":1,"type":"array"}},"required":["phase","plan","source_evidence","evidence"],"type":"object"},"schema_version":{"const":1,"type":"number"},"transformation":{"additionalProperties":false,"properties":{"artifact_path":{"maxLength":4096,"minLength":1,"type":"string"},"inserted_ranges":{"items":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"inserted_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"purpose":{"enum":["factory-prefix","export-binding","factory-suffix"],"type":"string"}},"required":["byte_start","byte_end","inserted_sha256","purpose"],"type":"object"},"maxItems":3,"minItems":3,"type":"array"},"instrumented_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"instrumented_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"kind":{"const":"commonjs-factory-export-v1","type":"string"},"original_byte_length":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"original_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"output_format":{"const":"commonjs-factory","type":"string"},"schema_version":{"const":1,"type":"number"},"selected_range":{"additionalProperties":false,"properties":{"byte_end":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"byte_start":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"selected_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["byte_start","byte_end","selected_sha256"],"type":"object"},"source_map":{"const":null,"type":"null"}},"required":["schema_version","kind","artifact_path","original_sha256","original_byte_length","instrumented_sha256","instrumented_byte_length","selected_range","inserted_ranges","output_format","source_map"],"type":"object"},"transformation_evidence":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"id":{"minLength":1,"type":"string"},"isolation":{"enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"locations":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"address":{"minLength":1,"type":"string"},"kind":{"const":"address","type":"string"}},"required":["kind","address"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"minLength":1,"type":"string"},"kind":{"const":"address-range","type":"string"},"start":{"minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"artifact-path","type":"string"},"path":{"minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"file-offset","type":"string"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"additionalProperties":false,"properties":{"end":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","type":"string"},"start":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0"},"operation":{"minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"minLength":1,"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"schema_version":{"const":2,"type":"number"},"subject":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"digest":{"additionalProperties":false,"properties":{"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"type":"string"},"name":{"minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}]}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]}},"required":["schema_version","phase","plan","transformation","transformation_evidence","evidence","replay"],"type":"object"},"requiresSession":false,"title":"Execute Node Characterization"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Generate one deterministic page of a ReconstructionObligationLedger/v1 from an authenticated Evidence v2 bundle, reviewed obligations, and an explicit reconstruction manifest. Static candidates remain candidates; duplicate ownership, missing original or reconstruction cases, missing parser/type, weak verifier authority, unenumerated claims, contradictions, dependencies, and residual unknowns fail closed. Every page carries the same full-ledger closure digest and typed per-obligation diagnostics.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[],"records":[],"scenarios":[],"unknowns":[]},"limits":{"max_obligations":1000},"manifest":{"bindings":[],"contradictions":[],"schema_version":1},"page":{"limit":50,"offset":0},"reviewed_obligations":[]}],"properties":{"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"limits":{"additionalProperties":false,"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"max_obligations":{"description":"Maximum permitted obligations for this operation.","maximum":10000,"minimum":1,"type":"integer"}},"required":["max_obligations"],"type":"object"},"manifest":{"additionalProperties":false,"description":"Value for manifest.","properties":{"bindings":{"description":"Value for bindings.","items":{"additionalProperties":false,"properties":{"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"description":"Value for case kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"description":"Value for original cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"description":"Value for owner.","properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"description":"Value for domain type.","maxLength":4096,"minLength":1,"type":"string"},"parser":{"description":"Value for parser.","maxLength":4096,"minLength":1,"type":"string"},"schema":{"description":"Value for schema.","maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}],"description":"Value for parser type."},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"description":"Value for command.","maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"description":"Value for enumerated obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"description":"Value for nondeterminism.","properties":{"mode":{"description":"Operation mode that selects the requested behavior.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"description":"Value for specification.","maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"description":"Exact Evidence v2 identifier for the result observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}],"description":"Value for verifier."}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},"maxItems":10000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":2,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","bindings","contradictions"],"type":"object"},"page":{"additionalProperties":false,"description":"Value for page.","properties":{"limit":{"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"description":"Zero-based index of the first result to return.","maximum":10000,"minimum":0,"type":"integer"}},"required":["offset","limit"],"type":"object"},"reviewed_obligations":{"description":"Value for reviewed obligations.","items":{"additionalProperties":false,"properties":{"application_layer":{"description":"Value for application layer.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"dependency_obligation_ids":{"description":"Value for dependency obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"disposition":{"description":"Value for disposition.","enum":["active","blocked","out-of-scope"],"type":"string"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"description":"Value for obligation version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"required":{"description":"Value for required.","type":"boolean"},"required_case_kinds":{"description":"Value for required case kinds.","items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"description":"Value for required fixture authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"description":"Value for required next evidence.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"description":"Value for required original authority.","enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"description":"Value for required verifier authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"description":"Value for requires parser type.","type":"boolean"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"review_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the review observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"target":{"additionalProperties":false,"description":"Value for target.","properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for application node id."},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of artifact."},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for semantic node id."}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"description":"Value for unavailable authority.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","application_layer","family","target","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","disposition","review_evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"}},"required":["evidence_bundle","reviewed_obligations","manifest","limits","page"],"type":"object"},"kind":"application","name":"build_reconstruction_obligation_ledger","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"closure_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"properties":{"max_obligations":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"omitted_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"enum":["complete","partial"],"type":"string"},"truncated":{"type":"boolean"}},"required":["status","truncated","omitted_count","max_obligations"],"type":"object"},"dependency_graph":{"items":{"additionalProperties":false,"properties":{"depends_on_obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","depends_on_obligation_id"],"type":"object"},"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"ledger_id":{"pattern":"^rol_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"obligations":{"items":{"additionalProperties":false,"properties":{"application_layer":{"enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"authority_references":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"},"state":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["evidence_id","authority","state","location"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"binding":{"anyOf":[{"additionalProperties":false,"properties":{"fixtures":{"items":{"additionalProperties":false,"properties":{"authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"properties":{"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"maxLength":4096,"minLength":1,"type":"string"},"parser":{"maxLength":4096,"minLength":1,"type":"string"},"schema":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}]},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"properties":{"mode":{"enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}]}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},{"type":"null"}]},"dependency_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"diagnostics":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["duplicate-definition","missing-owner","ambiguous-owner","missing-parser-type","missing-original-case","weak-original-case-authority","missing-case","weak-fixture-authority","missing-verifier","verifier-does-not-enumerate","missing-verifier-result","weak-verifier-authority","verifier-failed","static-only","contradiction","contradiction-evidence-missing","residual-unknown","dependency-missing","dependency-open","unavailable-authority","blocked","out-of-scope"],"type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["code","detail"],"type":"object"},"maxItems":1000,"type":"array"},"family":{"maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_cases":{"items":{"additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"origin":{"enum":["generated","reviewed"],"type":"string"},"required":{"type":"boolean"},"required_case_kinds":{"items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"type":"boolean"},"residual_unknown_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"source_state":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"},"status":{"enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"},"target":{"additionalProperties":false,"properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"location":{"maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","origin","application_layer","family","target","authority_references","source_state","observed_cases","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","binding","status","diagnostics"],"type":"object"},"maxItems":100,"type":"array"},"ownership_graph":{"items":{"additionalProperties":false,"properties":{"module_path":{"maxLength":4096,"minLength":1,"type":"string"},"obligation_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"symbol":{"maxLength":1024,"minLength":1,"type":"string"}},"required":["obligation_id","module_path","symbol"],"type":"object"},"type":"array"},"page":{"additionalProperties":false,"properties":{"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offset","limit","total","returned","next_offset"],"type":"object"},"reports":{"additionalProperties":false,"properties":{"contradicted_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_owner_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_verifier_obligation_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"residual_unknown_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"}},"required":["missing_owner_obligation_ids","missing_verifier_obligation_ids","contradicted_obligation_ids","residual_unknown_ids"],"type":"object"},"schema":{"const":"ReconstructionObligationLedger","type":"string"},"schema_version":{"const":1,"type":"number"},"status":{"enum":["ready","open","failed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"by_application_layer":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_evidence_authority":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_status":{"items":{"additionalProperties":false,"properties":{"count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"required":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_open":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","required","verified","required_open","by_status","by_application_layer","by_evidence_authority"],"type":"object"}},"required":["schema","schema_version","ledger_id","closure_digest","status","coverage","summary","reports","ownership_graph","dependency_graph","evidence_links","limitations","page","obligations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Build Reconstruction Obligation Ledger"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate the fixed nine-stage public reconstruction journey into a deterministic ReconstructionReadinessReport/v1. Exact capability limits, provider routing, CLI/MCP status parity, bounded authority, partial-order comparison, contradictions, obligation closure, cleanup, and replay digests fail closed. Aggregate pass is emitted only when every required stage and check passes with attributable Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"capabilities":[{"authority_scopes":["investigation-input"],"available":true,"bounded":true,"capability_id":"analyze-javascript-application","limits":[{"name":"max-ast-nodes","unit":"count","value":2000000}],"side_effect":"reads-target","unavailable_reason":null}],"cleanup":[{"cancelled":true,"diagnostic_evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"owned_resources_remaining":0,"run_id":"run.cancelled"}],"client":{"name":"synthetic-mcp-client","negotiated_capabilities":["elicitation","progress","resources"],"version":"1"},"closure_history":[{"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_digest":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","newly_verified_obligation_ids":[],"required_open":1,"sequence":0,"status":"open"},{"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","newly_verified_obligation_ids":["obl.readiness"],"required_open":0,"sequence":1,"status":"ready"}],"comparisons":[{"comparison_id":"comparison.concurrent","concurrent":true,"contradiction_ids":[],"deliberate_divergence_ref":null,"divergence_refs":[],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"partial-order","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"equivalent"},{"comparison_id":"comparison.divergence","concurrent":true,"contradiction_ids":[],"deliberate_divergence_ref":"/events/primary","divergence_refs":["/events/primary"],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"finite-traces","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"different"},{"comparison_id":"comparison.contradicted","concurrent":false,"contradiction_ids":["contradiction.artifact"],"deliberate_divergence_ref":null,"divergence_refs":[],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"schedule_semantics":"finite-traces","truncated":false,"unavailable_authority":false,"unstable":false,"verdict":"unknown"}],"contradictions":[{"affected_comparison_ids":["comparison.contradicted"],"contradiction_id":"contradiction.artifact","declared_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91"],"observed_sha256":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","policy":"record-and-continue"}],"delegation_checks":[{"candidate_id":"candidate.reconstructed","delegates_to_authority":false,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"]}],"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"}],"records":[{"authority":"controlled-replay","confidence":"observed","environment":null,"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"passed":true,"variant":"authority"},"operation":"run_reconstruction_readiness_fixture","parameters":{"variant":"authority"},"predicate_type":"rea.reconstruction-readiness-fixture/v1","provider":{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"},"raw_result":null,"schema_version":2,"subject":null},{"authority":"controlled-replay","confidence":"observed","environment":null,"evidence_id":"ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91","evidence_links":[],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"passed":true,"variant":"contradiction"},"operation":"run_reconstruction_readiness_fixture","parameters":{"variant":"contradiction"},"predicate_type":"rea.reconstruction-readiness-fixture/v1","provider":{"id":"rea-readiness-fixture","name":"REA readiness fixture","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"scenarios":[{"authority":"controlled-replay","evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","operation":"run_reconstruction_readiness_fixture"},{"authority":"controlled-replay","evidence_id":"ev_b05c548cf5d0ba30bb6043ec26e583b551e793c636b747e1ed8630c511439f91","operation":"run_reconstruction_readiness_fixture"}],"unknowns":[]},"fixtures":[{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.native"],"environment_id":"environment.synthetic","fixture_id":"fixture.native","kind":"native"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.javascript-cli"],"environment_id":"environment.synthetic","fixture_id":"fixture.javascript-cli","kind":"javascript-cli"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.electron"],"environment_id":"environment.synthetic","fixture_id":"fixture.electron","kind":"electron"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.incomplete-reconstruction"],"environment_id":"environment.synthetic","fixture_id":"fixture.incomplete-reconstruction","kind":"incomplete-reconstruction"},{"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","deliberate_faults":["fault.broken-runtime"],"environment_id":"environment.synthetic","fixture_id":"fixture.broken-runtime","kind":"broken-runtime"}],"grants":[{"decision":"denied","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"grant_id":"grant.denied","launched_process":false,"scope":"process-capture"},{"decision":"granted","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"grant_id":"grant.session","launched_process":true,"scope":"process-capture"}],"identity":{"catalog_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","cli_version":"2.4.0","providers":[{"digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","provider_id":"javascript-application","reason_code":null,"state":"available","version":"1"},{"digest":null,"provider_id":"broken-runtime-probe","reason_code":"host-runtime-linker-failure","state":"broken-host","version":null}],"server_version":"2.4.0","skill_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","versions":[{"component":"rea-cli","digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","remediation":null,"state":"current","version":"2.4.0"},{"component":"rea-server","digest":"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb","remediation":"Restart the connected MCP server.","state":"stale","version":"2.3.0"},{"component":"rea-server","digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","remediation":null,"state":"current","version":"2.4.0"}]},"obligation_ledger":{"closure_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","coverage":{"max_obligations":100,"omitted_count":0,"status":"complete","truncated":false},"dependency_graph":[],"evidence_links":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"ledger_id":"rol_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","limitations":[],"obligations":[{"application_layer":"process","authority_references":[{"authority":"controlled-replay","evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","location":"/fixture","state":"observed"}],"binding":{"fixtures":[{"authority":"packaged-process","case_kind":"positive","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.positive"},{"authority":"packaged-process","case_kind":"negative","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.negative"},{"authority":"packaged-process","case_kind":"malformed","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.malformed"},{"authority":"packaged-process","case_kind":"cancellation","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.cancellation"},{"authority":"packaged-process","case_kind":"teardown","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"fixture_id":"fixture.teardown"}],"obligation_id":"obl.readiness","original_cases":[{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"positive","location":"/original/positive"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"negative","location":"/original/negative"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"malformed","location":"/original/malformed"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"cancellation","location":"/original/cancellation"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"teardown","location":"/original/teardown"}],"owner":{"module_path":"src/readiness.ts","owner_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","symbol":"runReadiness"},"parser_type":null,"verifier":{"authority":"packaged-process","claim_id":"claim.readiness","command":"npm run verify:readiness","enumerated_obligation_ids":["obl.readiness"],"nondeterminism":{"mode":"partial-order","specification":"Startup precedes teardown."},"result_evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","status":"pass","verifier_id":"verifier.readiness"}},"dependency_obligation_ids":[],"diagnostics":[],"family":"packaged-process-lifecycle","obligation_id":"obl.readiness","obligation_version":1,"observed_cases":[{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"positive","location":"/original/positive"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"negative","location":"/original/negative"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"malformed","location":"/original/malformed"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"cancellation","location":"/original/cancellation"},{"evidence_id":"ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9","kind":"teardown","location":"/original/teardown"}],"origin":"reviewed","required":true,"required_case_kinds":["positive","negative","malformed","cancellation","teardown"],"required_fixture_authority":"packaged-process","required_next_evidence":[],"required_original_authority":"process","required_verifier_authority":"packaged-process","requires_parser_type":false,"residual_unknown_ids":[],"source_state":"observed","status":"verified","target":{"application_node_id":null,"artifact_sha256":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","location":"/fixture","semantic_node_id":null},"title":"Preserve the packaged readiness fixture lifecycle","unavailable_authority":[]}],"ownership_graph":[{"module_path":"src/readiness.ts","obligation_id":"obl.readiness","symbol":"runReadiness"}],"reports":{"contradicted_obligation_ids":[],"missing_owner_obligation_ids":[],"missing_verifier_obligation_ids":[],"residual_unknown_ids":[]},"schema":"ReconstructionObligationLedger","schema_version":1,"status":"ready","summary":{"by_application_layer":[{"count":0,"key":"cli"},{"count":0,"key":"protocol"},{"count":0,"key":"electron"},{"count":0,"key":"persistence"},{"count":1,"key":"process"},{"count":0,"key":"runtime"},{"count":0,"key":"packaging"},{"count":0,"key":"native-abi"},{"count":0,"key":"application"},{"count":0,"key":"other"}],"by_evidence_authority":[{"count":0,"key":"candidate"},{"count":1,"key":"observed"},{"count":0,"key":"reviewed"},{"count":0,"key":"unknown"}],"by_status":[{"count":0,"key":"unowned"},{"count":0,"key":"characterized"},{"count":0,"key":"implemented"},{"count":1,"key":"verified"},{"count":0,"key":"contradicted"},{"count":0,"key":"blocked"},{"count":0,"key":"out-of-scope"},{"count":0,"key":"unknown"}],"required":1,"required_open":0,"total":1,"verified":1}},"operation_outcomes":[{"call_kind":"valid","cli_exit_code":0,"error_code":null,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":true,"mcp_status":null,"operation":"inspect-artifact","recovered":false,"sequence":0,"surface":"cli"},{"call_kind":"valid","cli_exit_code":null,"error_code":null,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":true,"mcp_status":"success","operation":"inspect-artifact","recovered":false,"sequence":1,"surface":"mcp"},{"call_kind":"permission","cli_exit_code":2,"error_code":"permission-required","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":false,"mcp_status":null,"operation":"capture-process","recovered":true,"sequence":2,"surface":"cli"},{"call_kind":"permission","cli_exit_code":null,"error_code":"permission-required","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_success":false,"mcp_status":"non-success","operation":"capture-process","recovered":true,"sequence":3,"surface":"mcp"}],"replay":{"deterministic":true,"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"expected_source_digest":null,"stale_input_detected":true,"tamper_detected":true},"schema_version":1,"stages":[{"capability_issue":null,"checks":[{"check_id":"target-free-start","detail":"Synthetic conformance proved target-free-start.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"artifact-inventory","detail":"Synthetic conformance proved artifact-inventory.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"compatible-workflow-selected","detail":"Synthetic conformance proved compatible-workflow-selected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"limits-visible","detail":"Synthetic conformance proved limits-visible.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"discover-classify","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"broken-runtime-distinguished","detail":"Synthetic conformance proved broken-runtime-distinguished.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"version-skew-detected","detail":"Synthetic conformance proved version-skew-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"revision-changed-after-recovery","detail":"Synthetic conformance proved revision-changed-after-recovery.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"diagnose-environment","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"missing-scope-reported","detail":"Synthetic conformance proved missing-scope-reported.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"narrow-grant-resumed","detail":"Synthetic conformance proved narrow-grant-resumed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"expansion-reprompted","detail":"Synthetic conformance proved expansion-reprompted.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"denial-launched-nothing","detail":"Synthetic conformance proved denial-launched-nothing.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"acquire-authority","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"native-routed","detail":"Synthetic conformance proved native-routed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"javascript-routed","detail":"Synthetic conformance proved javascript-routed.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"unknowns-preserved","detail":"Synthetic conformance proved unknowns-preserved.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"static-analysis","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"predicate-driven","detail":"Synthetic conformance proved predicate-driven.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"descendant-settled","detail":"Synthetic conformance proved descendant-settled.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"electron-correlated","detail":"Synthetic conformance proved electron-correlated.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"cancel-cleanup-preserved-evidence","detail":"Synthetic conformance proved cancel-cleanup-preserved-evidence.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"reactive-scenarios","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"partial-order-accepted","detail":"Synthetic conformance proved partial-order-accepted.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"divergence-localized","detail":"Synthetic conformance proved divergence-localized.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"incomplete-is-unknown","detail":"Synthetic conformance proved incomplete-is-unknown.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"compare-authority-candidate","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"record-and-continue","detail":"Synthetic conformance proved record-and-continue.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"affected-equivalence-blocked","detail":"Synthetic conformance proved affected-equivalence-blocked.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"unaffected-comparison-continued","detail":"Synthetic conformance proved unaffected-comparison-continued.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"preserve-contradictions","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"incomplete-detected","detail":"Synthetic conformance proved incomplete-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"incremental-verifier-closure","detail":"Synthetic conformance proved incremental-verifier-closure.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"delegation-rejected","detail":"Synthetic conformance proved delegation-rejected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"verify-reconstruction-closure","status":"pass"},{"capability_issue":null,"checks":[{"check_id":"cli-mcp-parity","detail":"Synthetic conformance proved cli-mcp-parity.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"failure-status-parity","detail":"Synthetic conformance proved failure-status-parity.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"deterministic-replay","detail":"Synthetic conformance proved deterministic-replay.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"tamper-detected","detail":"Synthetic conformance proved tamper-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"},{"check_id":"stale-input-detected","detail":"Synthetic conformance proved stale-input-detected.","evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"status":"pass"}],"evidence_ids":["ev_348db7991de053d7b032e8224d07368d0fdb33ee5794588276ba06bfe3a147c9"],"next_action":null,"required":true,"stage_id":"export-replay","status":"pass"}],"workflow_candidates":[{"compatibility":"compatible","fixture_id":"fixture.native","invoked":true,"provider_id":"provider.native","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.native"},{"compatibility":"compatible","fixture_id":"fixture.javascript-cli","invoked":true,"provider_id":"provider.javascript-cli","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.javascript-cli"},{"compatibility":"compatible","fixture_id":"fixture.electron","invoked":true,"provider_id":"provider.electron","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.electron"},{"compatibility":"compatible","fixture_id":"fixture.incomplete-reconstruction","invoked":true,"provider_id":"provider.incomplete-reconstruction","reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.incomplete-reconstruction"},{"compatibility":"compatible","fixture_id":"fixture.broken-runtime","invoked":true,"provider_id":null,"reason_code":"compatible-artifact-family","selected":true,"workflow_id":"workflow.broken-runtime"}]}],"properties":{"capabilities":{"description":"Value for capabilities.","items":{"additionalProperties":false,"properties":{"authority_scopes":{"description":"Value for authority scopes.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"available":{"description":"Value for available.","type":"boolean"},"bounded":{"description":"Value for bounded.","type":"boolean"},"capability_id":{"description":"Value for capability id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"limits":{"description":"Bounded resource-consumption and result-size limits for this operation.","items":{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"unit":{"description":"Value for unit.","enum":["count","bytes","milliseconds","ratio"],"type":"string"},"value":{"description":"Value for value.","minimum":0,"type":"number"}},"required":["name","value","unit"],"type":"object"},"maxItems":100,"type":"array"},"side_effect":{"description":"Value for side effect.","enum":["none","reads-target","launches-process","writes-workspace","network-observation"],"type":"string"},"unavailable_reason":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for unavailable reason."}},"required":["capability_id","available","bounded","side_effect","authority_scopes","limits","unavailable_reason"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"cleanup":{"description":"Value for cleanup.","items":{"additionalProperties":false,"properties":{"cancelled":{"description":"Value for cancelled.","type":"boolean"},"diagnostic_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the diagnostic observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"owned_resources_remaining":{"description":"Value for owned resources remaining.","maximum":9007199254740991,"minimum":0,"type":"integer"},"run_id":{"description":"Value for run id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["run_id","cancelled","owned_resources_remaining","diagnostic_evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"client":{"additionalProperties":false,"description":"Value for client.","properties":{"name":{"description":"Exact name used by this operation.","maxLength":4096,"minLength":1,"type":"string"},"negotiated_capabilities":{"description":"Value for negotiated capabilities.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"version":{"description":"Value for version.","maxLength":4096,"minLength":1,"type":"string"}},"required":["name","version","negotiated_capabilities"],"type":"object"},"closure_history":{"description":"Value for closure history.","items":{"additionalProperties":false,"properties":{"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"ledger_digest":{"description":"Value for ledger digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"newly_verified_obligation_ids":{"description":"Value for newly verified obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"type":"array"},"required_open":{"description":"Value for required open.","maximum":9007199254740991,"minimum":0,"type":"integer"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["ready","open","failed","unknown"],"type":"string"}},"required":["sequence","ledger_digest","status","required_open","newly_verified_obligation_ids","evidence_ids"],"type":"object"},"maxItems":1000,"minItems":2,"type":"array"},"comparisons":{"description":"Validated comparison Evidence records to aggregate.","items":{"additionalProperties":false,"properties":{"comparison_id":{"description":"Value for comparison id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"concurrent":{"description":"Value for concurrent.","type":"boolean"},"contradiction_ids":{"description":"Value for contradiction ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"type":"array"},"deliberate_divergence_ref":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for deliberate divergence ref."},"divergence_refs":{"description":"Value for divergence refs.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"schedule_semantics":{"description":"Value for schedule semantics.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"},"unavailable_authority":{"description":"Value for unavailable authority.","type":"boolean"},"unstable":{"description":"Value for unstable.","type":"boolean"},"verdict":{"description":"Value for verdict.","enum":["equivalent","different","unknown"],"type":"string"}},"required":["comparison_id","verdict","schedule_semantics","concurrent","truncated","unavailable_authority","unstable","deliberate_divergence_ref","divergence_refs","contradiction_ids","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"affected_comparison_ids":{"description":"Value for affected comparison ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"contradiction_id":{"description":"Value for contradiction id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"declared_sha256":{"description":"Exact SHA-256 digest of declared.","pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":2,"type":"array"},"observed_sha256":{"description":"Exact SHA-256 digest of observed.","pattern":"^[a-f0-9]{64}$","type":"string"},"policy":{"const":"record-and-continue","description":"Value for policy.","type":"string"}},"required":["contradiction_id","declared_sha256","observed_sha256","policy","affected_comparison_ids","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"delegation_checks":{"description":"Value for delegation checks.","items":{"additionalProperties":false,"properties":{"candidate_id":{"description":"Value for candidate id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"delegates_to_authority":{"description":"Value for delegates to authority.","type":"boolean"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"}},"required":["candidate_id","delegates_to_authority","evidence_ids"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"deliberate_faults":{"description":"Value for deliberate faults.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"environment_id":{"description":"Value for environment id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"kind":{"description":"Value for kind.","enum":["native","javascript-cli","electron","incomplete-reconstruction","broken-runtime"],"type":"string"}},"required":["fixture_id","kind","artifact_sha256","environment_id","deliberate_faults"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"grants":{"description":"Value for grants.","items":{"additionalProperties":false,"properties":{"decision":{"description":"Value for decision.","enum":["granted","denied","cancelled","restart-required"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"grant_id":{"description":"Value for grant id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"launched_process":{"description":"Value for launched process.","type":"boolean"},"scope":{"description":"Value for scope.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["grant_id","scope","decision","launched_process","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"identity":{"additionalProperties":false,"description":"Value for identity.","properties":{"catalog_digest":{"description":"Value for catalog digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"cli_version":{"description":"Value for cli version.","maxLength":4096,"minLength":1,"type":"string"},"providers":{"description":"Value for providers.","items":{"additionalProperties":false,"properties":{"digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for digest."},"provider_id":{"description":"Exact deep-analysis provider ID, or automatic selection when omitted.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"reason_code":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for reason code."},"state":{"description":"Value for state.","enum":["available","unavailable","incompatible","broken-host"],"type":"string"},"version":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["provider_id","version","digest","state","reason_code"],"type":"object"},"maxItems":100,"type":"array"},"server_version":{"description":"Value for server version.","maxLength":4096,"minLength":1,"type":"string"},"skill_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for skill digest."},"versions":{"description":"Value for versions.","items":{"additionalProperties":false,"properties":{"component":{"description":"Value for component.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for digest."},"remediation":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for remediation."},"state":{"description":"Value for state.","enum":["current","stale","unavailable"],"type":"string"},"version":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["component","version","digest","state","remediation"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}},"required":["cli_version","server_version","catalog_digest","skill_digest","versions","providers"],"type":"object"},"obligation_ledger":{"additionalProperties":false,"description":"Value for obligation ledger.","properties":{"closure_digest":{"description":"Value for closure digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"coverage":{"additionalProperties":false,"description":"Exact reconstruction-coverage commitment to verify.","properties":{"max_obligations":{"description":"Maximum permitted obligations for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"omitted_count":{"description":"Value for omitted count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["complete","partial"],"type":"string"},"truncated":{"description":"Value for truncated.","type":"boolean"}},"required":["status","truncated","omitted_count","max_obligations"],"type":"object"},"dependency_graph":{"description":"Value for dependency graph.","items":{"additionalProperties":false,"properties":{"depends_on_obligation_id":{"description":"Value for depends on obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["obligation_id","depends_on_obligation_id"],"type":"object"},"type":"array"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"ledger_id":{"description":"Value for ledger id.","pattern":"^rol_[a-f0-9]{64}$","type":"string"},"limitations":{"description":"Value for limitations.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":1000,"type":"array"},"obligations":{"description":"Value for obligations.","items":{"additionalProperties":false,"properties":{"application_layer":{"description":"Value for application layer.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"},"authority_references":{"description":"Value for authority references.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"state":{"description":"Value for state.","enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["evidence_id","authority","state","location"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"},"binding":{"anyOf":[{"additionalProperties":false,"properties":{"fixtures":{"description":"Value for fixtures.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"case_kind":{"description":"Value for case kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","case_kind","authority","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"original_cases":{"description":"Value for original cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"owner":{"additionalProperties":false,"description":"Value for owner.","properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["module_path","symbol","owner_sha256"],"type":"object"},"parser_type":{"anyOf":[{"additionalProperties":false,"properties":{"domain_type":{"description":"Value for domain type.","maxLength":4096,"minLength":1,"type":"string"},"parser":{"description":"Value for parser.","maxLength":4096,"minLength":1,"type":"string"},"schema":{"description":"Value for schema.","maxLength":4096,"minLength":1,"type":"string"}},"required":["parser","schema","domain_type"],"type":"object"},{"type":"null"}],"description":"Value for parser type."},"verifier":{"anyOf":[{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"command":{"description":"Value for command.","maxLength":4096,"minLength":1,"type":"string"},"enumerated_obligation_ids":{"description":"Value for enumerated obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"nondeterminism":{"additionalProperties":false,"description":"Value for nondeterminism.","properties":{"mode":{"description":"Operation mode that selects the requested behavior.","enum":["total-order","partial-order","finite-traces"],"type":"string"},"specification":{"description":"Value for specification.","maxLength":4096,"minLength":1,"type":"string"}},"required":["mode","specification"],"type":"object"},"result_evidence_id":{"description":"Exact Evidence v2 identifier for the result observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_id","command","authority","status","result_evidence_id","enumerated_obligation_ids","nondeterminism"],"type":"object"},{"type":"null"}],"description":"Value for verifier."}},"required":["obligation_id","owner","parser_type","original_cases","fixtures","verifier"],"type":"object"},{"type":"null"}],"description":"Value for binding."},"dependency_obligation_ids":{"description":"Value for dependency obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"diagnostics":{"description":"Value for diagnostics.","items":{"additionalProperties":false,"properties":{"code":{"description":"Value for code.","enum":["duplicate-definition","missing-owner","ambiguous-owner","missing-parser-type","missing-original-case","weak-original-case-authority","missing-case","weak-fixture-authority","missing-verifier","verifier-does-not-enumerate","missing-verifier-result","weak-verifier-authority","verifier-failed","static-only","contradiction","contradiction-evidence-missing","residual-unknown","dependency-missing","dependency-open","unavailable-authority","blocked","out-of-scope"],"type":"string"},"detail":{"description":"Requested response detail level.","maxLength":4096,"minLength":1,"type":"string"}},"required":["code","detail"],"type":"object"},"maxItems":1000,"type":"array"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"obligation_version":{"description":"Value for obligation version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_cases":{"description":"Value for observed cases.","items":{"additionalProperties":false,"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"kind":{"description":"Value for kind.","enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","evidence_id","location"],"type":"object"},"maxItems":100,"type":"array"},"origin":{"description":"Value for origin.","enum":["generated","reviewed"],"type":"string"},"required":{"description":"Value for required.","type":"boolean"},"required_case_kinds":{"description":"Value for required case kinds.","items":{"enum":["positive","negative","malformed","cancellation","teardown"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_fixture_authority":{"description":"Value for required fixture authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"required_next_evidence":{"description":"Value for required next evidence.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"},"required_original_authority":{"description":"Value for required original authority.","enum":["static","runtime","process","external"],"type":"string"},"required_verifier_authority":{"description":"Value for required verifier authority.","enum":["unit","integration","protocol","renderer","packaged-process","native-abi","live-observation","external"],"type":"string"},"requires_parser_type":{"description":"Value for requires parser type.","type":"boolean"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"source_state":{"description":"Value for source state.","enum":["candidate","observed","reviewed","unknown"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"},"target":{"additionalProperties":false,"description":"Value for target.","properties":{"application_node_id":{"anyOf":[{"pattern":"^jag_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for application node id."},"artifact_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of artifact."},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"semantic_node_id":{"anyOf":[{"pattern":"^jsrg_node_[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for semantic node id."}},"required":["artifact_sha256","application_node_id","semantic_node_id","location"],"type":"object"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"},"unavailable_authority":{"description":"Value for unavailable authority.","items":{"maxLength":4096,"minLength":1,"type":"string"},"maxItems":100,"type":"array"}},"required":["obligation_id","obligation_version","title","origin","application_layer","family","target","authority_references","source_state","observed_cases","required","required_case_kinds","required_original_authority","required_fixture_authority","required_verifier_authority","requires_parser_type","dependency_obligation_ids","residual_unknown_ids","unavailable_authority","required_next_evidence","binding","status","diagnostics"],"type":"object"},"maxItems":10000,"type":"array"},"ownership_graph":{"description":"Value for ownership graph.","items":{"additionalProperties":false,"properties":{"module_path":{"description":"Local filesystem path for module.","maxLength":4096,"minLength":1,"type":"string"},"obligation_id":{"description":"Value for obligation id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"symbol":{"description":"Value for symbol.","maxLength":1024,"minLength":1,"type":"string"}},"required":["obligation_id","module_path","symbol"],"type":"object"},"type":"array"},"reports":{"additionalProperties":false,"description":"Value for reports.","properties":{"contradicted_obligation_ids":{"description":"Value for contradicted obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_owner_obligation_ids":{"description":"Value for missing owner obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"missing_verifier_obligation_ids":{"description":"Value for missing verifier obligation ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"type":"array"}},"required":["missing_owner_obligation_ids","missing_verifier_obligation_ids","contradicted_obligation_ids","residual_unknown_ids"],"type":"object"},"schema":{"const":"ReconstructionObligationLedger","description":"Value for schema.","type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"status":{"description":"Current lifecycle or verification status.","enum":["ready","open","failed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"description":"Concise evidence-backed summary of the result.","properties":{"by_application_layer":{"description":"Value for by application layer.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["cli","protocol","electron","persistence","process","runtime","packaging","native-abi","application","other"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_evidence_authority":{"description":"Value for by evidence authority.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["candidate","observed","reviewed","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"by_status":{"description":"Value for by status.","items":{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":9007199254740991,"minimum":0,"type":"integer"},"key":{"description":"Value for key.","enum":["unowned","characterized","implemented","verified","contradicted","blocked","out-of-scope","unknown"],"type":"string"}},"required":["key","count"],"type":"object"},"type":"array"},"required":{"description":"Value for required.","maximum":9007199254740991,"minimum":0,"type":"integer"},"required_open":{"description":"Value for required open.","maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"description":"Value for total.","maximum":9007199254740991,"minimum":0,"type":"integer"},"verified":{"description":"Value for verified.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","required","verified","required_open","by_status","by_application_layer","by_evidence_authority"],"type":"object"}},"required":["schema","schema_version","ledger_id","closure_digest","status","coverage","summary","reports","ownership_graph","dependency_graph","obligations","evidence_links","limitations"],"type":"object"},"operation_outcomes":{"description":"Value for operation outcomes.","items":{"additionalProperties":false,"properties":{"call_kind":{"description":"Value for call kind.","enum":["valid","malformed","over-limit","incompatible-provider","setup","permission","operation"],"type":"string"},"cli_exit_code":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Value for cli exit code."},"error_code":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for error code."},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_success":{"description":"Expected success used to reject stale or mismatched input.","type":"boolean"},"mcp_status":{"anyOf":[{"enum":["success","non-success"],"type":"string"},{"type":"null"}],"description":"Value for mcp status."},"operation":{"description":"Value for operation.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"recovered":{"description":"Value for recovered.","type":"boolean"},"sequence":{"description":"Value for sequence.","maximum":9007199254740991,"minimum":0,"type":"integer"},"surface":{"description":"Value for surface.","enum":["cli","mcp"],"type":"string"}},"required":["sequence","operation","surface","call_kind","expected_success","cli_exit_code","mcp_status","error_code","recovered","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"replay":{"additionalProperties":false,"description":"Value for replay.","properties":{"deterministic":{"description":"Value for deterministic.","type":"boolean"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_source_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Expected source digest used to reject stale or mismatched input."},"stale_input_detected":{"description":"Value for stale input detected.","type":"boolean"},"tamper_detected":{"description":"Value for tamper detected.","type":"boolean"}},"required":["expected_source_digest","deterministic","tamper_detected","stale_input_detected","evidence_ids"],"type":"object"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"stages":{"description":"Value for stages.","items":{"additionalProperties":false,"properties":{"capability_issue":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Value for capability issue."},"checks":{"description":"Value for checks.","items":{"additionalProperties":false,"properties":{"check_id":{"description":"Value for check id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"detail":{"description":"Requested response detail level.","maxLength":4096,"minLength":1,"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"}},"required":["check_id","status","detail","evidence_ids"],"type":"object"},"maxItems":100,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"next_action":{"anyOf":[{"maxLength":4096,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for next action."},"required":{"description":"Value for required.","type":"boolean"},"stage_id":{"description":"Value for stage id.","enum":["discover-classify","diagnose-environment","acquire-authority","static-analysis","reactive-scenarios","compare-authority-candidate","preserve-contradictions","verify-reconstruction-closure","export-replay"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"}},"required":["stage_id","required","status","capability_issue","next_action","evidence_ids","checks"],"type":"object"},"maxItems":9,"minItems":9,"type":"array"},"workflow_candidates":{"description":"Value for workflow candidates.","items":{"additionalProperties":false,"properties":{"compatibility":{"description":"Value for compatibility.","enum":["compatible","incompatible","unavailable"],"type":"string"},"fixture_id":{"description":"Value for fixture id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"invoked":{"description":"Value for invoked.","type":"boolean"},"provider_id":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},{"type":"null"}],"description":"Exact deep-analysis provider ID, or automatic selection when omitted."},"reason_code":{"description":"Value for reason code.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"selected":{"description":"Value for selected.","type":"boolean"},"workflow_id":{"description":"Value for workflow id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["fixture_id","workflow_id","provider_id","selected","invoked","compatibility","reason_code"],"type":"object"},"maxItems":1000,"minItems":1,"type":"array"}},"required":["schema_version","identity","client","capabilities","fixtures","workflow_candidates","grants","evidence_bundle","comparisons","contradictions","obligation_ledger","operation_outcomes","cleanup","closure_history","delegation_checks","replay","stages"],"type":"object"},"kind":"application","name":"evaluate_reconstruction_readiness","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"metrics":{"additionalProperties":false,"properties":{"cleanup_leak_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"divergence_localization_precision":{"maximum":1,"minimum":0,"type":"number"},"failed_calls_before_prerequisites":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"false_equivalence_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"first_valid_workflow_selection_rate":{"maximum":1,"minimum":0,"type":"number"},"incompatible_provider_invocations":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"malformed_or_over_limit_call_rate":{"maximum":1,"minimum":0,"type":"number"},"nondeterministic_replay_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"recovery_rate":{"maximum":1,"minimum":0,"type":"number"},"unowned_obligation_count":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["first_valid_workflow_selection_rate","malformed_or_over_limit_call_rate","incompatible_provider_invocations","failed_calls_before_prerequisites","recovery_rate","divergence_localization_precision","false_equivalence_count","unowned_obligation_count","cleanup_leak_count","nondeterministic_replay_count"],"type":"object"},"report_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"report_id":{"pattern":"^rr_[a-f0-9]{64}$","type":"string"},"report_resource_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}\\\\/reconstruction-readiness-report$","type":"string"},"schema":{"const":"ReconstructionReadinessReport","type":"string"},"schema_version":{"const":1,"type":"number"},"source_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"failed_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"passed_required_stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"stages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_findings":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["stages","required_stages","passed_required_stages","findings","failed_findings","unknown_findings"],"type":"object"}},"required":["schema","schema_version","report_id","source_digest","report_digest","status","summary","metrics","report_resource_uri"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":false,"title":"Evaluate Reconstruction Readiness"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Atomically commit one canonical evidence-backed reconstruction coverage workspace revision under an approved root. CAS revisions reject lost updates; every Evidence and residual-unknown reference must resolve in the embedded canonical bundle.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"expected_revision":null,"workspace":{"artifacts":[],"boundaries":[],"claims":[],"contradictions":[],"evidence_bundle":{"artifacts":[],"bundle_version":2,"captures":[],"environments":[],"providers":[],"records":[],"scenarios":[],"unknowns":[]},"name":"replacement","owners":[],"package_proofs":[],"previous_revision_sha256":null,"residual_unknown_ids":[],"revision":1,"revision_sha256":"0000000000000000000000000000000000000000000000000000000000000000","schema_version":1,"surfaces":[],"verifier_contracts":[],"verifier_results":[],"workspace_id":"rcw_0000000000000000000000000000000000000000000000000000000000000000"},"workspace_path":"/approved/coverage.json"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_revision":{"anyOf":[{"maximum":9007199254740991,"minimum":1,"type":"integer"},{"type":"null"}],"description":"Expected revision used to reject stale or mismatched input."},"workspace":{"additionalProperties":false,"description":"Value for workspace.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"additionalProperties":false,"properties":{"artifact_id":{"description":"Value for artifact id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"artifact_sha256":{"description":"Exact SHA-256 digest of artifact.","pattern":"^[a-f0-9]{64}$","type":"string"},"environment_sha256":{"description":"Exact SHA-256 digest of environment.","pattern":"^[a-f0-9]{64}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"version":{"description":"Value for version.","maxLength":500,"minLength":1,"type":"string"}},"required":["artifact_id","artifact_sha256","version","environment_sha256","evidence_ids"],"type":"object"},"maxItems":1000,"type":"array"},"boundaries":{"description":"Value for boundaries.","items":{"additionalProperties":false,"properties":{"allowed_dispositions":{"description":"Value for allowed dispositions.","items":{"enum":["external","non-goal"],"type":"string"},"maxItems":2,"type":"array"},"allowed_unknown_ids":{"description":"Value for allowed unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"required_claim_ids":{"description":"Value for required claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"required_package_proof_kinds":{"description":"Value for required package proof kinds.","items":{"enum":["build","clean-install","package-contents","runtime-routing","authority-independence"],"type":"string"},"maxItems":5,"minItems":1,"type":"array"},"required_surface_ids":{"description":"Value for required surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"minItems":1,"type":"array"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["boundary_id","title","required_surface_ids","required_claim_ids","required_package_proof_kinds","allowed_dispositions","allowed_unknown_ids"],"type":"object"},"maxItems":1000,"type":"array"},"claims":{"description":"Value for claims.","items":{"additionalProperties":false,"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"kind":{"description":"Value for kind.","maxLength":100,"minLength":1,"type":"string"},"required_authority":{"description":"Value for required authority.","enum":["shipped-artifact","controlled-replay","live-observation","external"],"type":"string"},"required_dimensions":{"description":"Value for required dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"surface_ids":{"description":"Value for surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","kind","surface_ids","required_dimensions","required_authority"],"type":"object"},"maxItems":10000,"type":"array"},"contradictions":{"description":"Value for contradictions.","items":{"additionalProperties":false,"properties":{"claim_ids":{"description":"Value for claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"contradiction_id":{"description":"Value for contradiction id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":2,"type":"array"},"status":{"description":"Current lifecycle or verification status.","enum":["active","resolved"],"type":"string"},"surface_ids":{"description":"Value for surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"}},"required":["contradiction_id","status","surface_ids","claim_ids","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"evidence_bundle":{"description":"Value for evidence bundle.","properties":{"artifacts":{"description":"Value for artifacts.","items":{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"}},"required":["digest","format","architecture"],"type":"object"},"type":"array"},"bundle_version":{"const":2,"description":"Value for bundle version.","type":"number"},"captures":{"description":"Value for captures.","items":{"properties":{"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"}},"required":["evidence_id","predicate_type"],"type":"object"},"type":"array"},"environments":{"description":"Value for environments.","items":{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},"type":"array"},"providers":{"description":"Value for providers.","items":{"properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"type":"array"},"records":{"description":"Value for records.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links","analysis_profile"],"type":"object"},{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"}]},"type":"array"},"scenarios":{"description":"Value for scenarios.","items":{"properties":{"authority":{"const":"controlled-replay","description":"Value for authority.","type":"string"},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"operation":{"description":"Value for operation.","minLength":1,"type":"string"}},"required":["evidence_id","operation","authority"],"type":"object"},"type":"array"},"unknowns":{"description":"Value for unknowns.","items":{"properties":{"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the mutation observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for previous revision digest."},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"description":"Value for registry version.","type":"number"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"description":"Value for revision digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Value for scope digest."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"type":"array"}},"required":["bundle_version","artifacts","providers","environments","scenarios","captures","unknowns","records"],"type":"object"},"name":{"description":"Exact name used by this operation.","maxLength":200,"minLength":1,"type":"string"},"owners":{"description":"Value for owners.","items":{"additionalProperties":false,"properties":{"ownership":{"description":"Value for ownership.","oneOf":[{"additionalProperties":false,"properties":{"authority_route":{"description":"Value for authority route.","enum":["none","detected","unknown"],"type":"string"},"disposition":{"const":"implemented","description":"Value for disposition.","type":"string"},"owner_export":{"anyOf":[{"maxLength":500,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for owner export."},"owner_path":{"description":"Local filesystem path for owner.","maxLength":4096,"minLength":1,"type":"string"},"owner_sha256":{"description":"Exact SHA-256 digest of owner.","pattern":"^[a-f0-9]{64}$","type":"string"},"package_state":{"description":"Value for package state.","enum":["distributed","missing","unknown"],"type":"string"},"path_state":{"description":"Value for path state.","enum":["present","missing","unknown"],"type":"string"}},"required":["disposition","owner_path","owner_export","owner_sha256","path_state","package_state","authority_route"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"description":"Value for disposition.","enum":["external","non-goal"],"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":4096,"minLength":1,"type":"string"}},"required":["disposition","rationale"],"type":"object"}]},"surface_id":{"description":"Value for surface id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["surface_id","ownership"],"type":"object"},"maxItems":10000,"type":"array"},"package_proofs":{"description":"Value for package proofs.","items":{"additionalProperties":false,"properties":{"artifact_sha256s":{"description":"Value for artifact sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"kind":{"description":"Value for kind.","enum":["build","clean-install","package-contents","runtime-routing","authority-independence"],"type":"string"},"proof_id":{"description":"Value for proof id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","skipped"],"type":"string"}},"required":["proof_id","kind","status","artifact_sha256s","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"previous_revision_sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}],"description":"Exact SHA-256 digest of previous revision."},"residual_unknown_ids":{"description":"Value for residual unknown ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":10000,"type":"array"},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"description":"Exact SHA-256 digest of revision.","pattern":"^[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"},"surfaces":{"description":"Value for surfaces.","items":{"additionalProperties":false,"properties":{"artifact_id":{"description":"Value for artifact id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"authority":{"description":"Value for authority.","enum":["observed","derived","inferred","historical","external"],"type":"string"},"dependency_surface_ids":{"description":"Value for dependency surface ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"family":{"description":"Value for family.","maxLength":100,"minLength":1,"type":"string"},"location":{"description":"Value for location.","maxLength":4096,"minLength":1,"type":"string"},"occurrence_id":{"anyOf":[{"maxLength":500,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for occurrence id."},"surface_id":{"description":"Value for surface id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["surface_id","family","artifact_id","occurrence_id","location","authority","dependency_surface_ids","evidence_ids"],"type":"object"},"maxItems":10000,"type":"array"},"verifier_contracts":{"description":"Value for verifier contracts.","items":{"additionalProperties":false,"properties":{"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","live-observation","external"],"type":"string"},"claim_ids":{"description":"Value for claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"contract_sha256":{"description":"Exact SHA-256 digest of contract.","pattern":"^[a-f0-9]{64}$","type":"string"},"dimensions":{"description":"Value for dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"max_age_ms":{"description":"Maximum permitted age ms for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"minimum_repeats":{"description":"Value for minimum repeats.","maximum":1000,"minimum":1,"type":"integer"},"normalization_removes_dimensions":{"const":false,"description":"Value for normalization removes dimensions.","type":"boolean"},"normalization_sha256":{"description":"Exact SHA-256 digest of normalization.","pattern":"^[a-f0-9]{64}$","type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","claim_ids","dimensions","authority","max_age_ms","minimum_repeats","normalization_sha256","normalization_removes_dimensions","contract_sha256"],"type":"object"},"maxItems":10000,"type":"array"},"verifier_results":{"description":"Value for verifier results.","items":{"additionalProperties":false,"properties":{"artifact_sha256s":{"description":"Value for artifact sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"contract_sha256":{"description":"Exact SHA-256 digest of contract.","pattern":"^[a-f0-9]{64}$","type":"string"},"covered_claim_ids":{"description":"Value for covered claim ids.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"covered_dimensions":{"description":"Value for covered dimensions.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":1000,"minItems":1,"type":"array"},"normalization_sha256":{"description":"Exact SHA-256 digest of normalization.","pattern":"^[a-f0-9]{64}$","type":"string"},"observed_at":{"description":"Value for observed at.","format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z|([+-](?:[01]\\\\d|2[0-3]):[0-5]\\\\d)))$","type":"string"},"owner_sha256s":{"description":"Value for owner sha256s.","items":{"pattern":"^[a-f0-9]{64}$","type":"string"},"maxItems":1000,"type":"array"},"repeats":{"description":"Value for repeats.","maximum":1000,"minimum":1,"type":"integer"},"status":{"description":"Current lifecycle or verification status.","enum":["pass","fail","unknown","unsupported","truncated","skipped"],"type":"string"},"verifier_id":{"description":"Value for verifier id.","pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["verifier_id","contract_sha256","observed_at","status","covered_claim_ids","covered_dimensions","artifact_sha256s","owner_sha256s","normalization_sha256","repeats","evidence_ids"],"type":"object"},"maxItems":100000,"type":"array"},"workspace_id":{"description":"Value for workspace id.","pattern":"^rcw_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","workspace_id","name","revision","previous_revision_sha256","evidence_bundle","artifacts","surfaces","owners","claims","verifier_contracts","verifier_results","residual_unknown_ids","contradictions","package_proofs","boundaries","revision_sha256"],"type":"object"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","expected_revision","workspace"],"type":"object"},"kind":"application","name":"commit_reconstruction_coverage","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"evidence_records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"workspace_id":{"pattern":"^rcw_[a-f0-9]{64}$","type":"string"},"workspace_path":{"type":"string"}},"required":["workspace_path","bytes","workspace_id","revision","revision_sha256","evidence_records"],"type":"object"},"requiresSession":false,"title":"Commit Reconstruction Coverage"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate one named reconstruction boundary from a canonical coverage workspace. Missing ownership or inventory is partial; stale, weak, truncated, skipped, or unresolved proof is unknown; contradictions, failed proof, missing owners, and authority routing fail closed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"boundary_id":"replacement.cli","workspace_path":"/approved/coverage.json"}],"properties":{"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["workspace_path","boundary_id"],"type":"object"},"kind":"application","name":"query_reconstruction_coverage","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"boundary_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100000,"type":"array"},"reasons":{"items":{"additionalProperties":false,"properties":{"code":{"enum":["surface-missing","owner-missing","owner-duplicate","owner-path-missing","owner-path-unknown","owner-undistributed","owner-distribution-unknown","authority-routing-detected","authority-routing-unknown","disposition-not-allowed","dependency-surface-missing","claim-missing","verifier-missing","verifier-duplicate","verifier-result-missing","verifier-result-stale","verifier-result-incompatible","verifier-failed","verifier-unknown","active-unknown","active-contradiction","package-proof-missing","package-proof-failed","package-proof-unknown"],"type":"string"},"detail":{"maxLength":4096,"minLength":1,"type":"string"},"subject_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["code","subject_id","detail"],"type":"object"},"maxItems":100000,"type":"array"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"},"rationale":{"maxLength":4096,"minLength":1,"type":"string"},"subject_id":{"pattern":"^[A-Za-z][A-Za-z0-9._:/-]{0,199}$","type":"string"}},"required":["operation","subject_id","rationale"],"type":"object"},"maxItems":100000,"type":"array"},"status":{"enum":["partial","failed","unknown","ready"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"reasons":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_claims":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"required_surfaces":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["required_surfaces","required_claims","reasons"],"type":"object"},"workspace_revision_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["boundary_id","status","workspace_revision_sha256","summary","reasons","recommended_probes","evidence_ids"],"type":"object"},"requiresSession":false,"title":"Query Reconstruction Coverage"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":true,"readOnlyHint":false},"description":"Open a local executable, application bundle, archive, JavaScript, source map, plist, or analysis database after validation. provider_id selects one deep provider or deterministic auto selection; the binding remains stable until close or an explicit switch, with no failure fallback. An optional snapshot v2 is imported atomically and must match the binary identity, concrete provider, and canonical analysis profile exactly.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"path":"/tmp/fixture"}],"properties":{"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"},"provider_id":{"anyOf":[{"const":"auto","type":"string"},{"maxLength":64,"minLength":1,"pattern":"^[a-z][a-z0-9-]*$","type":"string"}],"description":"Exact deep-analysis provider ID, or automatic selection when omitted."},"snapshot_path":{"description":"Local filesystem path for snapshot.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"open_binary","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"loaderArgs":{"items":{"type":"string"},"type":"array"},"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","format","kind","loaderArgs","sha256","architecture"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Open Binary"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Optionally write a provider-neutral analysis snapshot atomically, then close the active target and every provider resource started for it. Snapshot files require an operator-approved root and explicit overwrite; a failed save leaves the session open so cached analysis is not lost.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"overwrite":false}],"properties":{"overwrite":{"default":false,"description":"Whether an existing destination may be replaced.","type":"boolean"},"snapshot_path":{"description":"Local filesystem path for snapshot.","minLength":1,"type":"string"}},"type":"object"},"kind":"session","name":"close_binary","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"anyOf":[{"type":"null"},{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"entries":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"}},"required":["path","bytes","entries"],"type":"object"}]}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Close Binary"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Report compact target, provider, and alignment state without starting analysis. The default summary is the routing check agents should use; detail=capabilities returns one family-filtered availability page, while detail=full is reserved for complete provider diagnostics.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"cursor":0,"detail":"summary","limit":25}],"properties":{"capability_family":{"description":"Optional tool family for detail=capabilities","enum":["official-proxy","enhanced","native-provider","artifact-provider","managed-provider","browser-provider","electron-provider","runtime-provider","application","session"],"type":"string"},"cursor":{"default":0,"description":"Zero-based capability cursor for detail=capabilities","maximum":9007199254740991,"minimum":0,"type":"integer"},"detail":{"default":"summary","description":"summary returns routing state; capabilities returns one filtered tool-availability page; full returns complete diagnostics only when required","enum":["summary","capabilities","full"],"type":"string"},"expected_catalog_digest":{"description":"Expected catalog digest used to reject stale or mismatched input.","pattern":"^[a-f0-9]{64}$","type":"string"},"expected_package_version":{"description":"Expected package version used to reject stale or mismatched input.","minLength":1,"type":"string"},"expected_server_path":{"description":"Expected server path used to reject stale or mismatched input.","minLength":1,"type":"string"},"limit":{"default":25,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"}},"type":"object"},"kind":"session","name":"binary_session","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema2"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"anyOf":[{"additionalProperties":false,"properties":{"active_provider":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},{"type":"null"}]},"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"open":{"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"recommended_actions":{"items":{"type":"string"},"type":"array"},"target":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"path":{"type":"string"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["path","format","kind","sha256","architecture"],"type":"object"},{"type":"null"}]},"view":{"const":"summary","type":"string"}},"required":["view","open","provider","active_provider","target","alignment","analysis_activity","recommended_actions"],"type":"object"},{"additionalProperties":false,"properties":{"active_provider":{"anyOf":[{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},{"type":"null"}]},"capabilities":{"additionalProperties":false,"properties":{"cursor":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"has_more":{"type":"boolean"},"items":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"limit":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_cursor":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","cursor","limit","total","next_cursor","has_more"],"type":"object"},"capability_family":{"anyOf":[{"type":"string"},{"type":"null"}]},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"open":{"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"view":{"const":"capabilities","type":"string"}},"required":["view","open","provider","active_provider","capability_family","capabilities","client_features"],"type":"object"},{"anyOf":[{"additionalProperties":false,"properties":{"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"analysis_provider_binding":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selection_source":{"enum":["request","environment","auto-single-candidate"],"type":"string"}},"required":["provider","selection_source","analysis_profile"],"type":"object"},{"type":"null"}]},"analysis_provider_candidates":{"items":{"additionalProperties":false,"properties":{"availability":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"available","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selected":{"type":"boolean"},"target_support":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"supported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unsupported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]}},"required":["provider","availability","target_support","selected","capabilities"],"type":"object"},"type":"array"},"analysis_run":{"anyOf":[{"additionalProperties":false,"properties":{"process_lineage":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"not_observed","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"snapshots":{"items":{"additionalProperties":false,"properties":{"observation":{"oneOf":[{"additionalProperties":false,"properties":{"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","observed_at","launcher_pid","process_group_id","reason"],"type":"object"},{"additionalProperties":false,"properties":{"descendants":{"items":{"additionalProperties":false,"properties":{"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["pid","parent_pid","process_group_id"],"type":"object"},"type":"array"},"launcher_parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"},"status":{"const":"verified","type":"string"}},"required":["status","observed_at","schema_version","launcher_pid","process_group_id","launcher_parent_pid","descendants"],"type":"object"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"}},"required":["provider","observation"],"type":"object"},"type":"array"},"status":{"const":"snapshots","type":"string"}},"required":["status","snapshots"],"type":"object"}]},"run_id":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","type":"string"}},"required":["run_id","process_lineage"],"type":"object"},{"type":"null"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"open":{"const":false,"type":"boolean"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"type":"array"},"server_identity":{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"catalog":{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"},"client":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},{"type":"null"}]},"negotiated_protocol_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"package":{"additionalProperties":false,"properties":{"build_commit":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"root_path":{"type":"string"},"version":{"type":"string"}},"required":["name","version","root_path","build_commit"],"type":"object"},"protocol_features":{"additionalProperties":false,"properties":{"cancellation":{"type":"boolean"},"elicitation":{"type":"boolean"},"evidence_resources":{"type":"boolean"},"progress":{"type":"boolean"}},"required":["progress","cancellation","evidence_resources","elicitation"],"type":"object"},"sdk":{"additionalProperties":false,"properties":{"client_test":{"type":"string"},"core":{"type":"string"},"server":{"type":"string"}},"required":["server","client_test","core"],"type":"object"},"server":{"additionalProperties":false,"properties":{"command_path":{"type":"string"},"name":{"type":"string"},"started_at":{"type":"string"},"version":{"type":"string"}},"required":["name","version","started_at","command_path"],"type":"object"},"skill":{"additionalProperties":false,"properties":{"expected_version":{"type":"string"},"name":{"type":"string"}},"required":["name","expected_version"],"type":"object"}},"required":["package","server","sdk","negotiated_protocol_version","client","skill","catalog","protocol_features","alignment"],"type":"object"},"tool_availability":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"view":{"const":"full","type":"string"}},"required":["provider","providers","capabilities","analysis_run","analysis_activity","analysis_provider_binding","analysis_provider_candidates","tool_availability","client_features","server_identity","view","open"],"type":"object"},{"additionalProperties":false,"properties":{"analysis_activity":{"additionalProperties":false,"properties":{"providers":{"items":{"additionalProperties":false,"properties":{"active":{"anyOf":[{"additionalProperties":false,"properties":{"caller_state":{"enum":["waiting","timed_out","cancelled"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"operation":{"minLength":1,"type":"string"},"request_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"timeout_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["request_id","operation","elapsed_ms","timeout_ms","caller_state"],"type":"object"},{"type":"null"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"queued_requests":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["provider","active","queued_requests"],"type":"object"},"type":"array"},"status":{"enum":["not_observed","idle","busy","timed_out_busy"],"type":"string"}},"required":["status","providers"],"type":"object"},"analysis_provider_binding":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"additionalProperties":false,"properties":{"digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"minLength":1,"type":"string"},"name":{"minLength":1,"type":"string"},"version":{"minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selection_source":{"enum":["request","environment","auto-single-candidate"],"type":"string"}},"required":["provider","selection_source","analysis_profile"],"type":"object"},{"type":"null"}]},"analysis_provider_candidates":{"items":{"additionalProperties":false,"properties":{"availability":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"available","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"selected":{"type":"boolean"},"target_support":{"oneOf":[{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"type":"null"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"type":"null"},"status":{"const":"supported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"},{"additionalProperties":false,"properties":{"code":{"enum":["target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported"],"type":"string"},"diagnostics":{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unsupported","type":"string"}},"required":["status","code","reason","diagnostics"],"type":"object"}]}},"required":["provider","availability","target_support","selected","capabilities"],"type":"object"},"type":"array"},"analysis_run":{"anyOf":[{"additionalProperties":false,"properties":{"process_lineage":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"not_observed","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"snapshots":{"items":{"additionalProperties":false,"properties":{"observation":{"oneOf":[{"additionalProperties":false,"properties":{"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"reason":{"minLength":1,"type":"string"},"status":{"const":"unavailable","type":"string"}},"required":["status","observed_at","launcher_pid","process_group_id","reason"],"type":"object"},{"additionalProperties":false,"properties":{"descendants":{"items":{"additionalProperties":false,"properties":{"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"}},"required":["pid","parent_pid","process_group_id"],"type":"object"},"type":"array"},"launcher_parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"launcher_pid":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"observed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"process_group_id":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"type":"number"},"status":{"const":"verified","type":"string"}},"required":["status","observed_at","schema_version","launcher_pid","process_group_id","launcher_parent_pid","descendants"],"type":"object"}]},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"}},"required":["provider","observation"],"type":"object"},"type":"array"},"status":{"const":"snapshots","type":"string"}},"required":["status","snapshots"],"type":"object"}]},"run_id":{"format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$","type":"string"}},"required":["run_id","process_lineage"],"type":"object"},{"type":"null"}]},"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}]},"capabilities":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"availability_code":{"type":"null"},"available":{"const":true,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"type":"null"}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"},{"additionalProperties":false,"properties":{"availability_code":{"anyOf":[{"enum":["not_configured","executable_missing","runtime_missing","unsupported_host","unsupported_version","target_kind_unsupported","target_format_unsupported","architecture_unsupported","target_role_unsupported","managed_target_unsupported","open_options_invalid","version_unresolved"],"type":"string"},{"type":"null"}]},"available":{"const":false,"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"changes_permissions":{"type":"boolean"},"launches_process":{"type":"boolean"},"may_access_network":{"type":"boolean"},"may_show_ui":{"type":"boolean"},"may_write_filesystem":{"type":"boolean"},"mutates_artifact":{"type":"boolean"},"requires_root":{"type":"boolean"}},"required":["mutates_artifact","launches_process","may_show_ui","may_access_network","may_write_filesystem","changes_permissions","requires_root"],"type":"object"},"exhaustive":{"type":"boolean"},"input_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"limitations":{"items":{"type":"string"},"type":"array"},"limits":{"additionalProperties":false,"properties":{"max_payload_bytes":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"max_results":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"timeout_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["max_results","max_payload_bytes","timeout_ms"],"type":"object"},"operation":{"type":"string"},"output_contract_version":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"pagination":{"enum":["none","offset","cursor"],"type":"string"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["operation","input_contract_version","output_contract_version","pagination","exhaustive","effects","limits","limitations","available","reason","availability_code"],"type":"object"}]},"type":"array"},"client_features":{"additionalProperties":false,"properties":{"elicitation_form":{"type":"boolean"},"elicitation_url":{"type":"boolean"},"roots":{"type":"boolean"},"sampling":{"type":"boolean"}},"required":["elicitation_form","elicitation_url","roots","sampling"],"type":"object"},"format":{"enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map"],"type":"string"},"kind":{"enum":["executable","database","archive","artifact"],"type":"string"},"open":{"const":true,"type":"boolean"},"path":{"type":"string"},"provider":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"providers":{"items":{"additionalProperties":false,"properties":{"id":{"type":"string"},"name":{"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","name","version"],"type":"object"},"type":"array"},"server_identity":{"additionalProperties":false,"properties":{"alignment":{"additionalProperties":false,"properties":{"reasons":{"items":{"type":"string"},"type":"array"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"state":{"enum":["aligned","mcp_server_restart_required","unknown"],"type":"string"}},"required":["state","reasons","remediation"],"type":"object"},"catalog":{"additionalProperties":{"$ref":"#/$defs/__schema2"},"propertyNames":{"type":"string"},"type":"object"},"client":{"anyOf":[{"additionalProperties":false,"properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"],"type":"object"},{"type":"null"}]},"negotiated_protocol_version":{"anyOf":[{"type":"string"},{"type":"null"}]},"package":{"additionalProperties":false,"properties":{"build_commit":{"anyOf":[{"type":"string"},{"type":"null"}]},"name":{"type":"string"},"root_path":{"type":"string"},"version":{"type":"string"}},"required":["name","version","root_path","build_commit"],"type":"object"},"protocol_features":{"additionalProperties":false,"properties":{"cancellation":{"type":"boolean"},"elicitation":{"type":"boolean"},"evidence_resources":{"type":"boolean"},"progress":{"type":"boolean"}},"required":["progress","cancellation","evidence_resources","elicitation"],"type":"object"},"sdk":{"additionalProperties":false,"properties":{"client_test":{"type":"string"},"core":{"type":"string"},"server":{"type":"string"}},"required":["server","client_test","core"],"type":"object"},"server":{"additionalProperties":false,"properties":{"command_path":{"type":"string"},"name":{"type":"string"},"started_at":{"type":"string"},"version":{"type":"string"}},"required":["name","version","started_at","command_path"],"type":"object"},"skill":{"additionalProperties":false,"properties":{"expected_version":{"type":"string"},"name":{"type":"string"}},"required":["name","expected_version"],"type":"object"}},"required":["package","server","sdk","negotiated_protocol_version","client","skill","catalog","protocol_features","alignment"],"type":"object"},"sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"tool_availability":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":true,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"const":"available","type":"string"},"remediation":{"type":"null"},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"annotations":{"additionalProperties":false,"properties":{"destructive":{"type":"boolean"},"idempotent":{"type":"boolean"},"open_world":{"type":"boolean"},"read_only":{"type":"boolean"}},"required":["read_only","destructive","idempotent","open_world"],"type":"object"},"available":{"const":false,"type":"boolean"},"client_requirements":{"additionalProperties":false,"properties":{"missing_optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"missing_required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"optional":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"},"required":{"items":{"enum":["elicitation_form","elicitation_url","roots","sampling"],"type":"string"},"type":"array"}},"required":["required","optional","missing_required","missing_optional"],"type":"object"},"default_mode_available":{"type":"boolean"},"effects":{"additionalProperties":false,"properties":{"accessesNetwork":{"type":"boolean"},"changesUiState":{"type":"boolean"},"idempotent":{"type":"boolean"},"launchesProcess":{"type":"boolean"},"mayDiscardData":{"type":"boolean"},"mutatesSession":{"type":"boolean"},"mutatesTarget":{"type":"boolean"},"writesFilesystem":{"type":"boolean"}},"required":["mutatesTarget","mutatesSession","writesFilesystem","launchesProcess","accessesNetwork","changesUiState","mayDiscardData","idempotent"],"type":"object"},"modes":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"available":{"const":true,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"maxItems":0,"type":"array"},"name":{"type":"string"},"remediation":{"type":"null"}},"required":["name","available","missing_operations","remediation"],"type":"object"},{"additionalProperties":false,"properties":{"available":{"const":false,"type":"boolean"},"missing_operations":{"items":{"type":"string"},"minItems":1,"type":"array"},"name":{"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["name","available","missing_operations","remediation"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"reason":{"enum":["client_capability_missing","target_required","provider_missing","provider_unavailable","target_unsupported","unsupported_host","policy_disabled"],"type":"string"},"remediation":{"anyOf":[{"type":"string"},{"type":"null"}]},"surface":{"type":"string"}},"required":["name","surface","client_requirements","effects","annotations","available","reason","remediation"],"type":"object"}]},"type":"array"},"view":{"const":"full","type":"string"}},"required":["provider","providers","capabilities","analysis_run","analysis_activity","analysis_provider_binding","analysis_provider_candidates","tool_availability","client_features","server_identity","view","open","path","format","kind","sha256","architecture"],"type":"object"}]}]}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Binary Session"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Atomically write the session\'s deterministic Evidence v2 bundle beneath an operator-approved root. Existing files require overwrite: true; records and manifests use canonical byte-stable ordering. For an in-session read, use snapshot_evidence_bundle and read its exact resource URI instead.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"overwrite":false,"path":"/tmp/evidence.json"}],"properties":{"overwrite":{"default":false,"description":"Whether an existing destination may be replaced.","type":"boolean"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"export_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["path","bytes","records","unknowns"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Export Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Read a bounded local JSON bundle beneath an operator-approved root, validate every Evidence v2 ID and canonical manifest, then atomically merge it. Imported content is data only and is never executed.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"path":"evidence.json"}],"properties":{"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["path"],"type":"object"},"kind":"session","name":"import_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"imported":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["imported","unknowns_added","total"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Import Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":true,"readOnlyHint":false},"description":"Run one bounded process under a PTY using operator-approved executable and working roots. Produces Process Capture v4; legacy v3 captures cannot be upgraded and must be recaptured with this tool. Requires approved: true; unknown_registry_approved: true separately records capture residuals. Captures raw and xterm-rendered terminal frames, scripted interactions, lifecycle filesystem checkpoints, process ownership, declarative command shims, and loopback replay. Disabled unless operator policy enables it; not a security sandbox.","effects":{"accessesNetwork":true,"changesUiState":false,"idempotent":false,"launchesProcess":true,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":true},"inputSchema":{"$defs":{"__schema0":{"oneOf":[{"additionalProperties":false,"properties":{"cardinality":{"additionalProperties":false,"description":"Value for cardinality.","properties":{"max":{"description":"Value for max.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"min":{"description":"Value for min.","exclusiveMinimum":0,"maximum":256,"type":"integer"}},"required":["min","max"],"type":"object"},"consume":{"description":"Value for consume.","type":"boolean"},"exact":{"$ref":"#/$defs/__schema1","description":"Value for exact."},"ignore_fields":{"description":"Value for ignore fields.","items":{"enum":["sequence","at_ms","scheduled_at_ms","dispatched_at_ms","elapsed_ms"],"type":"string"},"maxItems":5,"type":"array"},"kind":{"const":"event","description":"Value for kind.","type":"string"},"since":{"description":"Value for since.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"scenario_start","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"state_entry","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checkpoint","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"event_id":{"description":"Value for event id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"kind":{"const":"event_id","description":"Value for kind.","type":"string"}},"required":["kind","event_id"],"type":"object"}]},"source":{"description":"Value for source.","enum":["terminal_raw","terminal_rendered","interaction","lifecycle","process","filesystem","http","websocket","shim","replay_transition"],"type":"string"}},"required":["kind","source","exact","ignore_fields","since","consume","cardinality"],"type":"object"},{"additionalProperties":false,"properties":{"case_sensitive":{"const":true,"description":"Whether text matching distinguishes uppercase and lowercase.","type":"boolean"},"consume":{"description":"Value for consume.","type":"boolean"},"control_sequences":{"const":"include","description":"Value for control sequences.","type":"string"},"encoding":{"const":"utf8","description":"Value for encoding.","type":"string"},"kind":{"const":"terminal_text","description":"Value for kind.","type":"string"},"literal":{"description":"Value for literal.","maxLength":10000,"minLength":1,"type":"string"},"occurrence":{"description":"Value for occurrence.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"since":{"description":"Value for since.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"scenario_start","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"state_entry","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"checkpoint","description":"Value for kind.","type":"string"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["kind","name"],"type":"object"},{"additionalProperties":false,"properties":{"event_id":{"description":"Value for event id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"kind":{"const":"event_id","description":"Value for kind.","type":"string"}},"required":["kind","event_id"],"type":"object"}]},"view":{"const":"decoded","description":"Value for view.","type":"string"}},"required":["kind","view","encoding","literal","case_sensitive","control_sequences","occurrence","since","consume"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"all","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":2,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"any","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":2,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"sequence","description":"Value for kind.","type":"string"},"triggers":{"description":"Value for triggers.","items":{"$ref":"#/$defs/__schema0"},"maxItems":16,"minItems":1,"type":"array"}},"required":["kind","triggers"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"repeat","description":"Value for kind.","type":"string"},"max":{"description":"Value for max.","exclusiveMinimum":0,"maximum":64,"type":"integer"},"min":{"description":"Value for min.","exclusiveMinimum":0,"maximum":64,"type":"integer"},"trigger":{"$ref":"#/$defs/__schema0","description":"Value for trigger."}},"required":["kind","trigger","min","max"],"type":"object"}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema1"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema1"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"approved":true,"arguments":[],"checkpoints":[],"command_shims":[],"environment":{},"events":[],"executable":"/usr/bin/true","filesystem_roots":[],"idle_timeout_ms":30000,"inherit_environment":[],"limits":{"connections":100,"file_bytes":10000000,"files":10000,"filesystem_depth":16,"frames":10000,"output_bytes":1000000,"processes":1000,"protocol_body_bytes":1000000,"protocol_events":10000},"network_access":"host","normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"reactive":null,"replay":{"http":[],"machine":null,"websocket_connections":[],"websocket_messages":[]},"secret_aliases":[],"settle_ms":100,"terminal":{"columns":80,"rows":24,"scrollback":1000},"timeout_ms":30000,"working_directory":"/tmp"}],"properties":{"approved":{"const":true,"description":"Explicit per-call acknowledgement that this operation launches the target","type":"boolean"},"arguments":{"default":[],"description":"Value for arguments.","items":{"type":"string"},"maxItems":256,"type":"array"},"checkpoints":{"default":[],"description":"Value for checkpoints.","items":{"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"properties":{"at_ms":{"description":"Value for at ms.","maximum":300000,"minimum":0,"type":"integer"},"type":{"const":"time","description":"Value for type.","type":"string"}},"required":["type","at_ms"],"type":"object"},{"properties":{"occurrence":{"default":1,"description":"Value for occurrence.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"type":{"const":"terminal_literal","description":"Value for type.","type":"string"},"value":{"description":"Value for value.","maxLength":10000,"minLength":1,"type":"string"}},"required":["type","value"],"type":"object"},{"properties":{"type":{"const":"root_exit","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"properties":{"type":{"const":"settled","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"}]}},"required":["name","trigger"],"type":"object"},"maxItems":64,"type":"array"},"command_shims":{"default":[],"description":"Value for command shims.","items":{"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$","type":"string"},"routes":{"description":"Value for routes.","items":{"properties":{"arguments":{"description":"Value for arguments.","items":{"type":"string"},"maxItems":256,"type":"array"},"max_calls":{"default":1,"description":"Maximum permitted calls for this operation.","exclusiveMinimum":0,"maximum":100,"type":"integer"},"outputs":{"default":[],"description":"Value for outputs.","items":{"properties":{"at_ms":{"description":"Value for at ms.","maximum":300000,"minimum":0,"type":"integer"},"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"stream":{"description":"Value for stream.","enum":["stdout","stderr"],"type":"string"}},"required":["at_ms","stream","data"],"type":"object"},"maxItems":1000,"type":"array"},"termination":{"description":"Value for termination.","oneOf":[{"properties":{"code":{"description":"Value for code.","maximum":255,"minimum":0,"type":"integer"},"type":{"const":"exit","description":"Value for type.","type":"string"}},"required":["type","code"],"type":"object"},{"properties":{"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"type":{"const":"signal","description":"Value for type.","type":"string"}},"required":["type","signal"],"type":"object"}]}},"required":["arguments","termination"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}},"required":["name","routes"],"type":"object"},"maxItems":32,"type":"array"},"environment":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for environment.","propertyNames":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"type":"object"},"events":{"default":[],"description":"Value for events.","items":{"oneOf":[{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"description":"Value for data.","type":"string"},"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"type":{"const":"input","description":"Value for type.","type":"string"}},"required":["at_ms","type","data"],"type":"object"},{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"columns":{"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"type":{"const":"resize","description":"Value for type.","type":"string"}},"required":["at_ms","type","columns","rows"],"type":"object"},{"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"type":{"const":"signal","description":"Value for type.","type":"string"}},"required":["at_ms","type","signal"],"type":"object"}]},"maxItems":1000,"type":"array"},"executable":{"description":"Approved absolute path of the executable to run.","pattern":"^\\\\/.*","type":"string"},"filesystem_roots":{"default":[],"description":"Approved canonical filesystem filesystem roots.","items":{"pattern":"^\\\\/.*","type":"string"},"maxItems":16,"type":"array"},"idle_timeout_ms":{"default":30000,"description":"Value for idle timeout ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"inherit_environment":{"default":[],"description":"Value for inherit environment.","items":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"maxItems":64,"type":"array"},"limits":{"default":{"connections":100,"file_bytes":10000000,"files":10000,"filesystem_depth":16,"frames":10000,"output_bytes":1000000,"processes":1000,"protocol_body_bytes":1000000,"protocol_events":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"connections":{"default":100,"description":"Value for connections.","exclusiveMinimum":0,"maximum":1000,"type":"integer"},"file_bytes":{"default":10000000,"description":"Bounded byte count for file.","exclusiveMinimum":0,"maximum":100000000,"type":"integer"},"files":{"default":10000,"description":"Value for files.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"filesystem_depth":{"default":16,"description":"Value for filesystem depth.","maximum":64,"minimum":1,"type":"integer"},"frames":{"default":10000,"description":"Value for frames.","exclusiveMinimum":0,"maximum":100000,"type":"integer"},"output_bytes":{"default":1000000,"description":"Bounded byte count for output.","exclusiveMinimum":0,"maximum":10000000,"type":"integer"},"processes":{"default":1000,"description":"Value for processes.","exclusiveMinimum":0,"maximum":10000,"type":"integer"},"protocol_body_bytes":{"default":1000000,"description":"Bounded byte count for protocol body.","exclusiveMinimum":0,"maximum":10000000,"type":"integer"},"protocol_events":{"default":10000,"description":"Value for protocol events.","exclusiveMinimum":0,"maximum":100000,"type":"integer"}},"type":"object"},"network_access":{"const":"host","default":"host","description":"Value for network access.","type":"string"},"normalization":{"default":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"description":"Value for normalization.","properties":{"paths":{"default":true,"description":"Value for paths.","type":"boolean"},"patterns":{"default":[],"description":"Value for patterns.","items":{"properties":{"pattern":{"description":"Text or bounded pattern used to filter matching results.","maxLength":500,"type":"string"},"replacement":{"description":"Value for replacement.","maxLength":100,"type":"string"}},"required":["pattern","replacement"],"type":"object"},"maxItems":32,"type":"array"},"pids":{"default":true,"description":"Value for pids.","type":"boolean"},"ports":{"default":true,"description":"Value for ports.","type":"boolean"},"time_bucket_ms":{"default":10,"description":"Value for time bucket ms.","exclusiveMinimum":0,"maximum":60000,"type":"integer"}},"type":"object"},"reactive":{"anyOf":[{"additionalProperties":false,"properties":{"deadline_ms":{"description":"Value for deadline ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"deadline_ms":{"description":"Value for deadline ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"max_visits":{"description":"Maximum permitted visits for this operation.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"on":{"description":"Value for on.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"sensitive":{"description":"Value for sensitive.","type":"boolean"},"type":{"const":"send_input","description":"Value for type.","type":"string"}},"required":["type","data","sensitive"],"type":"object"},{"additionalProperties":false,"properties":{"columns":{"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"type":{"const":"resize","description":"Value for type.","type":"string"}},"required":["type","columns","rows"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"close_stdin","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"signal":{"description":"Value for signal.","enum":["SIGINT","SIGTERM","SIGKILL"],"type":"string"},"target":{"description":"Value for target.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"root","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"process_group","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"subject_id","description":"Value for kind.","type":"string"},"subject_id":{"description":"Value for subject id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["kind","subject_id"],"type":"object"}]},"type":{"const":"send_signal","description":"Value for type.","type":"string"}},"required":["type","target","signal"],"type":"object"},{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z0-9][A-Za-z0-9_-]{0,63}$","type":"string"},"type":{"const":"checkpoint","description":"Value for type.","type":"string"}},"required":["type","name"],"type":"object"}]},"maxItems":16,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","exclusiveMinimum":0,"maximum":256,"type":"integer"},"priority":{"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"target":{"description":"Value for target.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"goto","description":"Value for kind.","type":"string"},"state":{"description":"Value for state.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["kind","state"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"finish","description":"Value for kind.","type":"string"},"outcome":{"const":"passed","description":"Value for outcome.","type":"string"}},"required":["kind","outcome"],"type":"object"}]},"when":{"$ref":"#/$defs/__schema0","description":"Value for when."}},"required":["id","priority","max_uses","when","actions","target"],"type":"object"},"maxItems":128,"minItems":1,"type":"array"}},"required":["id","max_visits","deadline_ms","on"],"type":"object"},"maxItems":32,"minItems":1,"type":"array"},"version":{"const":1,"description":"Value for version.","type":"number"}},"required":["version","initial_state","deadline_ms","states"],"type":"object"},{"type":"null"}],"description":"Value for reactive."},"replay":{"description":"Value for replay.","properties":{"http":{"default":[],"description":"Value for http.","items":{"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"delay_ms":{"default":0,"description":"Value for delay ms.","maximum":30000,"minimum":0,"type":"integer"},"disconnect":{"default":false,"description":"Value for disconnect.","type":"boolean"},"max_calls":{"default":1,"description":"Maximum permitted calls for this operation.","maximum":100,"minimum":1,"type":"integer"},"method":{"description":"Value for method.","maxLength":16,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"request_body":{"description":"Value for request body.","maxLength":1000000,"type":"string"},"request_headers":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for request headers.","propertyNames":{"type":"string"},"type":"object"},"response_headers":{"additionalProperties":{"type":"string"},"default":{},"description":"Value for response headers.","propertyNames":{"type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"}},"required":["method","path","status","body"],"type":"object"},"maxItems":100,"type":"array"},"machine":{"anyOf":[{"additionalProperties":false,"properties":{"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"default":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"bytes":{"default":1000000,"description":"Value for bytes.","maximum":10000000,"minimum":1,"type":"integer"},"connections":{"default":100,"description":"Value for connections.","maximum":1000,"minimum":1,"type":"integer"},"duration_ms":{"default":30000,"description":"Value for duration ms.","maximum":300000,"minimum":1,"type":"integer"},"messages":{"default":10000,"description":"Value for messages.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"max_transitions":{"description":"Maximum permitted transitions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"max_visits":{"default":100000,"description":"Maximum permitted visits for this operation.","maximum":100000,"minimum":1,"type":"integer"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"terminal":{"default":false,"description":"Value for terminal.","type":"boolean"}},"required":["name"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"transitions":{"description":"Value for transitions.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"default":{},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","description":"Value for type.","type":"string"}},"required":["type","status","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","description":"Value for type.","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","description":"Value for type.","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"minItems":1,"type":"array"},"captures":{"description":"Value for captures.","items":{"additionalProperties":false,"properties":{"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"from":{"description":"Value for from.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"guards":{"description":"Value for guards.","items":{"additionalProperties":false,"properties":{"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","maximum":10000,"minimum":1,"type":"integer"},"priority":{"default":100,"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"to":{"description":"Value for to.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","method","path"],"type":"object"},{"additionalProperties":false,"properties":{"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"}]}},"required":["id","from","to","trigger","actions","max_uses"],"type":"object"},"maxItems":2000,"minItems":1,"type":"array"}},"required":["initial_state","states","transitions","max_transitions"],"type":"object"},{"type":"null"}],"description":"Value for machine."},"websocket_connections":{"default":[],"description":"Value for websocket connections.","items":{"properties":{"disconnect_after":{"default":false,"description":"Value for disconnect after.","type":"boolean"},"messages":{"description":"Value for messages.","items":{"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"delay_ms":{"default":0,"description":"Value for delay ms.","maximum":30000,"minimum":0,"type":"integer"}},"required":["data"],"type":"object"},"maxItems":100,"type":"array"}},"required":["messages"],"type":"object"},"maxItems":100,"type":"array"},"websocket_messages":{"default":[],"description":"Value for websocket messages.","items":{"maxLength":1000000,"type":"string"},"maxItems":100,"type":"array"}},"type":"object"},"secret_aliases":{"default":[],"description":"Value for secret aliases.","items":{"pattern":"^[A-Za-z_][A-Za-z0-9_]*$","type":"string"},"maxItems":64,"type":"array"},"settle_ms":{"default":100,"description":"Value for settle ms.","maximum":10000,"minimum":0,"type":"integer"},"terminal":{"default":{"columns":80,"rows":24,"scrollback":1000},"description":"Value for terminal.","properties":{"columns":{"default":80,"description":"Value for columns.","maximum":1000,"minimum":1,"type":"integer"},"rows":{"default":24,"description":"Value for rows.","maximum":1000,"minimum":1,"type":"integer"},"scrollback":{"default":1000,"description":"Value for scrollback.","maximum":10000,"minimum":0,"type":"integer"}},"type":"object"},"timeout_ms":{"default":30000,"description":"Value for timeout ms.","exclusiveMinimum":0,"maximum":300000,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record capture residuals durably","type":"boolean"},"working_directory":{"description":"Value for working directory.","pattern":"^\\\\/.*","type":"string"}},"required":["approved","executable","working_directory"],"type":"object"},"kind":"session","name":"capture_process_scenario","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"cleanup":{"additionalProperties":false,"properties":{"owned_process_group":{"const":"verified","type":"string"},"temporary_root":{"const":"removed","type":"string"}},"required":["owned_process_group","temporary_root"],"type":"object"},"event_journal":{"default":[],"items":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["capture_order","collection","index"],"type":"object"},"type":"array"},"exit":{"additionalProperties":false,"properties":{"code":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]},"reason":{"enum":["exited","timeout","idle_timeout"],"type":"string"},"signal":{"anyOf":[{"maximum":9007199254740991,"minimum":-9007199254740991,"type":"integer"},{"type":"null"}]}},"required":["code","signal","reason"],"type":"object"},"files_after":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"files_before":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"filesystem_checkpoints":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"effects":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"type":"null"},"path":{"type":"string"},"status":{"const":"created","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"type":"null"},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"const":"deleted","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"enum":["modified","unchanged"],"type":"string"}},"required":["path","status","before","after"],"type":"object"}]},"type":"array"},"files":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"type":"array"},"name":{"type":"string"},"truncated":{"type":"boolean"}},"required":["name","at_ms","files","effects","truncated"],"type":"object"},"type":"array"},"filesystem_effects":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"type":"null"},"path":{"type":"string"},"status":{"const":"created","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"type":"null"},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"const":"deleted","type":"string"}},"required":["path","status","before","after"],"type":"object"},{"additionalProperties":false,"properties":{"after":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"before":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"const":"file","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"string"},"type":{"const":"symlink","type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"path":{"type":"string"},"sha256":{"type":"null"},"size":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"symlink_target":{"type":"null"},"type":{"enum":["directory","other"],"type":"string"}},"required":["path","mode","size","type","sha256","symlink_target"],"type":"object"}]},"path":{"type":"string"},"status":{"enum":["modified","unchanged"],"type":"string"}},"required":["path","status","before","after"],"type":"object"}]},"type":"array"},"frames":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","at_ms","data"],"type":"object"},"type":"array"},"interaction_events":{"items":{"additionalProperties":false,"properties":{"data":{"type":"string"},"dispatched_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outcome":{"enum":["dispatched","target_exited","failed"],"type":"string"},"scheduled_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"type":{"enum":["input","resize","stdin_close","signal"],"type":"string"}},"required":["sequence","scheduled_at_ms","dispatched_at_ms","type","data","outcome"],"type":"object"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"manifest":{"additionalProperties":false,"properties":{"architecture":{"minLength":1,"type":"string"},"comparison_contract":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"comparison_contract_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"completed_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"},"executable_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"full_scenario_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"normalization_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"platform":{"minLength":1,"type":"string"},"provider_version":{"minLength":1,"type":"string"},"pty_backend":{"const":"node-pty","type":"string"},"rea_version":{"minLength":1,"type":"string"},"replay_plan":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"replay_plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scenario":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"},"shim_plan":{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},"shim_plan_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"started_at":{"format":"date-time","pattern":"^(?:(?:\\\\d\\\\d[2468][048]|\\\\d\\\\d[13579][26]|\\\\d\\\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\\\d|30)|(?:02)-(?:0[1-9]|1\\\\d|2[0-8])))T(?:(?:[01]\\\\d|2[0-3]):[0-5]\\\\d(?::[0-5]\\\\d(?:\\\\.\\\\d+)?)?(?:Z))$","type":"string"}},"required":["rea_version","provider_version","platform","architecture","pty_backend","started_at","completed_at","scenario","comparison_contract","shim_plan","replay_plan","full_scenario_sha256","comparison_contract_sha256","executable_sha256","normalization_sha256","shim_plan_sha256","replay_plan_sha256"],"type":"object"},"normalization":{"additionalProperties":false,"properties":{"paths":{"type":"boolean"},"patterns":{"items":{"additionalProperties":false,"properties":{"pattern":{"maxLength":500,"type":"string"},"replacement":{"maxLength":100,"type":"string"}},"required":["pattern","replacement"],"type":"object"},"type":"array"},"pids":{"type":"boolean"},"ports":{"type":"boolean"},"time_bucket_ms":{"exclusiveMinimum":0,"maximum":60000,"type":"integer"}},"required":["paths","pids","ports","time_bucket_ms","patterns"],"type":"object"},"process_samples":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"command":{"type":"string"},"parent_pid":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"pid":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"process_group_id":{"anyOf":[{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},{"type":"null"}]},"session_id":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["at_ms","pid","parent_pid","command","process_group_id","session_id"],"type":"object"},"type":"array"},"protocol_events":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"data":{"type":"string"},"direction":{"enum":["request","response","received","sent"],"type":"string"},"method":{"anyOf":[{"type":"string"},{"type":"null"}]},"outcome":{"enum":["matched","unmatched","script_exhausted","disconnected","invalid_state","guard_failed","transition_exhausted","invalid_capture","unexpected_reconnect","limit_exhausted"],"type":"string"},"path":{"anyOf":[{"type":"string"},{"type":"null"}]},"protocol":{"enum":["http","websocket"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","at_ms","protocol","direction","method","path","data","outcome"],"type":"object"},"type":"array"},"reactive_run":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"active_state":{"maxLength":64,"minLength":1,"type":"string"},"controls":{"default":[],"items":{"additionalProperties":false,"properties":{"after_capture_order":{"maximum":9007199254740991,"minimum":-1,"type":"integer"},"kind":{"enum":["state_deadline","scenario_deadline","target_lost","cancelled","cleanup_failed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","kind","after_capture_order"],"type":"object"},"type":"array"},"outcome":{"type":"null"},"status":{"const":"running","type":"string"},"transitions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"type":"null"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"},{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"const":"passed","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"type":"null"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"}]},"maxItems":128,"type":"array"}},"required":["status","outcome","active_state","controls","transitions"],"type":"object"},{"additionalProperties":false,"properties":{"active_state":{"maxLength":64,"minLength":1,"type":"string"},"controls":{"default":[],"items":{"additionalProperties":false,"properties":{"after_capture_order":{"maximum":9007199254740991,"minimum":-1,"type":"integer"},"kind":{"enum":["state_deadline","scenario_deadline","target_lost","cancelled","cleanup_failed"],"type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["sequence","kind","after_capture_order"],"type":"object"},"type":"array"},"outcome":{"enum":["passed","predicate_timeout","scenario_deadline","ambiguous_match","action_rejected","target_lost","capture_incomplete","cancelled","cleanup_failed"],"type":"string"},"status":{"const":"finished","type":"string"},"transitions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"type":"null"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"},{"additionalProperties":false,"properties":{"action_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":16,"type":"array"},"action_types":{"items":{"enum":["send_input","resize","close_stdin","send_signal","checkpoint"],"type":"string"},"maxItems":16,"type":"array"},"outcome":{"const":"passed","type":"string"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"type":"null"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"},"trigger_event_ids":{"items":{"minLength":1,"type":"string"},"maxItems":64,"type":"array"}},"required":["sequence","transition_id","state_before","trigger_event_ids","action_event_ids","action_types","state_after","outcome"],"type":"object"}]},"maxItems":128,"type":"array"}},"required":["status","outcome","active_state","controls","transitions"],"type":"object"}]},{"type":"null"}],"default":null},"rendered_frames":{"items":{"additionalProperties":false,"properties":{"active_buffer":{"enum":["normal","alternate"],"type":"string"},"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"columns":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"cursor_x":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"cursor_y":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"lines":{"items":{"type":"string"},"type":"array"},"rows":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"serialized_state":{"type":"string"}},"required":["sequence","at_ms","columns","rows","cursor_x","cursor_y","active_buffer","lines","serialized_state"],"type":"object"},"type":"array"},"replay_transitions":{"default":[],"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"sensitive_aliases":{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":32,"type":"array"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"maxLength":64,"minLength":1,"type":"string"},"state_before":{"maxLength":64,"minLength":1,"type":"string"},"transition_id":{"maxLength":64,"minLength":1,"type":"string"}},"required":["sequence","at_ms","transition_id","state_before","state_after","sensitive_aliases"],"type":"object"},"type":"array"},"residual_unknowns":{"items":{"additionalProperties":false,"properties":{"reason":{"type":"string"},"scope":{"enum":["terminal","interaction","exit","process","filesystem","protocol","shim","cleanup","network"],"type":"string"}},"required":["scope","reason"],"type":"object"},"type":"array"},"schema_version":{"const":4,"type":"number"},"settlement":{"oneOf":[{"additionalProperties":false,"properties":{"cleanup_outcome":{"const":"not_required","type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"const":"quiesced","type":"string"}},"required":["state","elapsed_ms","cleanup_outcome"],"type":"object"},{"additionalProperties":false,"properties":{"cleanup_outcome":{"enum":["cleaned","failed"],"type":"string"},"elapsed_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state":{"enum":["alive_at_deadline","unverifiable"],"type":"string"}},"required":["state","elapsed_ms","cleanup_outcome"],"type":"object"}]},"shim_events":{"items":{"additionalProperties":false,"properties":{"arguments":{"items":{"type":"string"},"type":"array"},"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"command":{"type":"string"},"outcome":{"enum":["matched","unmatched","exhausted"],"type":"string"},"route_index":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"working_directory":{"type":"string"}},"required":["sequence","at_ms","command","route_index","arguments","working_directory","outcome"],"type":"object"},"type":"array"},"truncated":{"type":"boolean"}},"required":["schema_version","manifest","normalization","frames","rendered_frames","interaction_events","exit","settlement","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions","reactive_run","event_journal","files_before","files_after","filesystem_effects","truncated","limitations","residual_unknowns","cleanup"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Capture Process Scenario"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two compatible Process Capture v4 observations across terminal, interaction, lifecycle, process, filesystem, command-shim, HTTP, and WebSocket evidence. Optional trace_spec validates exact events against an explicit partial order or finite trace language; concurrency is never inferred from timestamps or broad sorting. Missing, journal-free, or truncated observations are never treated as equivalent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_id":"ev_0000000000000000000000000000000000000000000000000000000000000000","right_evidence_id":"ev_1111111111111111111111111111111111111111111111111111111111111111"}],"properties":{"left_evidence_id":{"description":"Exact Evidence v2 identifier for the left observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"max_capture_age_ms":{"description":"Maximum permitted capture age ms for this operation.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_id":{"description":"Exact Evidence v2 identifier for the right observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"trace_spec":{"additionalProperties":false,"description":"Value for trace spec.","properties":{"events":{"description":"Value for events.","items":{"additionalProperties":false,"properties":{"cardinality":{"default":{"kind":"required"},"description":"Value for cardinality.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"required","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"optional","description":"Value for kind.","type":"string"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"count":{"description":"Value for count.","maximum":10000,"minimum":0,"type":"integer"},"kind":{"const":"exact","description":"Value for kind.","type":"string"}},"required":["kind","count"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"range","description":"Value for kind.","type":"string"},"max":{"description":"Value for max.","maximum":10000,"minimum":0,"type":"integer"},"min":{"description":"Value for min.","maximum":10000,"minimum":0,"type":"integer"}},"required":["kind","min","max"],"type":"object"}]},"exact":{"$ref":"#/$defs/__schema0","description":"Value for exact."},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"ignore_fields":{"description":"Value for ignore fields.","items":{"enum":["sequence","at_ms","scheduled_at_ms","dispatched_at_ms","elapsed_ms"],"type":"string"},"maxItems":5,"type":"array"},"source":{"description":"Value for source.","enum":["terminal_raw","terminal_rendered","interaction","lifecycle","process","filesystem","http","websocket","shim","replay_transition"],"type":"string"}},"required":["id","source","exact"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"language":{"description":"Value for language.","oneOf":[{"additionalProperties":false,"properties":{"happens_before":{"default":[],"description":"Value for happens before.","items":{"additionalProperties":false,"properties":{"after":{"description":"The later or right-hand observation to compare.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"before":{"description":"The earlier or left-hand observation to compare.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["before","after"],"type":"object"},"maxItems":4096,"type":"array"},"kind":{"const":"partial_order","description":"Value for kind.","type":"string"},"not_before":{"default":[],"description":"Value for not before.","items":{"additionalProperties":false,"properties":{"anchor":{"description":"Value for anchor.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"event":{"description":"Value for event.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"}},"required":["event","anchor"],"type":"object"},"maxItems":4096,"type":"array"},"prefix":{"default":[],"description":"Value for prefix.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":4096,"type":"array"},"suffix":{"default":[],"description":"Value for suffix.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":4096,"type":"array"},"unordered_groups":{"default":[],"description":"Value for unordered groups.","items":{"additionalProperties":false,"properties":{"events":{"description":"Value for events.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":256,"minItems":2,"type":"array"}},"required":["events"],"type":"object"},"maxItems":256,"type":"array"}},"required":["kind"],"type":"object"},{"additionalProperties":false,"properties":{"kind":{"const":"finite_traces","description":"Value for kind.","type":"string"},"variants":{"description":"Value for variants.","items":{"additionalProperties":false,"properties":{"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"trace":{"description":"Value for trace.","items":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"additionalProperties":false,"properties":{"unordered":{"description":"Value for unordered.","items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"maxItems":256,"minItems":2,"type":"array"}},"required":["unordered"],"type":"object"}]},"maxItems":4096,"type":"array"}},"required":["id","trace"],"type":"object"},"maxItems":64,"minItems":1,"type":"array"}},"required":["kind","variants"],"type":"object"}]},"version":{"const":1,"description":"Value for version.","type":"number"}},"required":["version","events","language"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record capture disagreement durably","type":"boolean"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"kind":"session","name":"compare_process_captures","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"exit":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"filesystem":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"first_divergence":{"oneOf":[{"additionalProperties":false,"properties":{"status":{"const":"none","type":"string"}},"required":["status"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"status":{"const":"unknown","type":"string"}},"required":["status","reason"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"left":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"left_at_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}]},"right_at_ms":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"status":{"const":"found","type":"string"}},"required":["status","dimension","index","left_at_ms","right_at_ms","left","right"],"type":"object"}]},"interaction":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"process":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"protocol":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"shim":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"terminal":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"trace":{"additionalProperties":false,"properties":{"diagnostic":{"anyOf":[{"additionalProperties":false,"properties":{"event_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"type":"array"},"kind":{"enum":["journal","predicate","cardinality","edge","prefix","suffix","trace"],"type":"string"},"locations":{"items":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"},"type":"array"},"message":{"type":"string"},"side":{"enum":["left","right"],"type":"string"}},"required":["kind","side","message","event_ids","locations"],"type":"object"},{"type":"null"}]},"left":{"anyOf":[{"additionalProperties":false,"properties":{"matched_variant":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"type":"null"}]},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"const":"pass","type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"},{"additionalProperties":false,"properties":{"matched_variant":{"type":"null"},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"enum":["fail","unknown"],"type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"}]},"right":{"anyOf":[{"additionalProperties":false,"properties":{"matched_variant":{"anyOf":[{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},{"type":"null"}]},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"const":"pass","type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"},{"additionalProperties":false,"properties":{"matched_variant":{"type":"null"},"raw_trace":{"items":{"additionalProperties":false,"properties":{"event_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,63}$","type":"string"},"location":{"additionalProperties":false,"properties":{"capture_order":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"collection":{"enum":["frames","rendered_frames","interaction_events","lifecycle","process_samples","filesystem_checkpoints","shim_events","protocol_events","replay_transitions"],"type":"string"},"index":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["collection","index","capture_order"],"type":"object"}},"required":["event_id","location"],"type":"object"},"type":"array"},"satisfied_constraints":{"items":{"type":"string"},"type":"array"},"status":{"enum":["fail","unknown"],"type":"string"}},"required":["satisfied_constraints","raw_trace","status","matched_variant"],"type":"object"}]},"verdict":{"enum":["equivalent","different","nonconforming","unknown"],"type":"string"}},"required":["verdict","left","right","diagnostic"],"type":"object"}},"required":["status","terminal","interaction","exit","filesystem","protocol","process","shim","first_divergence","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Process Captures"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two bounded sets of inventory_artifact Evidence pages by logical occurrence path, content identity, metadata, and graph relations. Pages must share and satisfy their graph commitment; every delta cites both sets, and gaps yield truncated or unknown, never equivalence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_ids":["ev_b74d3ff6cdf54af4e4f3dab00965780cb5ef2b375188c75c1980d0998c5a05a4"],"limit":100,"offset":0,"right_evidence_ids":["ev_74ecec364f3987b332db851177d2117a89d49df4ba89ab5d87299940092d7bb4"]}],"properties":{"left_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the left observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the right observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record incomplete or differing evidence","type":"boolean"}},"required":["left_evidence_ids","right_evidence_ids"],"type":"object"},"kind":"session","name":"compare_artifacts","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["added","removed","changed","unknown","contradiction"],"type":"string"},"dimensions":{"items":{"enum":["content","kind","format","size","executable","relations","metadata","availability","integrity"],"type":"string"},"maxItems":8,"minItems":1,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"left_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"},"right_artifact_id":{"anyOf":[{"pattern":"^art_[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"right_occurrence_id":{"anyOf":[{"pattern":"^occ_[a-f0-9]{64}$","type":"string"},{"type":"null"}]}},"required":["classification","logical_path","dimensions","left_occurrence_id","right_occurrence_id","left_artifact_id","right_artifact_id","evidence_links"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"left_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"contradiction":{"default":0,"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","added","removed","changed","unknown","contradiction"],"type":"object"}},"required":["status","left_manifest_id","right_manifest_id","summary","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Artifacts"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two explicit bounded sets of analyze_function Evidence pages across identity, exact provider text, calls, references, strings, and address-normalized CFG topology. Missing or provider-incompatible facets remain truncated or unknown; every conclusion cites both Evidence sets.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]}],"properties":{"left_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the left observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"right_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the right observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["left_evidence_ids","right_evidence_ids"],"type":"object"},"kind":"session","name":"compare_functions","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"derived_relationship","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"unchanged","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"enum":["derived_relationship","contradiction"],"type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"changed","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"unresolved_branch","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"type":"null"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"type":"null"},"status":{"enum":["truncated","unknown"],"type":"string"},"text_delta":{"type":"null"}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"}]},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"dimensions":{"items":{"anyOf":[{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"derived_relationship","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"unchanged","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"enum":["derived_relationship","contradiction"],"type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"const":"changed","type":"string"},"text_delta":{"anyOf":[{"additionalProperties":false,"properties":{"added_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hunks":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"removed_lines":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["added_lines","removed_lines","hunks"],"type":"object"},{"type":"null"}]}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"},{"additionalProperties":false,"properties":{"conclusion_kind":{"const":"unresolved_branch","type":"string"},"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":200,"minItems":2,"type":"array"},"left_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"left_digest":{"type":"null"},"limitations":{"items":{"type":"string"},"type":"array"},"right_count":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"right_digest":{"type":"null"},"status":{"enum":["truncated","unknown"],"type":"string"},"text_delta":{"type":"null"}},"required":["dimension","left_count","right_count","evidence_links","limitations","status","left_digest","right_digest","text_delta","conclusion_kind"],"type":"object"}]},"maxItems":8,"minItems":8,"type":"array"},"function_match":{"anyOf":[{"additionalProperties":false,"properties":{"left_name":{"type":"string"},"method":{"const":"symbol","type":"string"},"right_name":{"type":"string"},"status":{"const":"matched","type":"string"}},"required":["status","method","left_name","right_name"],"type":"object"},{"additionalProperties":false,"properties":{"left_name":{"type":"string"},"method":{"const":"explicit","type":"string"},"right_name":{"type":"string"},"status":{"enum":["mismatched","ambiguous"],"type":"string"}},"required":["status","method","left_name","right_name"],"type":"object"}]},"left_subject_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_subject_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","truncated","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"truncated":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["unchanged","changed","truncated","unknown"],"type":"object"}},"required":["status","function_match","left_subject_sha256","right_subject_sha256","summary","dimensions","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Functions"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compare two canonical Evidence v2 bundles by exact record membership, explicit one-to-one observation pairs, and complete residual-unknown revision histories. Missing bundle members describe omission only, never behavioral equivalence; output is digest-anchored and deterministically paginated.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"left_bundle_path":"/approved/left-evidence.json","limit":100,"offset":0,"record_pairs":[],"right_bundle_path":"/approved/right-evidence.json"}],"properties":{"left_bundle_path":{"description":"Local filesystem path for left bundle.","maxLength":4096,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"record_pairs":{"default":[],"description":"Value for record pairs.","items":{"properties":{"left_evidence_id":{"description":"Exact Evidence v2 identifier for the left observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"right_evidence_id":{"description":"Exact Evidence v2 identifier for the right observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"}},"required":["left_evidence_id","right_evidence_id"],"type":"object"},"maxItems":500,"type":"array"},"right_bundle_path":{"description":"Local filesystem path for right bundle.","maxLength":4096,"minLength":1,"type":"string"}},"required":["left_bundle_path","right_bundle_path"],"type":"object"},"kind":"session","name":"compare_bundles","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"changes":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["added","removed","changed","unknown","history_advanced","history_diverged"],"type":"string"},"conclusion_kind":{"enum":["observed_change","contradiction","unresolved_branch"],"type":"string"},"entity":{"enum":["evidence","residual_unknown"],"type":"string"},"key":{"minLength":1,"type":"string"},"left_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"left_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"right_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"right_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"}},"required":["entity","key","classification","conclusion_kind","left_evidence_ids","right_evidence_ids","left_digest","right_digest","limitations"],"type":"object"},"maxItems":500,"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"left_bundle_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"right_bundle_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","changed","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"records_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_changed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records_unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_added":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_advanced":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_diverged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_removed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unknowns_unchanged":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["records_unchanged","records_added","records_removed","records_changed","unknowns_unchanged","unknowns_added","unknowns_removed","unknowns_advanced","unknowns_diverged","unresolved"],"type":"object"}},"required":["status","left_bundle_sha256","right_bundle_sha256","summary","changes","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Compare Bundles"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Aggregate validated comparison Evidence, or automatically run and resume a persistent cross-version artifact investigation beneath an approved evidence root. Runtime observations remain distinct from static behavior candidates; missing or incomplete comparisons produce unresolved findings, never causal claims.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"changes":{"items":[{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null}],"limit":100,"next_offset":null,"offset":0,"total":2},"dimensions":[{"conclusion_kind":"derived_relationship","dimension":"identity","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":null,"left_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","limitations":[],"right_count":null,"right_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"comments","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"calls","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"references","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"strings_names","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"cfg","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":1,"left_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","limitations":[],"right_count":1,"right_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","status":"unchanged","text_delta":null}],"function_match":{"left_name":"main","method":"symbol","right_name":"main","status":"matched"},"left_subject_sha256":"0000000000000000000000000000000000000000000000000000000000000000","limitations":[],"right_subject_sha256":"1111111111111111111111111111111111111111111111111111111111111111","status":"unknown","summary":{"changed":1,"truncated":0,"unchanged":6,"unknown":1}},"operation":"compare_functions","parameters":{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]},"predicate_type":"rea.function-comparison/v1","provider":{"id":"rea-function-comparison","name":"REA function comparison","version":"1"},"raw_result":null,"schema_version":2,"subject":null}],"limit":100,"offset":0}],"properties":{"comparisons":{"default":[],"description":"Validated comparison Evidence records to aggregate.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"investigation_run":{"anyOf":[{"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_workspace_revision":{"description":"Expected workspace revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"integrity_continue_approved":{"const":false,"default":false,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"fail","default":"fail","description":"Value for integrity policy.","type":"string"},"left_path":{"description":"Local filesystem path for left.","maxLength":4096,"minLength":1,"type":"string"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"options":{"default":{"change_limit":500,"max_compression_ratio":1000,"max_depth":20,"max_entries":10000,"max_entry_bytes":268435456,"max_path_bytes":4096,"max_total_bytes":1073741824,"page_size":500},"description":"Value for options.","properties":{"change_limit":{"default":500,"description":"Maximum number of change entries to return.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"page_size":{"default":500,"description":"Value for page size.","maximum":500,"minimum":1,"type":"integer"}},"type":"object"},"replay_run_id":{"description":"Value for replay run id.","pattern":"^run_[a-f0-9]{64}$","type":"string"},"right_path":{"description":"Local filesystem path for right.","maxLength":4096,"minLength":1,"type":"string"},"workspace_name":{"default":"default","description":"Value for workspace name.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","left_path","right_path"],"type":"object"},{"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"expected_workspace_revision":{"description":"Expected workspace revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"integrity_continue_approved":{"const":true,"description":"Explicit operator approval for integrity continue.","type":"boolean"},"integrity_policy":{"const":"record-and-continue","description":"Value for integrity policy.","type":"string"},"left_path":{"description":"Local filesystem path for left.","maxLength":4096,"minLength":1,"type":"string"},"max_integrity_mismatches":{"default":10,"description":"Maximum permitted integrity mismatches for this operation.","maximum":100,"minimum":1,"type":"integer"},"options":{"default":{"change_limit":500,"max_compression_ratio":1000,"max_depth":20,"max_entries":10000,"max_entry_bytes":268435456,"max_path_bytes":4096,"max_total_bytes":1073741824,"page_size":500},"description":"Value for options.","properties":{"change_limit":{"default":500,"description":"Maximum number of change entries to return.","maximum":500,"minimum":1,"type":"integer"},"max_compression_ratio":{"default":1000,"description":"Maximum permitted compression ratio for this operation.","maximum":100000,"minimum":1,"type":"number"},"max_depth":{"default":20,"description":"Maximum permitted depth for this operation.","maximum":100,"minimum":0,"type":"integer"},"max_entries":{"default":10000,"description":"Maximum permitted entries for this operation.","maximum":50000,"minimum":1,"type":"integer"},"max_entry_bytes":{"default":268435456,"description":"Maximum permitted entry bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"max_path_bytes":{"default":4096,"description":"Maximum permitted path bytes for this operation.","maximum":65535,"minimum":1,"type":"integer"},"max_total_bytes":{"default":1073741824,"description":"Maximum permitted total bytes for this operation.","maximum":9007199254740991,"minimum":1,"type":"integer"},"page_size":{"default":500,"description":"Value for page size.","maximum":500,"minimum":1,"type":"integer"}},"type":"object"},"replay_run_id":{"description":"Value for replay run id.","pattern":"^run_[a-f0-9]{64}$","type":"string"},"right_path":{"description":"Local filesystem path for right.","maxLength":4096,"minLength":1,"type":"string"},"workspace_name":{"default":"default","description":"Value for workspace name.","maxLength":200,"minLength":1,"type":"string"},"workspace_path":{"description":"Approved local path of the persistent investigation workspace.","maxLength":4096,"minLength":1,"type":"string"}},"required":["approved","workspace_path","left_path","right_path","integrity_policy","integrity_continue_approved"],"type":"object"}],"description":"Value for investigation run."},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"type":"object"},"kind":"session","name":"find_changed_behavior","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"behavior_status":{"enum":["observed_changed","observed_unchanged","unknown","truncated"],"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":3,"type":"array"},"findings":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["observed_change","derived_relationship","contradiction","unresolved_branch"],"type":"string"},"dimension":{"minLength":1,"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":201,"minItems":3,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"scope":{"enum":["runtime","protocol","resource","static_candidate"],"type":"string"},"source_comparison_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["scope","dimension","classification","status","source_comparison_id","evidence_links","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"investigation_run":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"inventory_evidence_count":{"maximum":200,"minimum":2,"type":"integer"},"left_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"limitations":{"items":{"maxLength":4096,"type":"string"},"maxItems":100,"type":"array"},"right_manifest_id":{"pattern":"^agm_[a-f0-9]{64}$","type":"string"},"run_id":{"pattern":"^run_[a-f0-9]{64}$","type":"string"},"schema_version":{"const":1,"type":"number"},"workspace_id":{"pattern":"^ws_[a-f0-9]{64}$","type":"string"}},"required":["schema_version","workspace_id","run_id","left_manifest_id","right_manifest_id","inventory_evidence_count","comparison_evidence_id","limitations"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"summary":{"additionalProperties":false,"properties":{"contradictions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"observed_changes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"static_candidates":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["observed_changes","static_candidates","contradictions","unresolved"],"type":"object"}},"required":["behavior_status","summary","findings","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Find Changed Behavior"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Build bounded shortest-first direct-callee paths from explicit analyze_function Evidence groups using exact canonical addresses. Missing dossiers, incomplete callee pages, provider mixing, and depth frontiers remain unknown; every node and edge cites source Evidence.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"functions":[{"authority":"shipped-artifact","confidence":"derived","environment":null,"evidence_id":"ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","evidence_links":[],"limitations":[],"locations":[],"normalized_result":{"assembly":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"basic_blocks":{"items":[{"end":"0x1001","start":"0x1000","successors":[]}],"next_offset":null,"returned":1,"total":1,"truncated":false},"callees":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"callers":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"comments":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"incoming_references":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"instruction_scan":{"scanned":1,"truncated":false},"outgoing_references":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"procedure":{"address":"0x1000","locals":[],"name":"main","signature":"int main(void)"},"pseudocode":{"next_offset":null,"returned_chars":9,"text":"return 0;","total_chars":9,"truncated":false},"referenced_names":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false},"referenced_strings":{"items":[],"next_offset":null,"returned":0,"total":0,"truncated":false}},"operation":"analyze_function","parameters":{"assembly_offset":0,"collection_offset":{"basic_blocks":0,"callees":0,"callers":0,"comments":0,"incoming_references":0,"outgoing_references":0,"referenced_names":0,"referenced_strings":0},"include_assembly":false,"limit":100,"max_instructions":500,"max_pseudocode_chars":20000,"procedure":"main","pseudocode_offset":0},"predicate_type":"rea.analysis/v2","provider":{"id":"rea-workflow","name":"REA composed investigation workflow","version":"1"},"raw_result":null,"schema_version":2,"subject":{"architecture":null,"digest":{"sha256":"0000000000000000000000000000000000000000000000000000000000000000"},"format":"mach-o","local_path":"/tmp/function-0","name":"function-0"}}],"goal":{"address":"0x1000"},"limit":100,"max_depth":8,"max_paths":10,"offset":0,"start":{"address":"0x1000"}}],"properties":{"functions":{"description":"Value for functions.","items":{"anyOf":[{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},{"items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"}]},"maxItems":500,"minItems":1,"type":"array"},"goal":{"additionalProperties":false,"description":"Value for goal.","properties":{"address":{"description":"Value for address.","pattern":"^0[xX][0-9a-fA-F]+$","type":"string"}},"required":["address"],"type":"object"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"max_depth":{"default":8,"description":"Maximum permitted depth for this operation.","maximum":32,"minimum":0,"type":"integer"},"max_paths":{"default":10,"description":"Maximum permitted paths for this operation.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"start":{"additionalProperties":false,"description":"Value for start.","properties":{"address":{"description":"Value for address.","pattern":"^0[xX][0-9a-fA-F]+$","type":"string"}},"required":["address"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["functions","start","goal"],"type":"object"},"kind":"session","name":"build_call_path","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"anyOf":[{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"source":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"target":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"}},"required":["source","target","evidence_links"],"type":"object"},"maxItems":32,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3300,"minItems":1,"type":"array"},"hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","evidence_links"],"type":"object"},"maxItems":33,"minItems":1,"type":"array"}},"required":["hops","nodes","edges","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":100,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","returned","next_offset","total","truncated","lower_bound"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"found","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"prefixItems":[],"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"const":0,"type":"number"},"next_offset":{"type":"null"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"const":0,"type":"number"},"total":{"const":0,"type":"number"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","total","returned","truncated","lower_bound","next_offset"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":true,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"type":"null"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"not_found","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"prefixItems":[],"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"const":0,"type":"number"},"next_offset":{"type":"null"},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"const":0,"type":"number"},"total":{"const":0,"type":"number"},"truncated":{"const":false,"type":"boolean"}},"required":["offset","limit","items","total","returned","truncated","lower_bound","next_offset"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":false,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"type":"null"},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"unknown","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"},{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":50000,"minItems":1,"type":"array"},"explored":{"additionalProperties":false,"properties":{"depth_reached":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"edges":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["nodes","edges","depth_reached"],"type":"object"},"goal":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"limitations":{"items":{"type":"string"},"type":"array"},"paths":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"edges":{"items":{"additionalProperties":false,"properties":{"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"source":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"target":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"}},"required":["source","target","evidence_links"],"type":"object"},"maxItems":32,"type":"array"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":3300,"minItems":1,"type":"array"},"hops":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"nodes":{"items":{"additionalProperties":false,"properties":{"address":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"name":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["address","name","evidence_links"],"type":"object"},"maxItems":33,"minItems":1,"type":"array"}},"required":["hops","nodes","edges","evidence_links"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"lower_bound":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"returned":{"maximum":100,"minimum":0,"type":"integer"},"total":{"type":"null"},"truncated":{"const":true,"type":"boolean"}},"required":["offset","limit","items","returned","next_offset","total","truncated","lower_bound"],"type":"object"},"search_scope":{"additionalProperties":false,"properties":{"exhaustive":{"const":false,"type":"boolean"},"max_depth":{"maximum":32,"minimum":0,"type":"integer"},"max_paths":{"maximum":100,"minimum":1,"type":"integer"}},"required":["max_depth","max_paths","exhaustive"],"type":"object"},"shortest_hops":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"start":{"pattern":"^0x(?:0|[1-9a-f][0-9a-f]*)$","type":"string"},"status":{"const":"truncated","type":"string"}},"required":["start","goal","explored","evidence_links","limitations","status","shortest_hops","search_scope","paths"],"type":"object"}]}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Build Call Path"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Evaluate explicit caller-declared hypotheses between exact static comparison findings and runtime comparison dimensions. Similar names or paths are never auto-matched, consistent cochange never proves causality, and unknown or truncated inputs remain unresolved.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"mappings":[{"hypothesis":{"expected_pattern":"static_only","statement":"Static implementation changed without terminal change."},"runtime":{"comparison_evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","dimension":"terminal"},"side_alignment":"left_to_left","static":{"comparison_evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","selector":{"dimension":"pseudocode","kind":"function"}}}],"offset":0,"runtime_comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","evidence_links":["ev_0014950a3b67b96d5d182a51c5a271959828fe6a91db55fc507dd5a9c2a5ecaf","ev_5d45bc669ea10694f3bdf3b325e2048844da96a621b717ad252d667af53df590"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"exit":"unchanged","filesystem":"unchanged","first_divergence":{"status":"none"},"interaction":"unchanged","limitations":[],"process":"unchanged","protocol":"unchanged","shim":"unchanged","status":"unchanged","terminal":"unchanged"},"operation":"compare_process_captures","parameters":{"left_evidence_id":"ev_0014950a3b67b96d5d182a51c5a271959828fe6a91db55fc507dd5a9c2a5ecaf","left_normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10},"right_evidence_id":"ev_5d45bc669ea10694f3bdf3b325e2048844da96a621b717ad252d667af53df590","right_normalization":{"paths":true,"patterns":[],"pids":true,"ports":true,"time_bucket_ms":10}},"predicate_type":"rea.process-comparison/v3","provider":{"id":"rea-process","name":"REA deterministic process harness","version":"3"},"raw_result":null,"schema_version":2,"subject":null}],"static_comparisons":[{"authority":"analyst-inference","confidence":"derived","environment":null,"evidence_id":"ev_68c195e7d5d8688f3eb0764a9a868355fcc6f8810fc9ada1a0c8579c21ea2bf8","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"limitations":["Artifact identity is unavailable for this observation."],"locations":[],"normalized_result":{"changes":{"items":[{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null}],"limit":100,"next_offset":null,"offset":0,"total":2},"dimensions":[{"conclusion_kind":"derived_relationship","dimension":"identity","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":null,"left_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","limitations":[],"right_count":null,"right_digest":"dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"pseudocode","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":9,"left_digest":"64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554","limitations":[],"right_count":9,"right_digest":"c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1","status":"changed","text_delta":{"added_lines":1,"hunks":2,"removed_lines":1}},{"conclusion_kind":"unresolved_branch","dimension":"assembly","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":null,"limitations":["Assembly is opaque provider text; relocation normalization is unavailable."],"right_count":0,"right_digest":null,"status":"unknown","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"comments","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"calls","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"references","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"strings_names","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":0,"left_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","limitations":[],"right_count":0,"right_digest":"4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945","status":"unchanged","text_delta":null},{"conclusion_kind":"derived_relationship","dimension":"cfg","evidence_links":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e","ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"],"left_count":1,"left_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","limitations":[],"right_count":1,"right_digest":"e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0","status":"unchanged","text_delta":null}],"function_match":{"left_name":"main","method":"symbol","right_name":"main","status":"matched"},"left_subject_sha256":"0000000000000000000000000000000000000000000000000000000000000000","limitations":[],"right_subject_sha256":"1111111111111111111111111111111111111111111111111111111111111111","status":"unknown","summary":{"changed":1,"truncated":0,"unchanged":6,"unknown":1}},"operation":"compare_functions","parameters":{"left_evidence_ids":["ev_ff8eed2e28fd9549add0c20d7573566358ad228b980f538e2e0709155a456e1e"],"limit":100,"offset":0,"right_evidence_ids":["ev_7cee7dd9a31cbb2881b2db1c9042ebb961cef07c9152da5ab533b52a0a3492e0"]},"predicate_type":"rea.function-comparison/v1","provider":{"id":"rea-function-comparison","name":"REA function comparison","version":"1"},"raw_result":null,"schema_version":2,"subject":null}]}],"properties":{"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"mappings":{"description":"Value for mappings.","items":{"additionalProperties":false,"properties":{"hypothesis":{"additionalProperties":false,"description":"Value for hypothesis.","properties":{"expected_pattern":{"description":"Expected pattern used to reject stale or mismatched input.","enum":["cochanged","static_only","runtime_only","both_unchanged"],"type":"string"},"statement":{"description":"Value for statement.","maxLength":500,"minLength":1,"type":"string"}},"required":["statement","expected_pattern"],"type":"object"},"runtime":{"additionalProperties":false,"description":"Value for runtime.","properties":{"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"}},"required":["comparison_evidence_id","dimension"],"type":"object"},"side_alignment":{"description":"Value for side alignment.","enum":["left_to_left","left_to_right"],"type":"string"},"static":{"additionalProperties":false,"description":"Value for static.","properties":{"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"selector":{"description":"Value for selector.","oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact","description":"Value for kind.","type":"string"},"logical_path":{"description":"Local filesystem path for logical.","maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","logical_path"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"description":"Value for dimension.","enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"function","description":"Value for kind.","type":"string"}},"required":["kind","dimension"],"type":"object"}]}},"required":["comparison_evidence_id","selector"],"type":"object"}},"required":["static","runtime","side_alignment","hypothesis"],"type":"object"},"maxItems":500,"minItems":1,"type":"array"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"runtime_comparisons":{"description":"Value for runtime comparisons.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"static_comparisons":{"description":"Value for static comparisons.","items":{"additionalProperties":false,"properties":{"analysis_profile":{"description":"Value for analysis profile.","properties":{"digest":{"description":"Value for digest.","pattern":"^[a-f0-9]{64}$","type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"description":"Value for version.","minLength":1,"type":"string"}},"required":["id","name","version"],"type":"object"},"provider_profile_schema_version":{"description":"Value for provider profile schema version.","maximum":9007199254740991,"minimum":1,"type":"integer"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","provider","provider_profile_schema_version","parameters","digest"],"type":"object"},"authority":{"description":"Value for authority.","enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},"confidence":{"description":"Value for confidence.","enum":["observed","derived","inferred"],"type":"string"},"environment":{"anyOf":[{"properties":{"architecture":{"description":"Value for architecture.","minLength":1,"type":"string"},"id":{"description":"Value for id.","minLength":1,"type":"string"},"isolation":{"description":"Value for isolation.","enum":["none","process","container","virtual-machine"],"type":"string"},"platform":{"description":"Value for platform.","minLength":1,"type":"string"}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for environment."},"evidence_id":{"description":"Stable identifier of the recorded Evidence v2 observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_links":{"description":"Value for evidence links.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"type":"array"},"limitations":{"description":"Value for limitations.","items":{"type":"string"},"type":"array"},"locations":{"description":"Value for locations.","items":{"oneOf":[{"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"kind":{"const":"address","description":"Value for kind.","type":"string"}},"required":["kind","address"],"type":"object"},{"properties":{"end":{"description":"Value for end.","minLength":1,"type":"string"},"kind":{"const":"address-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","minLength":1,"type":"string"}},"required":["kind","start","end"],"type":"object"},{"properties":{"kind":{"const":"artifact-path","description":"Value for kind.","type":"string"},"path":{"description":"Local filesystem path used by this operation.","minLength":1,"type":"string"}},"required":["kind","path"],"type":"object"},{"properties":{"kind":{"const":"file-offset","description":"Value for kind.","type":"string"},"offset":{"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","offset"],"type":"object"},{"properties":{"end":{"description":"Value for end.","maximum":9007199254740991,"minimum":0,"type":"integer"},"kind":{"const":"file-offset-range","description":"Value for kind.","type":"string"},"start":{"description":"Value for start.","maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["kind","start","end"],"type":"object"}]},"type":"array"},"normalized_result":{"$ref":"#/$defs/__schema0","description":"Value for normalized result."},"operation":{"description":"Value for operation.","minLength":1,"type":"string"},"parameters":{"additionalProperties":{"$ref":"#/$defs/__schema0"},"description":"Value for parameters.","propertyNames":{"type":"string"},"type":"object"},"predicate_type":{"description":"Value for predicate type.","minLength":1,"type":"string"},"provider":{"description":"Value for provider.","properties":{"id":{"description":"Value for id.","minLength":1,"type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"version":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Value for version."}},"required":["id","name","version"],"type":"object"},"raw_result":{"anyOf":[{"$ref":"#/$defs/__schema0"},{"type":"null"}],"description":"Value for raw result."},"schema_version":{"const":2,"description":"Version of this structured result schema.","type":"number"},"subject":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"enum":["x86","x86_64","arm","arm64"],"type":"string"},{"type":"null"}],"description":"Value for architecture."},"digest":{"description":"Value for digest.","properties":{"sha256":{"description":"Value for sha256.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["sha256"],"type":"object"},"format":{"description":"Declared input artifact format.","enum":["hopper","analysis-database","mach-o","elf","pe","zip","ipa","apk","msix","appx","asar","dmg","pkg","plist","javascript","source-map","directory","file","unknown","mach-o-universal","javascript-bundle","entitlements"],"type":"string"},"local_path":{"description":"Local filesystem path for local.","type":"string"},"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"}},"required":["name","digest","format","architecture","local_path"],"type":"object"},{"type":"null"}],"description":"Value for subject."}},"required":["schema_version","evidence_id","subject","provider","predicate_type","operation","parameters","raw_result","normalized_result","confidence","authority","environment","limitations","locations","evidence_links"],"type":"object"},"maxItems":100,"minItems":1,"type":"array"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["static_comparisons","runtime_comparisons","mappings"],"type":"object"},"kind":"session","name":"correlate_static_and_runtime","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"correlations":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"classification":{"enum":["hypothesis","contradiction","unresolved_branch"],"type":"string"},"correlation_id":{"pattern":"^cor_[a-f0-9]{64}$","type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":2,"type":"array"},"hypothesis":{"additionalProperties":false,"properties":{"expected_pattern":{"enum":["cochanged","static_only","runtime_only","both_unchanged"],"type":"string"},"statement":{"maxLength":500,"minLength":1,"type":"string"}},"required":["statement","expected_pattern"],"type":"object"},"limitations":{"items":{"type":"string"},"type":"array"},"observed_pattern":{"enum":["cochanged","static_only","runtime_only","both_unchanged","unknown","truncated"],"type":"string"},"runtime":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"enum":["terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["comparison_evidence_id","dimension","status"],"type":"object"},"side_alignment":{"enum":["left_to_left","left_to_right"],"type":"string"},"static":{"additionalProperties":false,"properties":{"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"conclusion_kind":{"enum":["derived_relationship","contradiction","unresolved_branch"],"type":"string"},"selector":{"oneOf":[{"additionalProperties":false,"properties":{"kind":{"const":"artifact","type":"string"},"logical_path":{"maxLength":4096,"minLength":1,"type":"string"}},"required":["kind","logical_path"],"type":"object"},{"additionalProperties":false,"properties":{"dimension":{"enum":["identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"function","type":"string"}},"required":["kind","dimension"],"type":"object"}]},"status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"}},"required":["comparison_evidence_id","selector","status","conclusion_kind"],"type":"object"}},"required":["correlation_id","static","runtime","side_alignment","hypothesis","observed_pattern","classification","evidence_links","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":2,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"status":{"enum":["correlated","contradicted","unknown","truncated"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"contradictions":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"hypotheses":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"unresolved":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["hypotheses","contradictions","unresolved"],"type":"object"}},"required":["status","summary","correlations","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Correlate Static And Runtime"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Verify a finite typed behavioral and structural specification against a canonical Evidence bundle. Pass means every declared claim has complete comparable authority—not global source equivalence; changed claims fail and missing, limited, or unresolved evidence stays unknown.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"offset":0,"specification":{"claims":[{"claim_id":"terminal-output","comparison_evidence_id":"ev_2ffc472e561cea4b5e65ddaf7b80bc112b7ed6d0d023f0cf7398bc2068a12e2d","dimension":"terminal","kind":"behavioral","title":"Terminal output remains equivalent"}],"name":"Terminal compatibility","schema_version":1}}],"properties":{"coverage":{"additionalProperties":false,"description":"Exact reconstruction-coverage commitment to verify.","properties":{"boundary_id":{"description":"Exact reconstruction boundary identifier to evaluate.","maxLength":200,"minLength":1,"type":"string"},"revision":{"description":"Value for revision.","maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_sha256":{"description":"Exact SHA-256 digest of revision.","pattern":"^[a-f0-9]{64}$","type":"string"},"workspace_id":{"description":"Value for workspace id.","pattern":"^rcw_[a-f0-9]{64}$","type":"string"}},"required":["workspace_id","revision","revision_sha256","boundary_id"],"type":"object"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":100,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"specification":{"description":"Value for specification.","properties":{"claims":{"description":"Value for claims.","items":{"oneOf":[{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["overall","terminal","interaction","exit","filesystem","protocol","process","shim"],"type":"string"},"kind":{"const":"behavioral","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"},{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"description":"Value for dimension.","enum":["overall","identity","pseudocode","assembly","comments","calls","references","strings_names","cfg"],"type":"string"},"kind":{"const":"structural-function","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"},{"properties":{"claim_id":{"description":"Value for claim id.","pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"description":"Exact Evidence v2 identifier for the comparison observation.","pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"const":"overall","description":"Value for dimension.","type":"string"},"kind":{"const":"structural-artifact","description":"Value for kind.","type":"string"},"title":{"description":"Value for title.","maxLength":500,"minLength":1,"type":"string"}},"required":["claim_id","title","comparison_evidence_id","kind","dimension"],"type":"object"}]},"maxItems":100,"minItems":1,"type":"array"},"name":{"description":"Exact name used by this operation.","maxLength":200,"minLength":1,"type":"string"},"schema_version":{"const":1,"description":"Version of this structured result schema.","type":"number"}},"required":["schema_version","name","claims"],"type":"object"},"unknown_registry_approved":{"const":true,"description":"Explicit approval to record bounded residual uncertainty in the session registry.","type":"boolean"}},"required":["specification"],"type":"object"},"kind":"session","name":"verify_reconstruction","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"evidence_uri":{"pattern":"^rea:\\\\/\\\\/evidence\\\\/ev_[a-f0-9]{64}$","type":"string"},"result":{"additionalProperties":false,"properties":{"claims":{"additionalProperties":false,"properties":{"items":{"items":{"additionalProperties":false,"properties":{"claim_id":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"comparison_evidence_id":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"dimension":{"minLength":1,"type":"string"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":201,"minItems":3,"type":"array"},"kind":{"enum":["behavioral","structural-function","structural-artifact"],"type":"string"},"left_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"observed_status":{"enum":["unchanged","added","removed","changed","truncated","unknown","contradiction"],"type":"string"},"right_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"status":{"enum":["pass","fail","unknown"],"type":"string"},"unknown_ids":{"items":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["claim_id","kind","dimension","status","observed_status","comparison_evidence_id","left_evidence_ids","right_evidence_ids","evidence_links","unknown_ids","limitations"],"type":"object"},"maxItems":100,"type":"array"},"limit":{"maximum":100,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":100,"minimum":1,"type":"integer"}},"required":["items","offset","limit","total","next_offset"],"type":"object"},"evidence_links":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":20100,"minItems":3,"type":"array"},"limitations":{"items":{"type":"string"},"type":"array"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"claim_ids":{"items":{"pattern":"^[A-Za-z][A-Za-z0-9._-]{0,99}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"},"unknown_ids":{"items":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["operation","rationale","claim_ids","unknown_ids"],"type":"object"},"maxItems":2000,"type":"array"},"specification_sha256":{"pattern":"^[a-f0-9]{64}$","type":"string"},"status":{"enum":["pass","fail","unknown"],"type":"string"},"summary":{"additionalProperties":false,"properties":{"behavioral":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"failed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"passed":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"structural":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":100,"minimum":1,"type":"integer"},"unknown":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["total","passed","failed","unknown","behavioral","structural"],"type":"object"}},"required":["status","specification_sha256","summary","claims","recommended_probes","evidence_links","limitations"],"type":"object"}},"required":["result","evidence_id","evidence_uri"],"type":"object"},"requiresSession":true,"title":"Verify Reconstruction"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"List current residual-unknown heads in deterministic ID order, with optional exact status, severity, and domain filters. Pages default to 100 items; while has_more is true, pass next_offset as offset and continue until false. This is read-only; unresolved, contradicted, and non-truth dispositions remain distinct.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"limit":100,"offset":0}],"properties":{"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"limit":{"default":100,"description":"Maximum number of results to return in this page.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Zero-based index of the first result to return.","maximum":9007199254740991,"minimum":0,"type":"integer"},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"}},"type":"object"},"kind":"session","name":"list_unknowns","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"has_more":{"type":"boolean"},"items":{"items":{"additionalProperties":false,"properties":{"unknown":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"uri":{"pattern":"^rea:\\\\/\\\\/unknown\\\\/unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown","uri"],"type":"object"},"type":"array"},"limit":{"maximum":500,"minimum":1,"type":"integer"},"next_offset":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]},"offset":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"total":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["items","offset","limit","total","next_offset","has_more"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"List Unknowns"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Create one deterministic residual unknown and immutable mutation evidence. Requires approved: true, validates all evidence and relationship references, and rejects duplicate stable identity.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"contradicting_evidence_ids":[],"domain":"protocol","question":"Does this branch require an unavailable external service?","recommended_probes":[{"operation":"capture_process_scenario","rationale":"Replay branch."}],"relationships":[],"required_authority":"controlled-replay","required_confidence":"observed","required_environment":null,"severity":"medium","supporting_evidence_ids":[]}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"contradicting_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"description":"Value for domain.","maxLength":100,"minLength":1,"type":"string"},"question":{"description":"Concrete unresolved question to retain for later investigation.","maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"supporting_evidence_ids":{"default":[],"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"}},"required":["question","severity","domain","required_authority","required_confidence","required_environment","recommended_probes","relationships","approved"],"type":"object"},"kind":"session","name":"record_unknown","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Record Unknown"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":false,"openWorldHint":false,"readOnlyHint":false},"description":"Append one immutable full-state revision and mutation evidence. Requires approved: true and exact expected_revision; stale concurrent writers fail instead of overwriting newer analysis.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":false,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","examples":[{"approved":true,"contradicting_evidence_ids":[],"expected_revision":1,"recommended_probes":[],"relationships":[],"required_authority":"controlled-replay","required_confidence":"observed","required_environment":null,"resolution":null,"severity":"medium","status":"investigating","supporting_evidence_ids":[],"unknown_id":"unk_0000000000000000000000000000000000000000000000000000000000000000"}],"properties":{"approved":{"const":true,"description":"Explicit operator approval to perform this operation.","type":"boolean"},"contradicting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the contradicting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"expected_revision":{"description":"Expected revision used to reject stale or mismatched input.","maximum":9007199254740991,"minimum":1,"type":"integer"},"recommended_probes":{"description":"Value for recommended probes.","items":{"properties":{"operation":{"description":"Value for operation.","maxLength":200,"minLength":1,"type":"string"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"relationships":{"description":"Value for relationships.","items":{"properties":{"type":{"description":"Value for type.","enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}],"description":"Value for required authority."},"required_confidence":{"description":"Value for required confidence.","enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for architecture."},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for id."},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}],"description":"Value for isolation."},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}],"description":"Value for platform."}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}],"description":"Value for required environment."},"resolution":{"anyOf":[{"oneOf":[{"properties":{"disposition":{"const":"verified","description":"Value for disposition.","type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"properties":{"disposition":{"description":"Value for disposition.","enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"description":"Value for evidence ids.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"description":"Value for rationale.","maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}],"description":"Value for resolution."},"severity":{"description":"Value for severity.","enum":["low","medium","high","critical"],"type":"string"},"status":{"description":"Current lifecycle or verification status.","enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"description":"Ordered Evidence v2 identifiers for the supporting observations.","items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown_id","expected_revision","approved","status","severity","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution"],"type":"object"},"kind":"session","name":"update_unknown","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Update Unknown"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Revalidate the current residual-unknown head against live bundled evidence, exact authority/confidence/environment requirements, and revision integrity. Withdrawn and out-of-scope dispositions are not truth claims.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"unknown_id":"unk_0000000000000000000000000000000000000000000000000000000000000000"}],"properties":{"unknown_id":{"description":"Exact residual-unknown identifier.","pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["unknown_id"],"type":"object"},"kind":"session","name":"verify_unknown_resolution","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"truthVerified":{"type":"boolean"},"unknown":{"additionalProperties":false,"properties":{"contradicting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"domain":{"maxLength":100,"minLength":1,"type":"string"},"mutation_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"previous_revision_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"question":{"maxLength":1000,"minLength":1,"type":"string"},"recommended_probes":{"items":{"additionalProperties":false,"properties":{"operation":{"maxLength":200,"minLength":1,"type":"string"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["operation","rationale"],"type":"object"},"maxItems":20,"type":"array"},"registry_version":{"const":1,"type":"number"},"relationships":{"items":{"additionalProperties":false,"properties":{"type":{"enum":["depends-on","related-to","contradicts"],"type":"string"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["type","unknown_id"],"type":"object"},"maxItems":100,"type":"array"},"required_authority":{"anyOf":[{"enum":["shipped-artifact","controlled-replay","historical-reference","external-service","analyst-inference"],"type":"string"},{"type":"null"}]},"required_confidence":{"enum":["observed","derived","inferred"],"type":"string"},"required_environment":{"anyOf":[{"additionalProperties":false,"properties":{"architecture":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]},"id":{"anyOf":[{"maxLength":200,"minLength":1,"type":"string"},{"type":"null"}]},"isolation":{"anyOf":[{"enum":["none","process","container","virtual-machine"],"type":"string"},{"type":"null"}]},"platform":{"anyOf":[{"maxLength":100,"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","platform","architecture","isolation"],"type":"object"},{"type":"null"}]},"resolution":{"anyOf":[{"oneOf":[{"additionalProperties":false,"properties":{"disposition":{"const":"verified","type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"minItems":1,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"},{"additionalProperties":false,"properties":{"disposition":{"enum":["withdrawn","out-of-scope"],"type":"string"},"evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"rationale":{"maxLength":1000,"minLength":1,"type":"string"}},"required":["disposition","rationale","evidence_ids"],"type":"object"}]},{"type":"null"}]},"revision":{"maximum":9007199254740991,"minimum":1,"type":"integer"},"revision_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"scope_digest":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"severity":{"enum":["low","medium","high","critical"],"type":"string"},"status":{"enum":["open","investigating","blocked","contradicted","resolved"],"type":"string"},"supporting_evidence_ids":{"items":{"pattern":"^ev_[a-f0-9]{64}$","type":"string"},"maxItems":100,"type":"array"},"unknown_id":{"pattern":"^unk_[a-f0-9]{64}$","type":"string"}},"required":["registry_version","unknown_id","revision","previous_revision_digest","revision_digest","scope_digest","question","status","severity","domain","supporting_evidence_ids","contradicting_evidence_ids","required_authority","required_confidence","required_environment","recommended_probes","relationships","resolution","mutation_evidence_ids"],"type":"object"},"valid":{"type":"boolean"}},"required":["valid","truthVerified","unknown"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Verify Unknown Resolution"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"description":"Evaluate ordered HTTP and WebSocket events directly against one validated finite replay machine without opening sockets or launching a target. Returns every decision, a capture-value-free transition journal, one redacted action table entry per used transition, captured aliases, final state, and exact configured and consumed limits.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":false,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"events":[{"at_ms":0,"body":"{\\"token\\":\\"opaque\\"}","connection":"not_applicable","headers":{},"method":"POST","path":"/callback","protocol":"http"}],"machine":{"initial_state":"waiting","limits":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"max_transitions":1,"states":[{"max_visits":100000,"name":"waiting","terminal":false},{"max_visits":100000,"name":"complete","terminal":true}],"transitions":[{"actions":[{"body":"","headers":{},"status":204,"type":"http_response"}],"captures":[{"sensitive":true,"value":{"path":["token"],"source":"request_json"},"variable":"token"}],"from":"waiting","guards":[],"id":"accept_callback","max_uses":1,"priority":100,"to":"complete","trigger":{"body":null,"headers":{},"method":"POST","path":"/callback","protocol":"http"}}]}}],"properties":{"events":{"description":"Value for events.","items":{"oneOf":[{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"const":"not_applicable","description":"Value for connection.","type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"description":"Value for connection.","enum":["initial","reconnect"],"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","type":"null"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"at_ms":{"description":"Value for at ms.","maximum":9007199254740991,"minimum":0,"type":"integer"},"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"connection":{"description":"Value for connection.","enum":["initial","reconnect"],"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","type":"null"},"path":{"description":"Local filesystem path used by this operation.","maxLength":8192,"pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","connection","method","at_ms","path","headers","body"],"type":"object"}]},"maxItems":10000,"type":"array"},"machine":{"additionalProperties":false,"description":"Value for machine.","properties":{"initial_state":{"description":"Value for initial state.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"default":{"bytes":1000000,"connections":100,"duration_ms":30000,"messages":10000},"description":"Bounded resource-consumption and result-size limits for this operation.","properties":{"bytes":{"default":1000000,"description":"Value for bytes.","maximum":10000000,"minimum":1,"type":"integer"},"connections":{"default":100,"description":"Value for connections.","maximum":1000,"minimum":1,"type":"integer"},"duration_ms":{"default":30000,"description":"Value for duration ms.","maximum":300000,"minimum":1,"type":"integer"},"messages":{"default":10000,"description":"Value for messages.","maximum":100000,"minimum":1,"type":"integer"}},"type":"object"},"max_transitions":{"description":"Maximum permitted transitions for this operation.","maximum":100000,"minimum":1,"type":"integer"},"states":{"description":"Value for states.","items":{"additionalProperties":false,"properties":{"max_visits":{"default":100000,"description":"Maximum permitted visits for this operation.","maximum":100000,"minimum":1,"type":"integer"},"name":{"description":"Exact name used by this operation.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"terminal":{"default":false,"description":"Value for terminal.","type":"boolean"}},"required":["name"],"type":"object"},"maxItems":256,"minItems":1,"type":"array"},"transitions":{"description":"Value for transitions.","items":{"additionalProperties":false,"properties":{"actions":{"description":"Value for actions.","items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"description":"Value for body.","maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"default":{},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"description":"Current lifecycle or verification status.","maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","description":"Value for type.","type":"string"}},"required":["type","status","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"description":"Value for data.","maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","description":"Value for type.","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","description":"Value for type.","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"description":"Value for duration ms.","maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","description":"Value for type.","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"minItems":1,"type":"array"},"captures":{"description":"Value for captures.","items":{"additionalProperties":false,"properties":{"sensitive":{"default":false,"description":"Value for sensitive.","type":"boolean"},"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"from":{"description":"Value for from.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"guards":{"description":"Value for guards.","items":{"additionalProperties":false,"properties":{"value":{"description":"Value for value.","oneOf":[{"additionalProperties":false,"properties":{"name":{"description":"Exact name used by this operation.","minLength":1,"type":"string"},"source":{"const":"request_header","description":"Value for source.","type":"string"}},"required":["source","name"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"request_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"websocket_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"},{"additionalProperties":false,"properties":{"path":{"description":"Local filesystem path used by this operation.","items":{"anyOf":[{"maxLength":256,"type":"string"},{"maximum":9007199254740991,"minimum":0,"type":"integer"}]},"maxItems":32,"type":"array"},"source":{"const":"action_json","description":"Value for source.","type":"string"}},"required":["source","path"],"type":"object"}]},"variable":{"description":"Value for variable.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["variable","value"],"type":"object"},"maxItems":32,"type":"array"},"id":{"description":"Value for id.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"max_uses":{"description":"Maximum permitted uses for this operation.","maximum":10000,"minimum":1,"type":"integer"},"priority":{"default":100,"description":"Value for priority.","maximum":1000,"minimum":0,"type":"integer"},"to":{"description":"Value for to.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"trigger":{"description":"Value for trigger.","oneOf":[{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"method":{"description":"Value for method.","maxLength":16,"minLength":1,"type":"string"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"http","description":"Value for protocol.","type":"string"}},"required":["protocol","method","path"],"type":"object"},{"additionalProperties":false,"properties":{"headers":{"additionalProperties":{"maxLength":8192,"pattern":"^[\\\\t\\\\x20-\\\\x7e\\\\x80-\\\\xff]*$","type":"string"},"description":"Value for headers.","propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_connect","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"},{"additionalProperties":false,"properties":{"body":{"anyOf":[{"maxLength":1000000,"type":"string"},{"type":"null"}],"default":null,"description":"Value for body."},"path":{"description":"Local filesystem path used by this operation.","pattern":"^\\\\/.*","type":"string"},"protocol":{"const":"websocket_message","description":"Value for protocol.","type":"string"}},"required":["protocol","path"],"type":"object"}]}},"required":["id","from","to","trigger","actions","max_uses"],"type":"object"},"maxItems":2000,"minItems":1,"type":"array"}},"required":["initial_state","states","transitions","max_transitions"],"type":"object"}},"required":["machine","events"],"type":"object"},"kind":"session","name":"run_replay_machine","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"decisions":{"items":{"additionalProperties":false,"properties":{"event_sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"outcome":{"anyOf":[{"const":"matched","type":"string"},{"enum":["unmatched","invalid_state","guard_failed","transition_exhausted","invalid_capture","unexpected_reconnect","limit_exhausted"],"type":"string"}]},"transition_sequence":{"anyOf":[{"maximum":9007199254740991,"minimum":0,"type":"integer"},{"type":"null"}]}},"required":["event_sequence","outcome","transition_sequence"],"type":"object"},"maxItems":10000,"type":"array"},"final_state":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"initial_state":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"limits":{"additionalProperties":false,"properties":{"configured":{"additionalProperties":false,"properties":{"bytes":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"connections":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"duration_ms":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"messages":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"},"transitions":{"exclusiveMinimum":0,"maximum":9007199254740991,"type":"integer"}},"required":["transitions","connections","messages","bytes","duration_ms"],"type":"object"},"usage":{"additionalProperties":false,"properties":{"admitted_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"connections":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"last_at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"messages":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"offered_events":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"transitions":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["offered_events","admitted_events","transitions","connections","messages","bytes","last_at_ms"],"type":"object"}},"required":["configured","usage"],"type":"object"},"schema_version":{"const":1,"type":"number"},"terminal":{"type":"boolean"},"transition_actions":{"items":{"additionalProperties":false,"properties":{"actions":{"items":{"oneOf":[{"additionalProperties":false,"properties":{"body":{"maxLength":1000000,"type":"string"},"headers":{"additionalProperties":{"maxLength":8192,"type":"string"},"propertyNames":{"maxLength":256,"minLength":1,"pattern":"^[!#$%&\'*+.^_`|~0-9A-Za-z-]+$","type":"string"},"type":"object"},"status":{"maximum":599,"minimum":100,"type":"integer"},"type":{"const":"http_response","type":"string"}},"required":["type","status","headers","body"],"type":"object"},{"additionalProperties":false,"properties":{"data":{"maxLength":1000000,"type":"string"},"type":{"const":"websocket_send","type":"string"}},"required":["type","data"],"type":"object"},{"additionalProperties":false,"properties":{"type":{"const":"disconnect","type":"string"}},"required":["type"],"type":"object"},{"additionalProperties":false,"properties":{"duration_ms":{"maximum":30000,"minimum":0,"type":"integer"},"type":{"const":"delay","type":"string"}},"required":["type","duration_ms"],"type":"object"}]},"maxItems":32,"type":"array"},"transition_id":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["transition_id","actions"],"type":"object"},"maxItems":2000,"type":"array"},"transition_journal":{"items":{"additionalProperties":false,"properties":{"at_ms":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"captured_aliases":{"items":{"additionalProperties":false,"properties":{"name":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"sensitive":{"type":"boolean"}},"required":["name","sensitive"],"type":"object"},"maxItems":32,"type":"array"},"sequence":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"state_after":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"state_before":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"},"transition_id":{"pattern":"^[A-Za-z][A-Za-z0-9_-]{0,63}$","type":"string"}},"required":["sequence","at_ms","transition_id","state_before","state_after","captured_aliases"],"type":"object"},"maxItems":10000,"type":"array"}},"required":["schema_version","initial_state","final_state","terminal","decisions","transition_journal","transition_actions","limits"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Run Replay Machine"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Retain the current canonical Evidence v2 bundle as an immutable session resource. Returns a compact digest summary and exact opaque URI; copy that URI unchanged and call MCP resources/read (Codex: read_mcp_resource) for the full bundle. Repeating an unchanged snapshot is idempotent.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{},"type":"object"},"kind":"session","name":"snapshot_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bundle_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"bundle_uri":{"pattern":"^rea:\\\\/\\\\/evidence-bundle\\\\/[a-f0-9]{64}$","type":"string"},"bundle_version":{"const":2,"type":"number"},"bytes":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"records":{"maximum":9007199254740991,"minimum":0,"type":"integer"},"scope":{"const":"session","type":"string"},"survives_session":{"const":false,"type":"boolean"},"unknowns":{"maximum":9007199254740991,"minimum":0,"type":"integer"}},"required":["bundle_digest","bundle_version","bytes","records","unknowns","scope","survives_session","bundle_uri"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Snapshot Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":true,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Release one immutable session-retained Evidence v2 bundle by exact digest. This is the recovery operation when bounded bundle retention is exhausted; releasing an unknown digest is idempotent and reports released: false.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":true,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"bundle_digest":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}],"properties":{"bundle_digest":{"description":"Value for bundle digest.","pattern":"^[a-f0-9]{64}$","type":"string"}},"required":["bundle_digest"],"type":"object"},"kind":"session","name":"release_evidence_bundle","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"bundle_digest":{"pattern":"^[a-f0-9]{64}$","type":"string"},"released":{"type":"boolean"}},"required":["bundle_digest","released"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Release Evidence Bundle"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Compose the selected document, current address, and containing/current procedure into one provider-neutral result. The result reflects sequential provider observations, not an atomic cursor snapshot; a cursor outside any procedure returns procedure: null. Scalar navigation getters remain available for evaluation and compatibility.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{}],"properties":{"document":{"description":"Exact provider document or program identity.","minLength":1,"type":"string"}},"type":"object"},"kind":"session","name":"get_navigation_context","outputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"document":{"type":"string"},"procedure":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["document","address","procedure"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Get Navigation Context"},{"analysisOperation":null,"annotations":{"destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"description":"Inspect one explicit reproducible address for its analyzed name, containing procedure, regular and inline comments, and matching bookmarks. Each unsupported facet returns a typed unavailable outcome; xrefs, assembly, and pseudocode remain separate bounded follow-ups.","effects":{"accessesNetwork":false,"changesUiState":false,"idempotent":true,"launchesProcess":false,"mayDiscardData":false,"mutatesSession":true,"mutatesTarget":false,"writesFilesystem":false},"inputSchema":{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"examples":[{"address":"0x1000"}],"properties":{"address":{"description":"Value for address.","minLength":1,"type":"string"},"document":{"description":"Exact provider document or program identity.","minLength":1,"type":"string"}},"required":["address"],"type":"object"},"kind":"session","name":"inspect_address_context","outputSchema":{"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"items":{"$ref":"#/$defs/__schema0"},"type":"array"},{"additionalProperties":{"$ref":"#/$defs/__schema0"},"propertyNames":{"type":"string"},"type":"object"}]}},"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"result":{"additionalProperties":false,"properties":{"address":{"type":"string"},"bookmarks":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"items":{"additionalProperties":false,"properties":{"address":{"type":"string"},"name":{"type":"string"}},"required":["address","name"],"type":"object"},"type":"array"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"comment":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"document":{"anyOf":[{"type":"string"},{"type":"null"}]},"inline_comment":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"name":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]},"procedure":{"oneOf":[{"additionalProperties":false,"properties":{"state":{"const":"available","type":"string"},"value":{"$ref":"#/$defs/__schema0"}},"required":["state","value"],"type":"object"},{"additionalProperties":false,"properties":{"reason":{"type":"string"},"remediation":{"type":"string"},"state":{"const":"unavailable","type":"string"}},"required":["state","reason","remediation"],"type":"object"}]}},"required":["address","document","name","procedure","comment","inline_comment","bookmarks"],"type":"object"}},"required":["result"],"type":"object"},"requiresSession":true,"title":"Inspect Address Context"}]}'; const generatedPayload: unknown = JSON.parse(GENERATED_PAYLOAD_JSON); if (!isGeneratedPayload(generatedPayload)) throw new TypeError("Generated MCP catalog payload is invalid"); diff --git a/src/process/BoundedFileBytes.ts b/src/process/BoundedFileBytes.ts new file mode 100644 index 0000000000..93433b41c7 --- /dev/null +++ b/src/process/BoundedFileBytes.ts @@ -0,0 +1,25 @@ +import type { FileHandle } from "node:fs/promises"; + +/** Read through EOF, returning undefined on overflow; consume at most maxBytes + 1 bytes without closing the handle. */ +export const readBoundedFileBytes = async ( + handle: FileHandle, + maxBytes: number, +): Promise => { + if (!Number.isSafeInteger(maxBytes) || maxBytes < 0) + throw new RangeError("File byte limit must be a nonnegative safe integer"); + const chunks: Buffer[] = []; + const buffer = Buffer.allocUnsafe(Math.min(64 * 1_024, maxBytes + 1)); + let total = 0; + for (;;) { + const { bytesRead } = await handle.read( + buffer, + 0, + Math.min(buffer.length, maxBytes - total + 1), + null, + ); + if (bytesRead === 0) return Buffer.concat(chunks, total); + total += bytesRead; + if (total > maxBytes) return undefined; + chunks.push(Buffer.from(buffer.subarray(0, bytesRead))); + } +}; diff --git a/src/reference/ReferenceSourceReader.ts b/src/reference/ReferenceSourceReader.ts index 8d5bdc84da..b48ff969ea 100644 --- a/src/reference/ReferenceSourceReader.ts +++ b/src/reference/ReferenceSourceReader.ts @@ -1,6 +1,6 @@ +import { compareUnicodeCodePoints } from "../domain/unicodeCodePointOrder.js"; import { err, ok } from "../domain/result.js"; import { traverseDirectory } from "./ReferenceSourceReaderEntries.js"; -import { compareNames } from "./ReferenceSourceReaderPaths.js"; import { type ReferenceSourceLimits, type ReferenceSourceReaderOptions, @@ -62,7 +62,9 @@ export const readReferenceSource = async ( }; const traversal = await traverse(state); if (!traversal.ok) return traversal; - state.entries.sort((left, right) => compareNames(left.path, right.path)); + state.entries.sort((left, right) => + compareUnicodeCodePoints(left.path, right.path), + ); return ok({ root: canonicalRoot, entries: state.entries, diff --git a/src/reference/ReferenceSourceReaderEntries.ts b/src/reference/ReferenceSourceReaderEntries.ts index d2453bc607..3516ef750a 100644 --- a/src/reference/ReferenceSourceReaderEntries.ts +++ b/src/reference/ReferenceSourceReaderEntries.ts @@ -1,12 +1,10 @@ import { readdir, readlink, realpath } from "node:fs/promises"; import { dirname, join, resolve } from "node:path"; +import { compareUnicodeCodePoints } from "../domain/unicodeCodePointOrder.js"; import { entryFailure, safeSize } from "./ReferenceSourceReaderErrors.js"; -import { - compareNames, - pathFromRoot, - withinRoot, -} from "./ReferenceSourceReaderPaths.js"; +import { isPathWithinRoot } from "../domain/localPath.js"; +import { pathFromRoot } from "./ReferenceSourceReaderPaths.js"; import { readStableFile } from "./ReferenceSourceReaderFile.js"; import { isAborted, @@ -97,7 +95,10 @@ const readDirectoryNames = async ( | { readonly ok: false; readonly message: string } > => { try { - return { ok: true, value: (await readdir(path)).sort(compareNames) }; + return { + ok: true, + value: (await readdir(path)).sort(compareUnicodeCodePoints), + }; } catch { return { ok: false, message: "Directory could not be read" }; } @@ -236,7 +237,7 @@ const describeSymlink = async ( try { const rawTarget = await readlink(absolute); const lexicalTarget = resolve(dirname(absolute), rawTarget); - if (!withinRoot(root, lexicalTarget)) + if (!isPathWithinRoot(root, lexicalTarget)) return { status: "read", kind: "symlink", @@ -246,7 +247,7 @@ const describeSymlink = async ( }; try { const canonicalTarget = await realpath(lexicalTarget); - return withinRoot(root, canonicalTarget) + return isPathWithinRoot(root, canonicalTarget) ? { status: "read", kind: "symlink", diff --git a/src/reference/ReferenceSourceReaderFile.ts b/src/reference/ReferenceSourceReaderFile.ts index 64bffdb389..d49ba946ff 100644 --- a/src/reference/ReferenceSourceReaderFile.ts +++ b/src/reference/ReferenceSourceReaderFile.ts @@ -19,9 +19,7 @@ const READ_CHUNK_BYTES = 64 * 1024; type PreparedFileRead = | { readonly status: "ready"; - readonly handle: FileHandle; readonly before: BigStats; - readonly parentBefore: { readonly ok: true; readonly stats: BigStats }; } | { readonly status: "failed"; readonly entry: ReferenceSourceEntry }; @@ -43,30 +41,10 @@ type FinalizeFileReadRequest = { const prepareFileRead = async ( request: StableFileRequest, + handle: FileHandle, ): Promise => { - const { root, rootIdentity, absolute, path, expected, signal } = request; - const parentBefore = await validateDirectory( - root, - rootIdentity, - dirname(absolute), - ); - if (!parentBefore.ok) - return { - status: "failed", - entry: entryFailure( - path, - "file", - parentBefore.code, - parentBefore.message, - safeSize(expected.size), - ), - }; - const handle = await open( - absolute, - constants.O_RDONLY | constants.O_NOFOLLOW, - ); + const { path, expected, signal } = request; if (isAborted(signal)) { - await handle.close().catch(() => undefined); return { status: "failed", entry: entryFailure( @@ -80,7 +58,6 @@ const prepareFileRead = async ( } const before = await handle.stat({ bigint: true }); if (!sameFile(expected, before)) { - await handle.close().catch(() => undefined); return { status: "failed", entry: entryFailure( @@ -92,7 +69,7 @@ const prepareFileRead = async ( ), }; } - return { status: "ready", handle, before, parentBefore }; + return { status: "ready", before }; }; const readFileContents = async (request: { @@ -211,9 +188,22 @@ export const readStableFile = async ( request; let handle: FileHandle | undefined; try { - const prepared = await prepareFileRead(request); + const parentBefore = await validateDirectory( + root, + rootIdentity, + dirname(absolute), + ); + if (!parentBefore.ok) + return entryFailure( + path, + "file", + parentBefore.code, + parentBefore.message, + safeSize(expected.size), + ); + handle = await open(absolute, constants.O_RDONLY | constants.O_NOFOLLOW); + const prepared = await prepareFileRead(request, handle); if (prepared.status === "failed") return prepared.entry; - handle = prepared.handle; const contents = await readFileContents({ handle, path, @@ -228,7 +218,7 @@ export const readStableFile = async ( path, handle, before: prepared.before, - parentBefore: prepared.parentBefore, + parentBefore, chunks: contents.chunks, total: contents.total, }); diff --git a/src/reference/ReferenceSourceReaderPaths.ts b/src/reference/ReferenceSourceReaderPaths.ts index 968d98e821..7cb903e8ff 100644 --- a/src/reference/ReferenceSourceReaderPaths.ts +++ b/src/reference/ReferenceSourceReaderPaths.ts @@ -1,27 +1,10 @@ -import { isAbsolute, relative, sep } from "node:path"; +import { relative, sep } from "node:path"; -export const withinRoot = (root: string, path: string): boolean => { - const value = relative(root, path); - return ( - value === "" || - (value !== ".." && !value.startsWith(`..${sep}`) && !isAbsolute(value)) - ); -}; +import { isPathWithinRoot } from "../domain/localPath.js"; export const pathFromRoot = (root: string, path: string): string => { const value = relative(root, path); - return withinRoot(root, path) + return isPathWithinRoot(root, path) ? value.split(sep).join("/") || "." : ""; }; - -export const compareNames = (left: string, right: string): number => { - const leftPoints = [...left].map((value) => value.codePointAt(0) ?? 0); - const rightPoints = [...right].map((value) => value.codePointAt(0) ?? 0); - const length = Math.min(leftPoints.length, rightPoints.length); - for (let index = 0; index < length; index += 1) { - const difference = (leftPoints[index] ?? 0) - (rightPoints[index] ?? 0); - if (difference !== 0) return difference; - } - return leftPoints.length - rightPoints.length; -}; diff --git a/src/reference/ReferenceSourceReaderValidate.ts b/src/reference/ReferenceSourceReaderValidate.ts index 45986b678f..bedddade42 100644 --- a/src/reference/ReferenceSourceReaderValidate.ts +++ b/src/reference/ReferenceSourceReaderValidate.ts @@ -3,7 +3,7 @@ import { lstat, realpath } from "node:fs/promises"; import { err, ok } from "../domain/result.js"; import { cancelled, failure } from "./ReferenceSourceReaderErrors.js"; -import { withinRoot } from "./ReferenceSourceReaderPaths.js"; +import { isPathWithinRoot } from "../domain/localPath.js"; import { type BigStats, type ReferenceSourceFailureCode, @@ -62,7 +62,7 @@ export const validateDirectory = async ( message: "Directory identity changed", }; const canonical = await realpath(path); - if (canonical !== path || !withinRoot(root, canonical)) + if (canonical !== path || !isPathWithinRoot(root, canonical)) return { ok: false, code: "changed", diff --git a/src/replay/LinuxJavaScriptReplayRunner.ts b/src/replay/LinuxJavaScriptReplayRunner.ts index 89efab7921..554622fe68 100644 --- a/src/replay/LinuxJavaScriptReplayRunner.ts +++ b/src/replay/LinuxJavaScriptReplayRunner.ts @@ -1,3 +1,4 @@ +import { temporaryFilterHandle } from "./ReplaySeccompFile.js"; import { spawn } from "node:child_process"; import { randomBytes } from "node:crypto"; import { readFile } from "node:fs/promises"; @@ -14,7 +15,6 @@ import { resolveLinuxRuntimeClosure } from "./LinuxRuntimeClosure.js"; import { assertRuntimeCommitment, systemdArguments, - temporaryFilterHandle, type RuntimeFile, } from "./LinuxJavaScriptReplaySandbox.js"; import { @@ -56,39 +56,42 @@ export class LinuxJavaScriptReplayRunner implements JavaScriptReplayRunner { const closure = await validateReplayCommitments(prepared, policy); const encoded = buildWorkerPayload(prepared); const filter = await temporaryFilterHandle(); - const replayProcess = launchReplayProcess({ - prepared, - policy, - encoded, - closure, - filterPath: filter.path, - unit, - signal, - }); try { - const collected = await replayProcess.completion; - if (replayProcess.terminationRequest !== undefined) - await replayProcess.terminationRequest; - const unitResult = await observeUnitResult(policy.systemctlPath, unit); - const cleanup = await observeCleanup(policy.systemctlPath, unit); - return resolveReplayResult({ + const replayProcess = launchReplayProcess({ prepared, - collected, - unitResult, - cleanup, - termination: replayProcess.termination, + policy, + encoded, + closure, + filterPath: filter.path, + unit, + signal, }); - } finally { - signal?.removeEventListener("abort", replayProcess.terminate); - if (replayProcess.timeout !== undefined) - clearTimeout(replayProcess.timeout); - if ( - replayProcess.child !== undefined && - replayProcess.child.exitCode === null - ) { - replayProcess.requestTermination(); - await replayProcess.terminationRequest; + try { + const collected = await replayProcess.completion; + if (replayProcess.terminationRequest !== undefined) + await replayProcess.terminationRequest; + const unitResult = await observeUnitResult(policy.systemctlPath, unit); + const cleanup = await observeCleanup(policy.systemctlPath, unit); + return resolveReplayResult({ + prepared, + collected, + unitResult, + cleanup, + termination: replayProcess.termination, + }); + } finally { + signal?.removeEventListener("abort", replayProcess.terminate); + if (replayProcess.timeout !== undefined) + clearTimeout(replayProcess.timeout); + if ( + replayProcess.child !== undefined && + replayProcess.child.exitCode === null + ) { + replayProcess.requestTermination(); + await replayProcess.terminationRequest; + } } + } finally { await filter.close(); } } diff --git a/src/replay/LinuxJavaScriptReplaySandbox.ts b/src/replay/LinuxJavaScriptReplaySandbox.ts index 7f774367f3..9204cdf822 100644 --- a/src/replay/LinuxJavaScriptReplaySandbox.ts +++ b/src/replay/LinuxJavaScriptReplaySandbox.ts @@ -1,4 +1,3 @@ -import { open } from "node:fs/promises"; import { dirname } from "node:path"; import { @@ -6,7 +5,6 @@ import { type EnabledJavaScriptReplayPolicy, type PreparedReplayPlan, } from "../application/JavaScriptReplayPlanning.js"; -import { buildLinuxX64ReplaySeccomp } from "./LinuxSeccompPolicy.js"; import { resolveLinuxRuntimeClosure } from "./LinuxRuntimeClosure.js"; export type RuntimeFile = Awaited< @@ -38,24 +36,6 @@ export const assertRuntimeCommitment = ( throw new TypeError("Replay runtime closure changed after approval"); }; -export const temporaryFilterHandle = async () => { - const { mkdtemp, writeFile, rm } = await import("node:fs/promises"); - const { tmpdir } = await import("node:os"); - const { join } = await import("node:path"); - const directory = await mkdtemp(join(tmpdir(), "rea-replay-filter-")); - const path = join(directory, "seccomp.bpf"); - await writeFile(path, buildLinuxX64ReplaySeccomp(), { mode: 0o600 }); - const handle = await open(path, "r"); - return { - path, - handle, - close: async () => { - await handle.close(); - await rm(directory, { recursive: true, force: true }); - }, - }; -}; - export const systemdArguments = ( options: SandboxArgumentsOptions, ): string[] => { diff --git a/src/replay/ReplaySeccompFile.ts b/src/replay/ReplaySeccompFile.ts new file mode 100644 index 0000000000..b89e34c847 --- /dev/null +++ b/src/replay/ReplaySeccompFile.ts @@ -0,0 +1,29 @@ +import { mkdtemp, open, rm, writeFile } from "node:fs/promises"; +import { tmpdir } from "node:os"; +import { join } from "node:path"; + +import { buildLinuxX64ReplaySeccomp } from "./LinuxSeccompPolicy.js"; + +/** Own a private seccomp file and descriptor until probe or execution cleanup. */ +export const temporaryFilterHandle = async () => { + const directory = await mkdtemp(join(tmpdir(), "rea-replay-filter-")); + const path = join(directory, "seccomp.bpf"); + try { + await writeFile(path, buildLinuxX64ReplaySeccomp(), { mode: 0o600 }); + const handle = await open(path, "r"); + return { + path, + handle, + close: async () => { + try { + await handle.close(); + } finally { + await rm(directory, { recursive: true, force: true }); + } + }, + }; + } catch (cause: unknown) { + await rm(directory, { recursive: true, force: true }); + throw cause; + } +}; diff --git a/src/replay/SystemJavaScriptReplayHost.ts b/src/replay/SystemJavaScriptReplayHost.ts index 2ec6c521e6..e000200ee6 100644 --- a/src/replay/SystemJavaScriptReplayHost.ts +++ b/src/replay/SystemJavaScriptReplayHost.ts @@ -1,15 +1,6 @@ +import { temporaryFilterHandle } from "./ReplaySeccompFile.js"; import { constants } from "node:fs"; -import { - mkdtemp, - open, - readFile, - realpath, - rm, - stat, - writeFile, -} from "node:fs/promises"; -import { tmpdir } from "node:os"; -import { join } from "node:path"; +import { open, readFile, realpath, stat } from "node:fs/promises"; import { fileURLToPath } from "node:url"; import { spawn, type StdioOptions } from "node:child_process"; @@ -20,12 +11,11 @@ import type { ReplaySourceBytes, } from "../application/JavaScriptReplayPlanning.js"; import { digestBytes } from "../application/JavaScriptReplayPlanning.js"; -import { - buildLinuxX64ReplaySeccomp, - linuxX64ReplaySeccompDigest, -} from "./LinuxSeccompPolicy.js"; +import { linuxX64ReplaySeccompDigest } from "./LinuxSeccompPolicy.js"; import { resolveLinuxRuntimeClosure } from "./LinuxRuntimeClosure.js"; +import { readBoundedFileBytes } from "../process/BoundedFileBytes.js"; + const VERSION_OUTPUT_LIMIT = 16 * 1024; /** Production planning host for descriptor-backed reads and fail-closed probes. */ @@ -45,7 +35,11 @@ export class SystemJavaScriptReplayHost implements JavaScriptReplayHost { throw new RangeError( `Replay source exceeds its declared limit: ${canonicalPath}`, ); - const bytes = await handle.readFile(); + const bytes = await readBoundedFileBytes(handle, maximumBytes); + if (bytes === undefined) + throw new RangeError( + `Replay source exceeds its declared limit: ${canonicalPath}`, + ); return { canonicalPath, bytes }; } finally { await handle.close(); @@ -97,10 +91,7 @@ export class SystemJavaScriptReplayHost implements JavaScriptReplayHost { .length === 0 ) throw new TypeError("Controlled replay requires delegated cgroup v2"); - const directory = await mkdtemp(join(tmpdir(), "rea-replay-probe-")); - const filterPath = join(directory, "seccomp.bpf"); - await writeFile(filterPath, buildLinuxX64ReplaySeccomp(), { mode: 0o600 }); - const filter = await open(filterPath, "r"); + const filter = await temporaryFilterHandle(); try { await run( policy.bubblewrapPath, @@ -130,7 +121,7 @@ export class SystemJavaScriptReplayHost implements JavaScriptReplayHost { "--", "/usr/bin/true", ], - ["ignore", "pipe", "pipe", filter.fd], + ["ignore", "pipe", "pipe", filter.handle.fd], ); await runExpectFailure( policy.bubblewrapPath, @@ -162,7 +153,7 @@ export class SystemJavaScriptReplayHost implements JavaScriptReplayHost { "--mount", "/usr/bin/true", ], - ["ignore", "pipe", "pipe", filter.fd], + ["ignore", "pipe", "pipe", filter.handle.fd], ); await run(policy.systemdRunPath, [ "--user", @@ -178,7 +169,6 @@ export class SystemJavaScriptReplayHost implements JavaScriptReplayHost { ]); } finally { await filter.close(); - await rm(directory, { recursive: true, force: true }); } } } diff --git a/src/server/permissionFailure.ts b/src/server/permissionFailure.ts deleted file mode 100644 index 061abd14d9..0000000000 --- a/src/server/permissionFailure.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { PermissionAuthority } from "../application/PermissionAuthority.js"; -import { - AnalysisProtocolError, - PermissionRequiredError, - type AnalysisError, -} from "../domain/errors.js"; -import { err, type Result } from "../domain/result.js"; - -/** Preserve a typed permission denial or contain an unexpected authority error. */ -export const permissionFailure = ( - failure: Awaited>, -): Result => { - if (failure.ok) - return err(new AnalysisProtocolError("Expected a denied permission")); - return err( - failure.error instanceof PermissionRequiredError - ? failure.error - : new AnalysisProtocolError(failure.error.message, { - cause: failure.error, - }), - ); -}; diff --git a/src/server/registerApplicationTools/characterization.ts b/src/server/registerApplicationTools/characterization.ts index 0bba0980eb..1be1ac2888 100644 --- a/src/server/registerApplicationTools/characterization.ts +++ b/src/server/registerApplicationTools/characterization.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { @@ -14,7 +15,7 @@ import { mcpProgressReporter } from "../mcpProgress.js"; import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordSources } from "./helpers.js"; + import type { ApplicationToolRegistration } from "./types.js"; const prepareContract = applicationToolContract( @@ -79,7 +80,10 @@ export const registerCharacterizationTools = ( output.replay.evidence, output.evidence, ].map((item) => parseEvidence(item)); - const recorded = recordSources(options.recordEvidence, sources); + const recorded = recordSessionEvidenceSources( + options.recordEvidence, + sources, + ); if (!recorded.ok) return toCallToolResult(recorded, executeContract); return toCallToolResult(result, executeContract, { evidenceResourcesAvailable: options.recordEvidence !== undefined, diff --git a/src/server/registerApplicationTools/compareExportShapes.ts b/src/server/registerApplicationTools/compareExportShapes.ts index b51eb65de4..b2c2397db0 100644 --- a/src/server/registerApplicationTools/compareExportShapes.ts +++ b/src/server/registerApplicationTools/compareExportShapes.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { resolveCompareJavaScriptExportShapesRequestValidated } from "../../application/ApplicationWorkflowEvidenceResolver.js"; @@ -7,7 +8,7 @@ import { javaScriptExportShapeComparisonResultSchema } from "../../domain/javasc import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const contract = applicationToolContract("compare_javascript_export_shapes"); @@ -31,7 +32,7 @@ export const registerCompareJavaScriptExportShapesTool = ( Promise.resolve(compareJavaScriptExportShapesEvidenceValidated(parsed)), ); if (!result.ok) return toCallToolResult(result, contract); - const recorded = recordSources(options.recordEvidence, [ + const recorded = recordSessionEvidenceSources(options.recordEvidence, [ parsed.left, parsed.right, ]); diff --git a/src/server/registerApplicationTools/compareSourceToBundle.ts b/src/server/registerApplicationTools/compareSourceToBundle.ts index 5796e2a745..a9948bb81a 100644 --- a/src/server/registerApplicationTools/compareSourceToBundle.ts +++ b/src/server/registerApplicationTools/compareSourceToBundle.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { resolveCompareSourceToBundleRequestValidated } from "../../application/ApplicationWorkflowEvidenceResolver.js"; @@ -7,7 +8,7 @@ import { sourceToBundleComparisonResultSchema } from "../../domain/sourceToBundl import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const contract = applicationToolContract("compare_source_to_bundle"); @@ -30,7 +31,7 @@ export const registerCompareSourceToBundleTool = ( Promise.resolve(compareSourceToBundleEvidenceValidated(resolved.value)), ); if (!result.ok) return toCallToolResult(result, contract); - const recorded = recordSources(options.recordEvidence, [ + const recorded = recordSessionEvidenceSources(options.recordEvidence, [ resolved.value.application, ]); if (!recorded.ok) return toCallToolResult(recorded, contract); diff --git a/src/server/registerApplicationTools/compareVersions.ts b/src/server/registerApplicationTools/compareVersions.ts index b3e1a37b51..661e8adbad 100644 --- a/src/server/registerApplicationTools/compareVersions.ts +++ b/src/server/registerApplicationTools/compareVersions.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { resolveCompareApplicationVersionsRequestValidated } from "../../application/ApplicationWorkflowEvidenceResolver.js"; @@ -7,7 +8,7 @@ import { applicationVersionComparisonResultSchema } from "../../domain/javascrip import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const compareContract = applicationToolContract("compare_application_versions"); @@ -40,7 +41,10 @@ export const registerCompareApplicationVersionsTool = ( ...parsed.left_native_observations, ...parsed.right_native_observations, ]; - const recorded = recordSources(options.recordEvidence, sources); + const recorded = recordSessionEvidenceSources( + options.recordEvidence, + sources, + ); if (!recorded.ok) return toCallToolResult(recorded, compareContract); const comparison = applicationVersionComparisonResultSchema.parse( result.value.normalized_result, diff --git a/src/server/registerApplicationTools/controlledReplay.ts b/src/server/registerApplicationTools/controlledReplay.ts index b9fb348b4b..c71888ee81 100644 --- a/src/server/registerApplicationTools/controlledReplay.ts +++ b/src/server/registerApplicationTools/controlledReplay.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { runControlledReplayValidated } from "../../application/JavaScriptReplayService.js"; @@ -8,7 +9,7 @@ import { mcpProgressReporter } from "../mcpProgress.js"; import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordSources } from "./helpers.js"; + import type { ApplicationToolRegistration } from "./types.js"; const replayContract = applicationToolContract("run_controlled_replay"); @@ -34,7 +35,7 @@ export const registerControlledReplayTool = ( if (!result.ok) return toCallToolResult(result, replayContract); const output = controlledReplayOutputSchema.parse(result.value); if (output.phase === "execute") { - const sourcesRecorded = recordSources( + const sourcesRecorded = recordSessionEvidenceSources( options.recordEvidence, output.source_evidence.map((item) => parseEvidence(item)), ); diff --git a/src/server/registerApplicationTools/helpers.ts b/src/server/registerApplicationTools/helpers.ts index ac63b038b3..87ff725e2e 100644 --- a/src/server/registerApplicationTools/helpers.ts +++ b/src/server/registerApplicationTools/helpers.ts @@ -9,17 +9,6 @@ export const coverageWorkspaceUri = (workspace: { }): string => `rea://reconstruction-coverage/${workspace.workspace_id}/revision/${String(workspace.revision)}`; -export const recordSources = ( - recordEvidence: ApplicationToolRegistration["recordEvidence"], - sources: readonly Evidence[], -) => { - for (const source of sources) { - const recorded = recordEvidence?.(source); - if (recorded !== undefined && !recorded.ok) return recorded; - } - return { ok: true as const, value: null }; -}; - export const recordResult = ( options: ApplicationToolRegistration, contract: (typeof APPLICATION_TOOL_CONTRACTS)[number], diff --git a/src/server/registerApplicationTools/obligationLedger.ts b/src/server/registerApplicationTools/obligationLedger.ts index e881647edb..008ddb4eda 100644 --- a/src/server/registerApplicationTools/obligationLedger.ts +++ b/src/server/registerApplicationTools/obligationLedger.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { @@ -8,7 +9,7 @@ import { applicationToolContract } from "../../contracts/applicationToolContract import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const contract = applicationToolContract( @@ -32,7 +33,7 @@ export const registerReconstructionObligationLedgerTool = ( ), ); if (!result.ok) return toCallToolResult(result, contract); - const recorded = recordSources( + const recorded = recordSessionEvidenceSources( options.recordEvidence, resolved.value.evidence_bundle.records, ); diff --git a/src/server/registerApplicationTools/readiness.ts b/src/server/registerApplicationTools/readiness.ts index 1e92564263..eeb01e8da7 100644 --- a/src/server/registerApplicationTools/readiness.ts +++ b/src/server/registerApplicationTools/readiness.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { @@ -9,7 +10,7 @@ import { reconstructionReadinessReportSchema } from "../../domain/reconstruction import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordSources } from "./helpers.js"; + import type { ApplicationToolRegistration } from "./types.js"; const contract = applicationToolContract("evaluate_reconstruction_readiness"); @@ -31,7 +32,7 @@ export const registerReconstructionReadinessTool = ( ), ); if (!result.ok) return toCallToolResult(result, contract); - const recorded = recordSources( + const recorded = recordSessionEvidenceSources( options.recordEvidence, resolved.value.evidence_bundle.records, ); diff --git a/src/server/registerApplicationTools/traceFeature.ts b/src/server/registerApplicationTools/traceFeature.ts index a300b535cc..0eafce254d 100644 --- a/src/server/registerApplicationTools/traceFeature.ts +++ b/src/server/registerApplicationTools/traceFeature.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { resolveTraceApplicationFeatureRequestValidated } from "../../application/ApplicationWorkflowEvidenceResolver.js"; @@ -6,7 +7,7 @@ import { applicationToolContract } from "../../contracts/applicationToolContract import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const traceContract = applicationToolContract("trace_application_feature"); @@ -33,7 +34,10 @@ export const registerTraceFeatureTool = ( ); if (!result.ok) return toCallToolResult(result, traceContract); const sources = [parsed.application, ...parsed.native_observations]; - const recorded = recordSources(options.recordEvidence, sources); + const recorded = recordSessionEvidenceSources( + options.recordEvidence, + sources, + ); if (!recorded.ok) return toCallToolResult(recorded, traceContract); return recordResult(options, traceContract, result.value); }, diff --git a/src/server/registerApplicationTools/traceSemantics.ts b/src/server/registerApplicationTools/traceSemantics.ts index 2b54a16757..af81d2eb79 100644 --- a/src/server/registerApplicationTools/traceSemantics.ts +++ b/src/server/registerApplicationTools/traceSemantics.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { resolveTraceJavaScriptSemanticsRequestValidated } from "../../application/ApplicationWorkflowEvidenceResolver.js"; @@ -6,7 +7,7 @@ import { applicationToolContract } from "../../contracts/applicationToolContract import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; -import { recordResult, recordSources } from "./helpers.js"; +import { recordResult } from "./helpers.js"; import type { ApplicationToolRegistration } from "./types.js"; const contract = applicationToolContract("trace_javascript_semantics"); @@ -31,7 +32,7 @@ export const registerTraceJavaScriptSemanticsTool = ( ), ); if (!result.ok) return toCallToolResult(result, contract); - const recorded = recordSources(options.recordEvidence, [ + const recorded = recordSessionEvidenceSources(options.recordEvidence, [ resolved.value.application, ]); if (!recorded.ok) return toCallToolResult(recorded, contract); diff --git a/src/server/registerCloseLifecycleTool.ts b/src/server/registerCloseLifecycleTool.ts index f0334b9acc..986178cf87 100644 --- a/src/server/registerCloseLifecycleTool.ts +++ b/src/server/registerCloseLifecycleTool.ts @@ -1,11 +1,11 @@ import { writeAnalysisSnapshot } from "../application/AnalysisSnapshotFiles.js"; -import { ok } from "../domain/result.js"; +import { err, ok } from "../domain/result.js"; import { reportLifecycleEnd, reportLifecycleStart, } from "./lifecycleProgress.js"; import { mcpProgressReporter } from "./mcpProgress.js"; -import { permissionFailure } from "./permissionFailure.js"; +import { projectPermissionFailure } from "../application/PermissionFailure.js"; import type { LifecycleToolRegistration } from "./registerSessionTools.js"; import { logToolExecution } from "./toolLogging.js"; import { toolRegistrationOptions } from "./toolRegistrationOptions.js"; @@ -47,7 +47,10 @@ export const registerCloseLifecycleTool = ({ "write", ); if (!authorized.ok) - return toCallToolResult(permissionFailure(authorized), closeContract); + return toCallToolResult( + err(projectPermissionFailure(authorized.error)), + closeContract, + ); } const snapshot = session.exportAnalysisSnapshot(); if (!snapshot.ok) return toCallToolResult(snapshot, closeContract); diff --git a/src/server/registerEvidenceResources.ts b/src/server/registerEvidenceResources.ts index a4b63d5f1d..176b3fc8e5 100644 --- a/src/server/registerEvidenceResources.ts +++ b/src/server/registerEvidenceResources.ts @@ -11,6 +11,7 @@ import type { JsonValue } from "../domain/jsonValue.js"; import { registerJavaScriptApplicationGraphResource } from "./registerJavaScriptApplicationGraphResource.js"; import { registerReconstructionObligationLedgerResource } from "./registerReconstructionObligationLedgerResource.js"; import { registerReconstructionReadinessResource } from "./registerReconstructionReadinessResource.js"; +import { jsonResource } from "./resourceResult.js"; /** Expose immutable session-owned Evidence v2 records as MCP resources. */ export const registerEvidenceResources = ( @@ -118,15 +119,7 @@ const registerSessionEvidenceResource = ( throw new ResourceNotFoundError(uri.href); const evidence = session.evidenceById(evidenceId); if (evidence === undefined) throw new ResourceNotFoundError(uri.href); - return { - contents: [ - { - uri: uri.href, - mimeType: "application/json", - text: JSON.stringify(evidence, null, 2), - }, - ], - }; + return jsonResource(uri.href, evidence); }, ); }; @@ -398,16 +391,6 @@ const pick = ( return entries.length === 0 ? undefined : Object.fromEntries(entries); }; -const jsonResource = (uri: string, value: JsonValue) => ({ - contents: [ - { - uri, - mimeType: "application/json" as const, - text: JSON.stringify(value, null, 2), - }, - ], -}); - const ARTIFACT_COLLECTIONS = new Set(["nodes", "occurrences", "edges"]); const objectValue = ( diff --git a/src/server/registerEvidenceTools.ts b/src/server/registerEvidenceTools.ts index 2b968afd14..7e26eb3f84 100644 --- a/src/server/registerEvidenceTools.ts +++ b/src/server/registerEvidenceTools.ts @@ -1,3 +1,4 @@ +import { projectPermissionFailure } from "../application/PermissionFailure.js"; import type { McpServer } from "@modelcontextprotocol/server"; import type { @@ -8,10 +9,6 @@ import type { BinarySessionPort } from "../application/BinarySession.js"; import type { PermissionAuthority } from "../application/PermissionAuthority.js"; import type { ToolContract } from "../contracts/toolContracts.js"; import type { BinaryTarget } from "../domain/binaryTarget.js"; -import { - AnalysisProtocolError, - PermissionRequiredError, -} from "../domain/errors.js"; import { createEvidence, type Evidence } from "../domain/evidence.js"; import { jsonObjectSchema } from "../domain/jsonValue.js"; import { err } from "../domain/result.js"; @@ -61,13 +58,7 @@ export const registerEvidenceTools = ( ); if (!authorized.ok) return toCallToolResult( - err( - authorized.error instanceof PermissionRequiredError - ? authorized.error - : new AnalysisProtocolError(authorized.error.message, { - cause: authorized.error, - }), - ), + err(projectPermissionFailure(authorized.error)), contract, ); } diff --git a/src/server/registerJavaScriptApplicationGraphResource.ts b/src/server/registerJavaScriptApplicationGraphResource.ts index 3cc3d7a67c..4732483e03 100644 --- a/src/server/registerJavaScriptApplicationGraphResource.ts +++ b/src/server/registerJavaScriptApplicationGraphResource.ts @@ -6,6 +6,7 @@ import { import type { BinarySessionPort } from "../application/BinarySessionPort.js"; import { javascriptApplicationAnalysisResultSchema } from "../domain/javascriptApplicationAnalysis.js"; +import { jsonResource } from "./resourceResult.js"; /** Register deterministic pages over one authenticated JavaScript graph. */ export const registerJavaScriptApplicationGraphResource = ( @@ -50,29 +51,17 @@ export const registerJavaScriptApplicationGraphResource = ( const values = analysis.data.graph[collection]; const items = values.slice(offset, offset + limit); const nextOffset = offset + items.length; - return { - contents: [ - { - uri: uri.href, - mimeType: "application/json" as const, - text: JSON.stringify( - { - evidence_id: evidence.evidence_id, - graph_id: analysis.data.graph.graph_id, - collection, - items, - offset, - limit, - total: values.length, - next_offset: nextOffset < values.length ? nextOffset : null, - has_more: nextOffset < values.length, - }, - null, - 2, - ), - }, - ], - }; + return jsonResource(uri.href, { + evidence_id: evidence.evidence_id, + graph_id: analysis.data.graph.graph_id, + collection, + items, + offset, + limit, + total: values.length, + next_offset: nextOffset < values.length ? nextOffset : null, + has_more: nextOffset < values.length, + }); }, ); }; diff --git a/src/server/registerManagedWorkflowTools/compareManagedMembers.ts b/src/server/registerManagedWorkflowTools/compareManagedMembers.ts index 943dc0761b..afff19eb10 100644 --- a/src/server/registerManagedWorkflowTools/compareManagedMembers.ts +++ b/src/server/registerManagedWorkflowTools/compareManagedMembers.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { compareManagedMembersEvidenceValidated } from "../../application/ManagedMemberComparisonService.js"; @@ -6,7 +7,7 @@ import { logToolExecution } from "../toolLogging.js"; import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; import { managedWorkflowContract } from "./contract.js"; -import { recordManagedSources, resolveManagedEvidence } from "./evidence.js"; +import { resolveManagedEvidence } from "./evidence.js"; import type { ManagedWorkflowToolRegistration } from "./types.js"; const compareContract = managedWorkflowContract("compare_managed_members"); @@ -40,7 +41,7 @@ export const registerCompareManagedMembers = ( () => Promise.resolve(compareManagedMembersEvidenceValidated(parsed)), ); if (!result.ok) return toCallToolResult(result, compareContract); - const recorded = recordManagedSources(options.recordEvidence, [ + const recorded = recordSessionEvidenceSources(options.recordEvidence, [ parsed.left, parsed.right, ]); diff --git a/src/server/registerManagedWorkflowTools/evidence.ts b/src/server/registerManagedWorkflowTools/evidence.ts index a67a5a36b7..aaf2a8ffd2 100644 --- a/src/server/registerManagedWorkflowTools/evidence.ts +++ b/src/server/registerManagedWorkflowTools/evidence.ts @@ -3,7 +3,6 @@ import type { Evidence } from "../../domain/evidence.js"; import type { EvidenceIntegrityError } from "../../domain/errors.js"; import type { Result } from "../../domain/result.js"; import { resolveSessionEvidenceIds } from "../sessionEvidence.js"; -import type { ManagedWorkflowToolRegistration } from "./types.js"; export const resolveManagedEvidence = ( session: BinarySessionPort, @@ -53,17 +52,6 @@ export const resolveNativeEvidence = ( return { ok: true, value: records }; }; -export const recordManagedSources = ( - recordEvidence: ManagedWorkflowToolRegistration["recordEvidence"], - sources: readonly Evidence[], -) => { - for (const source of sources) { - const recorded = recordEvidence?.(source); - if (recorded !== undefined && !recorded.ok) return recorded; - } - return { ok: true as const, value: null }; -}; - export const sourceEvidence = (input: { readonly managed_artifact?: Evidence | undefined; readonly managed_members?: Evidence | undefined; diff --git a/src/server/registerManagedWorkflowTools/projectManagedApplicationGraph.ts b/src/server/registerManagedWorkflowTools/projectManagedApplicationGraph.ts index 7b2953521a..5e84d1c05d 100644 --- a/src/server/registerManagedWorkflowTools/projectManagedApplicationGraph.ts +++ b/src/server/registerManagedWorkflowTools/projectManagedApplicationGraph.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { projectManagedApplicationGraphEvidence } from "../../application/ManagedApplicationGraphService.js"; @@ -6,7 +7,6 @@ import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; import { managedWorkflowContract } from "./contract.js"; import { - recordManagedSources, resolveManagedArtifactEvidence, resolveManagedBoundaryEvidence, resolveManagedEvidence, @@ -65,7 +65,7 @@ export const registerProjectManagedApplicationGraph = ( () => Promise.resolve(projectManagedApplicationGraphEvidence(parsed)), ); if (!result.ok) return toCallToolResult(result, graphContract); - const recordedSources = recordManagedSources( + const recordedSources = recordSessionEvidenceSources( options.recordEvidence, sourceEvidence(parsed), ); diff --git a/src/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.ts b/src/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.ts index 8d88089ae1..c8b4ece1fe 100644 --- a/src/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.ts +++ b/src/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.ts @@ -1,3 +1,4 @@ +import { recordSessionEvidenceSources } from "../sessionEvidence.js"; import type { McpServer } from "@modelcontextprotocol/server"; import { verifyManagedNativeBoundariesEvidence } from "../../application/ManagedNativeVerificationService.js"; @@ -7,7 +8,6 @@ import { toolRegistrationOptions } from "../toolRegistrationOptions.js"; import { toCallToolResult } from "../toolResult.js"; import { managedWorkflowContract } from "./contract.js"; import { - recordManagedSources, resolveManagedBoundaryEvidence, resolveNativeEvidence, } from "./evidence.js"; @@ -58,10 +58,10 @@ export const registerVerifyManagedNativeBoundaries = ( ); if (!result.ok) return toCallToolResult(result, nativeVerificationContract); - const recordedSources = recordManagedSources(options.recordEvidence, [ - parsed.managed_boundaries, - ...parsed.native_observations, - ]); + const recordedSources = recordSessionEvidenceSources( + options.recordEvidence, + [parsed.managed_boundaries, ...parsed.native_observations], + ); if (!recordedSources.ok) return toCallToolResult(recordedSources, nativeVerificationContract); const verification = managedNativeVerificationResultSchema.parse( diff --git a/src/server/registerReconstructionObligationLedgerResource.ts b/src/server/registerReconstructionObligationLedgerResource.ts index 567a39d01b..8365499a34 100644 --- a/src/server/registerReconstructionObligationLedgerResource.ts +++ b/src/server/registerReconstructionObligationLedgerResource.ts @@ -6,6 +6,7 @@ import { import type { BinarySessionPort } from "../application/BinarySessionPort.js"; import { reconstructionObligationLedgerPageSchema } from "../domain/reconstructionObligationLedgerSchemas.js"; +import { jsonResource } from "./resourceResult.js"; /** Expose retained obligation-ledger pages as typed Evidence resources. */ export const registerReconstructionObligationLedgerResource = ( @@ -40,19 +41,10 @@ export const registerReconstructionObligationLedgerResource = ( evidence.normalized_result, ); if (!page.success) throw new ResourceNotFoundError(uri.href); - return { - contents: [ - { - uri: uri.href, - mimeType: "application/json", - text: JSON.stringify( - { evidence_id: evidence.evidence_id, page: page.data }, - null, - 2, - ), - }, - ], - }; + return jsonResource(uri.href, { + evidence_id: evidence.evidence_id, + page: page.data, + }); }, ); }; diff --git a/src/server/registerReconstructionReadinessResource.ts b/src/server/registerReconstructionReadinessResource.ts index 3819d26847..05c744a666 100644 --- a/src/server/registerReconstructionReadinessResource.ts +++ b/src/server/registerReconstructionReadinessResource.ts @@ -6,6 +6,7 @@ import { import type { BinarySessionPort } from "../application/BinarySessionPort.js"; import { reconstructionReadinessReportSchema } from "../domain/reconstructionReadinessSchemas.js"; +import { jsonResource } from "./resourceResult.js"; /** Expose retained full readiness reports outside compact tool responses. */ export const registerReconstructionReadinessResource = ( @@ -40,19 +41,10 @@ export const registerReconstructionReadinessResource = ( evidence.normalized_result, ); if (!report.success) throw new ResourceNotFoundError(uri.href); - return { - contents: [ - { - uri: uri.href, - mimeType: "application/json", - text: JSON.stringify( - { evidence_id: evidence.evidence_id, report: report.data }, - null, - 2, - ), - }, - ], - }; + return jsonResource(uri.href, { + evidence_id: evidence.evidence_id, + report: report.data, + }); }, ); }; diff --git a/src/server/registerSessionRecordTools.ts b/src/server/registerSessionRecordTools.ts index 46f9d72782..00aeef3faf 100644 --- a/src/server/registerSessionRecordTools.ts +++ b/src/server/registerSessionRecordTools.ts @@ -7,16 +7,13 @@ import { } from "../application/EvidenceBundleFiles.js"; import type { PermissionAuthority } from "../application/PermissionAuthority.js"; import { SESSION_TOOL_CONTRACTS } from "../contracts/toolContracts.js"; -import { - AnalysisProtocolError, - PermissionRequiredError, - type AnalysisError, -} from "../domain/errors.js"; +import type { AnalysisError } from "../domain/errors.js"; import type { EvidenceBundle, EvidenceFilePolicy, } from "../domain/evidenceBundle.js"; import { err, ok, type Result } from "../domain/result.js"; +import { projectPermissionFailure } from "../application/PermissionFailure.js"; import { toolRegistrationOptions } from "./toolRegistrationOptions.js"; import { toCallToolResult } from "./toolResult.js"; @@ -95,7 +92,9 @@ const authorizeEvidenceWrite = async ({ }, "write", ); - return authorized.ok ? undefined : permissionFailure(authorized); + return authorized.ok + ? undefined + : err(projectPermissionFailure(authorized.error)); }; const registerExportEvidenceTool = ({ @@ -246,7 +245,9 @@ const authorizeEvidencePath = async ( }, input.access, ); - return authorized.ok ? undefined : permissionFailure(authorized); + return authorized.ok + ? undefined + : err(projectPermissionFailure(authorized.error)); }; interface UnknownToolRegistration { @@ -389,17 +390,3 @@ export const registerUnknownTools = ( registerUpdateUnknownTool(registration); registerVerifyUnknownTool(registration); }; - -const permissionFailure = ( - failure: Awaited>, -): Result => { - if (failure.ok) - return err(new AnalysisProtocolError("Expected a denied permission")); - return err( - failure.error instanceof PermissionRequiredError - ? failure.error - : new AnalysisProtocolError(failure.error.message, { - cause: failure.error, - }), - ); -}; diff --git a/src/server/registerSessionTools.ts b/src/server/registerSessionTools.ts index 06de6cf7af..01239d7a1e 100644 --- a/src/server/registerSessionTools.ts +++ b/src/server/registerSessionTools.ts @@ -22,10 +22,10 @@ import type { ProcessExecutionPolicy, ProcessScenario, } from "../domain/processCapture.js"; -import { ok, type Result } from "../domain/result.js"; +import { err, ok, type Result } from "../domain/result.js"; import type { Logger } from "../logger.js"; import { mcpProgressReporter } from "./mcpProgress.js"; -import { permissionFailure } from "./permissionFailure.js"; +import { projectPermissionFailure } from "../application/PermissionFailure.js"; import { authorizeProcessCaptureWithElicitation, type ProcessCaptureElicitation, @@ -131,7 +131,7 @@ const registerProcessTools = ({ if (isInputRequiredResult(authorized)) return authorized; if (!authorized.ok) return toCallToolResult( - permissionFailure(authorized), + err(projectPermissionFailure(authorized.error)), captureContract, ); } @@ -235,7 +235,7 @@ const registerOpenLifecycleTool = ({ ); if (!authorized.ok) return toCallToolResult( - permissionFailure(authorized), + err(projectPermissionFailure(authorized.error)), openContract, ); } diff --git a/src/server/resourceResult.ts b/src/server/resourceResult.ts new file mode 100644 index 0000000000..45b02c1d4e --- /dev/null +++ b/src/server/resourceResult.ts @@ -0,0 +1,12 @@ +import type { JsonValue } from "../domain/jsonValue.js"; + +/** Encode one JSON value as an MCP resource with its requested URI. */ +export const jsonResource = (uri: string, value: JsonValue) => ({ + contents: [ + { + uri, + mimeType: "application/json" as const, + text: JSON.stringify(value, null, 2), + }, + ], +}); diff --git a/src/server/sessionEvidence.ts b/src/server/sessionEvidence.ts index ffb3d6cc58..5ce14a3942 100644 --- a/src/server/sessionEvidence.ts +++ b/src/server/sessionEvidence.ts @@ -2,6 +2,7 @@ import type { BinarySessionPort } from "../application/BinarySession.js"; import { EvidenceIntegrityError, EvidenceReferenceError, + type EvidenceLimitError, } from "../domain/errors.js"; import type { Evidence } from "../domain/evidence.js"; import { err, ok, type Result } from "../domain/result.js"; @@ -48,3 +49,15 @@ export const resolveSessionEvidenceIds = ( } return ok(records); }; + +/** Record source evidence in order, stopping at the first session rejection. */ +export const recordSessionEvidenceSources = ( + recordEvidence: BinarySessionPort["recordEvidence"] | undefined, + sources: readonly Evidence[], +): Result => { + for (const source of sources) { + const recorded = recordEvidence?.(source); + if (recorded !== undefined && !recorded.ok) return recorded; + } + return ok(null); +}; diff --git a/tests/acceptance/setup/packagePlatform.test.ts b/tests/acceptance/setup/packagePlatform.test.ts new file mode 100644 index 0000000000..3eb752d865 --- /dev/null +++ b/tests/acceptance/setup/packagePlatform.test.ts @@ -0,0 +1,73 @@ +import { describe, expect, it } from "vitest"; + +import { assertLinuxPackageProviderFailure } from "../../../scripts/verify-package-platform.mjs"; + +const missingDisplay = { + code: "provider_unavailable", + details: { + failure_code: "runtime_dependency_unavailable", + exit_code: 79, + diagnostics: { + component: "hopper_private_display", + operation: "probe", + reason: "missing_xvfb", + status: "error", + failure_code: "runtime_dependency_unavailable", + strategy: "unavailable", + }, + }, +}; +const execution = (failure: unknown, status = 1) => ({ + status, + stdout: JSON.stringify(failure), +}); + +describe("packaged Linux failure verification", () => { + it("accepts the unsupported fixture build or an exact missing display dependency", () => { + expect(() => + assertLinuxPackageProviderFailure(execution(missingDisplay)), + ).not.toThrow(); + expect(() => + assertLinuxPackageProviderFailure( + execution({ + code: "provider_unavailable", + details: { failure_code: "unsupported_hopper_build", exit_code: 72 }, + }), + ), + ).not.toThrow(); + }); + + it.each([ + execution(missingDisplay, 0), + execution({ code: "provider_unavailable" }), + execution({ + ...missingDisplay, + details: { + failure_code: "runtime_dependency_unavailable", + exit_code: 79, + }, + }), + execution({ + ...missingDisplay, + details: { + ...missingDisplay.details, + diagnostics: { + ...missingDisplay.details.diagnostics, + reason: "ownership_mismatch", + }, + }, + }), + execution({ + ...missingDisplay, + details: { failure_code: "unsupported_hopper_build", exit_code: 75 }, + }), + execution({ ...missingDisplay, code: "internal_error" }), + ])( + "rejects success, unrelated failures, and incomplete diagnostics: %j", + (result) => { + expect(() => assertLinuxPackageProviderFailure(result)).toThrow( + "did not fail closed", + ); + }, + ); +}); diff --git a/tests/boundary/cli/cliPolicyCommands.test.ts b/tests/boundary/cli/cliPolicyCommands.test.ts index e224e47486..225c0e87b4 100644 --- a/tests/boundary/cli/cliPolicyCommands.test.ts +++ b/tests/boundary/cli/cliPolicyCommands.test.ts @@ -130,6 +130,24 @@ describe("policy revocation approval", () => { }, 40_000); }); +describe("policy capability coverage", () => { + it.each(["v8_inspector_observe", "javascript_replay", "managed_runtime"])( + "explains %s without granting disabled authority", + async (capability) => { + const result = await runCli(["policy", "explain", capability, "--json"], { + ...process.env, + REA_V8_INSPECTOR_OBSERVE_ENABLED: "false", + REA_JAVASCRIPT_REPLAY_ENABLED: "false", + REA_MANAGED_RUNTIME_ENABLED: "false", + }); + expect(result.output).toMatchObject({ + allowed: false, + error: { code: "permission_required" }, + }); + }, + ); +}); + const runCli = async ( arguments_: readonly string[], environment: NodeJS.ProcessEnv, diff --git a/tests/boundary/filesystem/binaryTarget.test.ts b/tests/boundary/filesystem/binaryTarget.test.ts index ced6f9111f..83eacf538b 100644 --- a/tests/boundary/filesystem/binaryTarget.test.ts +++ b/tests/boundary/filesystem/binaryTarget.test.ts @@ -3,7 +3,7 @@ import { join } from "node:path"; import { describe, expect, it } from "vitest"; -import { parseBinaryTarget } from "../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../src/application/BinaryTargetResolver.js"; import { pe, thinMach } from "../../../src/domain/binaryTarget.fixture.js"; import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; diff --git a/tests/boundary/filesystem/boundedFileBytes.test.ts b/tests/boundary/filesystem/boundedFileBytes.test.ts new file mode 100644 index 0000000000..b128804b27 --- /dev/null +++ b/tests/boundary/filesystem/boundedFileBytes.test.ts @@ -0,0 +1,42 @@ +import { appendFile, open, writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { readBoundedFileBytes } from "../../../src/process/BoundedFileBytes.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("bounded file byte reads", () => { + it.each([0, 1, 65_536, 65_537])( + "accepts a file exactly at the %i byte limit", + async (limit) => { + const root = await createTestTempDirectory("rea-bounded-bytes-"); + const path = join(root, "input"); + const content = Buffer.alloc(limit, 0x61); + await writeFile(path, content); + const handle = await open(path, "r"); + try { + expect(await readBoundedFileBytes(handle, limit)).toEqual(content); + } finally { + await handle.close(); + } + }, + ); + + it("stops after one overflow byte when a file grows beyond its admitted size", async () => { + const root = await createTestTempDirectory("rea-growing-bytes-"); + const path = join(root, "input"); + await writeFile(path, "0123456789"); + const handle = await open(path, "r"); + try { + expect((await handle.stat()).size).toBeLessThan(12); + await appendFile(path, "abcdefghijklmnopqrstuvwxyz"); + expect(await readBoundedFileBytes(handle, 12)).toBeUndefined(); + const next = Buffer.alloc(1); + expect((await handle.read(next, 0, 1, null)).bytesRead).toBe(1); + expect(next.toString()).toBe("d"); + } finally { + await handle.close(); + } + }); +}); diff --git a/tests/boundary/filesystem/cliJsonInput.test.ts b/tests/boundary/filesystem/cliJsonInput.test.ts new file mode 100644 index 0000000000..4418dacc30 --- /dev/null +++ b/tests/boundary/filesystem/cliJsonInput.test.ts @@ -0,0 +1,45 @@ +import { writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { parseCliJsonInput } from "../../../src/cliJsonInput.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +const MAX_BYTES = 64 * 1_024 * 1_024; + +describe("bounded CLI JSON input", () => { + it("rejects oversized inline UTF-8 before returning or echoing its content", async () => { + const input = `"${"é".repeat(MAX_BYTES / 2)}"`; + expect(input.length).toBeLessThan(MAX_BYTES); + const result = await parseCliJsonInput(input, "test-input"); + expect(result.ok).toBe(false); + if (result.ok) return; + expect(result.error).toMatchObject({ + input_reason: "too-large", + maximum_input_bytes: MAX_BYTES, + }); + expect(JSON.stringify(result.error).length).toBeLessThan(1_024); + }); + + it("preserves JSON scalars and distinguishes malformed inline text from files", async () => { + for (const value of [null, false, 0, "text", [], {}]) + expect( + await parseCliJsonInput(JSON.stringify(value), "test-input"), + ).toEqual({ ok: true, value }); + expect(await parseCliJsonInput("{", "test-input")).toMatchObject({ + ok: false, + }); + const root = await createTestTempDirectory("rea-json-input-"); + const path = join(root, "input.json"); + await writeFile(path, '{"value":1}'); + expect(await parseCliJsonInput(path, "test-input")).toEqual({ + ok: true, + value: { value: 1 }, + }); + expect(await parseCliJsonInput(root, "test-input")).toMatchObject({ + ok: false, + error: { input_reason: "not-file" }, + }); + }); +}); diff --git a/tests/boundary/filesystem/clientConfigurationTransactions.test.ts b/tests/boundary/filesystem/clientConfigurationTransactions.test.ts new file mode 100644 index 0000000000..efdd91e6f3 --- /dev/null +++ b/tests/boundary/filesystem/clientConfigurationTransactions.test.ts @@ -0,0 +1,58 @@ +import { chmod, readFile, writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { + configureJsonClient, + configureTomlClient, +} from "../../../src/application/SetupClientConfiguration.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("client configuration write failures", () => { + it.skipIf(process.platform === "win32" || process.getuid?.() === 0).each([ + ["json", configureJsonClient], + ["toml", configureTomlClient], + ] as const)( + "classifies a denied %s write as a write failure", + async (format, configure) => { + const root = await createTestTempDirectory("rea-client-unwritable-"); + await chmod(root, 0o500); + try { + expect( + await configure({ + name: format === "toml" ? "codex" : "cursor", + format, + configPath: join(root, `config.${format}`), + }), + ).toEqual({ status: "failed", reason: "write" }); + } finally { + await chmod(root, 0o700); + } + }, + ); +}); + +describe("TOML client configuration comparison", () => { + it.each(["nan", "inf", "-inf"])( + "replaces a registration containing %s and preserves unrelated settings", + async (value) => { + const root = await createTestTempDirectory("rea-client-toml-"); + const configPath = join(root, "config.toml"); + const original = `unrelated = ${value}\n[mcp_servers.rea]\ncommand = "old"\nstartup_timeout_sec = ${value}\n`; + await writeFile(configPath, original); + const client = { name: "codex", format: "toml", configPath } as const; + expect(await configureTomlClient(client, {}, ["rea", "mcp"])).toEqual({ + status: "configured", + backupPath: `${configPath}.rea.backup`, + }); + expect(await readFile(`${configPath}.rea.backup`, "utf8")).toBe(original); + expect(await readFile(configPath, "utf8")).toContain( + `unrelated = ${value}`, + ); + expect(await configureTomlClient(client, {}, ["rea", "mcp"])).toEqual({ + status: "unchanged", + }); + }, + ); +}); diff --git a/tests/boundary/filesystem/clientRegistrationStatus.test.ts b/tests/boundary/filesystem/clientRegistrationStatus.test.ts index d868ba479d..0e877f381a 100644 --- a/tests/boundary/filesystem/clientRegistrationStatus.test.ts +++ b/tests/boundary/filesystem/clientRegistrationStatus.test.ts @@ -62,6 +62,25 @@ describe("client registration status", () => { expect(JSON.stringify(statuses)).not.toContain("SECRET"); }); + it.each([null, [], "invalid"])( + "reports a malformed server table %j as invalid", + async (servers) => { + const home = await createTestTempDirectory("rea-registration-shape-"); + await mkdir(join(home, ".cursor")); + await writeFile( + join(home, ".cursor/mcp.json"), + JSON.stringify({ mcpServers: servers }), + ); + expect(await readClientRegistrationStatuses(home)).toEqual([ + expect.objectContaining({ + client: "cursor", + state: "invalid", + command: [], + }), + ]); + }, + ); + it("reports an unversioned npx registration as stale", async () => { const home = await createTestTempDirectory("rea-registrations-"); await mkdir(join(home, ".codex")); diff --git a/tests/boundary/filesystem/directAnalysisPermissions.test.ts b/tests/boundary/filesystem/directAnalysisPermissions.test.ts index 23d19f547c..1ae06cb734 100644 --- a/tests/boundary/filesystem/directAnalysisPermissions.test.ts +++ b/tests/boundary/filesystem/directAnalysisPermissions.test.ts @@ -12,7 +12,7 @@ import { snapshotBinding, snapshotTarget, } from "../../../src/domain/analysisSnapshot.js"; -import { parseBinaryTarget } from "../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../src/application/BinaryTargetResolver.js"; import { createEvidence } from "../../../src/domain/evidence.js"; import { createEvidenceBundle } from "../../../src/domain/evidenceBundle.js"; import { permissionAuthorityForRoot } from "../../fixtures/permissionAuthority.js"; diff --git a/tests/boundary/filesystem/electronFileScope.test.ts b/tests/boundary/filesystem/electronFileScope.test.ts index 3281a87669..9dbc7b7b51 100644 --- a/tests/boundary/filesystem/electronFileScope.test.ts +++ b/tests/boundary/filesystem/electronFileScope.test.ts @@ -12,6 +12,18 @@ import { } from "../../../src/browser/ElectronFileScope.js"; describe("Electron file scope", () => { + it("accepts dot-prefixed child names beneath a canonical root", async () => { + const root = await createTestTempDirectory("rea-electron-dot-child-"); + const directory = join(root, "..cache"); + await mkdir(directory); + const path = join(directory, "index.html"); + await writeFile(path, "allowed"); + const roots = await canonicalElectronRoots([root]); + expect(await authorizedElectronFile(pathToFileURL(path).href, roots)).toBe( + path, + ); + }); + it("accepts canonical files within a root and rejects escape forms", async () => { const base = await createTestTempDirectory("rea-electron-scope-"); const root = join(base, "root"); diff --git a/tests/boundary/filesystem/evidenceBundleFiles.test.ts b/tests/boundary/filesystem/evidenceBundleFiles.test.ts index cea25c13c9..1270c031aa 100644 --- a/tests/boundary/filesystem/evidenceBundleFiles.test.ts +++ b/tests/boundary/filesystem/evidenceBundleFiles.test.ts @@ -1,4 +1,4 @@ -import { mkdir, readFile, symlink, writeFile } from "node:fs/promises"; +import { mkdir, readdir, readFile, symlink, writeFile } from "node:fs/promises"; import { join } from "node:path"; import { describe, expect, it } from "vitest"; @@ -17,12 +17,12 @@ import { type EvidenceFilePolicy, } from "../../../src/domain/evidenceBundle.js"; -const bundle = () => +const bundle = (result = true) => createEvidenceBundle([ createEvidence( undefined, { id: "fixture", name: "Fixture", version: "1" }, - { operation: "health", parameters: {}, result: true }, + { operation: "health", parameters: {}, result }, ), ]); @@ -34,6 +34,44 @@ const policy = (root: string): EvidenceFilePolicy => ({ maxNodes: 10_000, }); +describe("evidence bundle publication", () => { + it("allows only one simultaneous export without overwrite approval", async () => { + const root = await createTestTempDirectory("rea-evidence-exclusive-"); + const path = join(root, "bundle.json"); + const candidates = [bundle(), bundle(false)]; + const results = await Promise.all( + candidates.map((value) => + writeEvidenceBundle(value, path, false, policy(root)), + ), + ); + expect(results.filter(({ ok }) => ok)).toHaveLength(1); + expect(results.filter(({ ok }) => !ok)).toMatchObject([ + { ok: false, error: { _tag: "EvidenceFileError", reason: "exists" } }, + ]); + const winner = candidates[results.findIndex(({ ok }) => ok)]; + expect(await readEvidenceBundle(path, policy(root))).toEqual({ + ok: true, + value: winner, + }); + expect(await readdir(root)).toEqual(["bundle.json"]); + }); + + it("round trips dot-prefixed child names beneath an approved root", async () => { + const root = await createTestTempDirectory("rea-evidence-dot-child-"); + const directory = join(root, "..cache"); + await mkdir(directory); + const path = join(directory, "bundle.json"); + const value = bundle(); + expect( + await writeEvidenceBundle(value, path, false, policy(root)), + ).toMatchObject({ ok: true }); + expect(await readEvidenceBundle(path, policy(root))).toEqual({ + ok: true, + value, + }); + }); +}); + describe("evidence bundle filesystem adapter", () => { it("round trips canonical bytes and requires explicit overwrite", async () => { const directory = await createTestTempDirectory("rea-evidence-"); diff --git a/tests/boundary/filesystem/investigationWorkspaceHistory.test.ts b/tests/boundary/filesystem/investigationWorkspaceHistory.test.ts index bbdaf8a396..75cb4a8882 100644 --- a/tests/boundary/filesystem/investigationWorkspaceHistory.test.ts +++ b/tests/boundary/filesystem/investigationWorkspaceHistory.test.ts @@ -51,6 +51,46 @@ const fixture = async () => { }; describe("persistent cross-version investigation workspace", () => { + it("uses valid workspace roots when another configured root is missing", async () => { + const root = await createTestTempDirectory("rea-workspace-stale-root-"); + const path = join(root, "workspace.json"); + const workspace = createInvestigationWorkspace( + "stale-root", + createEvidenceBundle([]), + [], + ); + const configured = { + ...policy(root), + roots: [join(root, "missing"), root], + }; + expect( + await writeInvestigationWorkspace(workspace, path, null, configured), + ).toMatchObject({ ok: true }); + expect(await readInvestigationWorkspace(path, configured)).toEqual({ + ok: true, + value: workspace, + }); + }); + + it("stores workspaces in dot-prefixed child directories", async () => { + const root = await createTestTempDirectory("rea-workspace-dot-child-"); + const directory = join(root, "..cache"); + await mkdir(directory); + const path = join(directory, "workspace.json"); + const workspace = createInvestigationWorkspace( + "dot-child", + createEvidenceBundle([]), + [], + ); + expect( + await writeInvestigationWorkspace(workspace, path, null, policy(root)), + ).toMatchObject({ ok: true }); + expect(await readInvestigationWorkspace(path, policy(root))).toEqual({ + ok: true, + value: workspace, + }); + }); + it("enforces shared JSON depth limits while reading workspaces", async () => { const { directory, path, input } = await fixture(); const completed = await runCrossVersionInvestigation( diff --git a/tests/boundary/filesystem/projectPermissionStore.test.ts b/tests/boundary/filesystem/projectPermissionStore.test.ts index 39f2e793d9..05dbd94693 100644 --- a/tests/boundary/filesystem/projectPermissionStore.test.ts +++ b/tests/boundary/filesystem/projectPermissionStore.test.ts @@ -78,30 +78,33 @@ describe("project permission store", () => { }); }); - it("round-trips managed runtime project grants", async () => { - const project = await createTestTempDirectory("rea-policy-managed-"); - const path = join(project, "permissions.json"); - const grant = { - grant_id: "project:managed-runtime", - capability: "managed_runtime" as const, - roots: [project], - executables: [process.execPath], - environment_names: [], - network: "none" as const, - mount: false, - lifetime: "project" as const, - operation_identity: null, - expires_at: null, - }; + it.each(["managed_runtime", "v8_inspector_observe"] as const)( + "round-trips %s project grants", + async (capability) => { + const project = await createTestTempDirectory("rea-policy-managed-"); + const path = join(project, "permissions.json"); + const grant = { + grant_id: "project:managed-runtime", + capability, + roots: [project], + executables: [process.execPath], + environment_names: [], + network: "none" as const, + mount: false, + lifetime: "project" as const, + operation_identity: null, + expires_at: null, + }; - expect( - await writeProjectPermissionStore(path, project, [grant]), - ).toMatchObject({ ok: true, value: { grants: [grant] } }); - expect(await readProjectPermissionStore(path, project)).toMatchObject({ - ok: true, - value: { grants: [grant] }, - }); - }); + expect( + await writeProjectPermissionStore(path, project, [grant]), + ).toMatchObject({ ok: true, value: { grants: [grant] } }); + expect(await readProjectPermissionStore(path, project)).toMatchObject({ + ok: true, + value: { grants: [grant] }, + }); + }, + ); it("classifies malformed JSON as an invalid store", async () => { const project = await createTestTempDirectory("rea-policy-invalid-"); diff --git a/tests/boundary/filesystem/projectPermissionStoreLocking.test.ts b/tests/boundary/filesystem/projectPermissionStoreLocking.test.ts new file mode 100644 index 0000000000..114ebf4f4c --- /dev/null +++ b/tests/boundary/filesystem/projectPermissionStoreLocking.test.ts @@ -0,0 +1,38 @@ +import { readFile, writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { writeProjectPermissionStore } from "../../../src/application/ProjectPermissionStore.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("permission store write ownership", () => { + it("preserves the store and live owner when replacement cannot acquire the transaction lock", async () => { + const project = await createTestTempDirectory("rea-policy-locked-write-"); + const path = join(project, "permissions.json"); + expect((await writeProjectPermissionStore(path, project, [])).ok).toBe( + true, + ); + const before = await readFile(path); + const lockPath = `${path}.lock`; + const owner = `${process.pid}\n`; + await writeFile(lockPath, owner, { mode: 0o600 }); + const result = await writeProjectPermissionStore(path, project, [ + { + grant_id: "project:new", + capability: "evidence_read", + roots: [project], + executables: [], + environment_names: [], + network: "none", + mount: false, + lifetime: "project", + operation_identity: null, + expires_at: null, + }, + ]); + expect(result).toMatchObject({ ok: false, error: { reason: "locked" } }); + expect(await readFile(path)).toEqual(before); + expect(await readFile(lockPath, "utf8")).toBe(owner); + }); +}); diff --git a/tests/boundary/filesystem/referenceSourceImport.test.ts b/tests/boundary/filesystem/referenceSourceImport.test.ts index 3cb5175c1b..8e31622afe 100644 --- a/tests/boundary/filesystem/referenceSourceImport.test.ts +++ b/tests/boundary/filesystem/referenceSourceImport.test.ts @@ -125,6 +125,26 @@ describe("reference source import error projection", () => { }); describe("reference source import behavior", () => { + it("imports BMP and supplementary filenames in Unicode code point order", async () => { + const root = await createTestTempDirectory("reference-unicode-"); + try { + const paths = ["\uE000.ts", "\u{10000}.ts"]; + await Promise.all( + paths.map((path) => + writeFile(join(root, path), "export const value = 1;\n"), + ), + ); + const result = await importTree(root, root); + expect(result.ok).toBe(true); + if (!result.ok) return; + expect(result.value.entries.map(({ path }) => path)).toEqual(paths); + const repeated = await importTree(root, root); + expect(repeated).toEqual(result); + } finally { + await rm(root, { recursive: true, force: true }); + } + }); + it("is relocation-stable, resolves imports, and excludes secrets before capture", async () => { const parent = await createTestTempDirectory("rea-reference-import-"); try { diff --git a/tests/boundary/filesystem/replaySeccompFile.test.ts b/tests/boundary/filesystem/replaySeccompFile.test.ts new file mode 100644 index 0000000000..572a456c91 --- /dev/null +++ b/tests/boundary/filesystem/replaySeccompFile.test.ts @@ -0,0 +1,44 @@ +import { access, readFile } from "node:fs/promises"; +import { dirname } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { buildLinuxX64ReplaySeccomp } from "../../../src/replay/LinuxSeccompPolicy.js"; +import { temporaryFilterHandle } from "../../../src/replay/ReplaySeccompFile.js"; + +describe("replay seccomp file ownership", () => { + it("writes the policy bytes and removes its private directory on close", async () => { + const filter = await temporaryFilterHandle(); + try { + expect(await readFile(filter.path)).toEqual( + Buffer.from(buildLinuxX64ReplaySeccomp()), + ); + expect(await filter.handle.readFile()).toEqual( + Buffer.from(buildLinuxX64ReplaySeccomp()), + ); + } finally { + await filter.close(); + } + await expect(access(dirname(filter.path))).rejects.toThrow(); + await filter.close(); + }); + + it.skipIf(process.platform !== "linux")( + "removes the directory even when descriptor cleanup rejects", + async () => { + const filter = await temporaryFilterHandle(); + const close = filter.handle.close.bind(filter.handle); + const failure = new Error("injected descriptor cleanup failure"); + filter.handle.close = async () => { + throw failure; + }; + try { + await expect(filter.close()).rejects.toBe(failure); + await expect(access(dirname(filter.path))).rejects.toThrow(); + } finally { + filter.handle.close = close; + await filter.close(); + } + }, + ); +}); diff --git a/tests/boundary/filesystem/replaySourceRead.test.ts b/tests/boundary/filesystem/replaySourceRead.test.ts new file mode 100644 index 0000000000..580d5c2552 --- /dev/null +++ b/tests/boundary/filesystem/replaySourceRead.test.ts @@ -0,0 +1,81 @@ +import { writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { prepareReplayPlan } from "../../../src/application/JavaScriptReplayPlanning.js"; +import { controlledReplayInputSchema } from "../../../src/domain/javascriptReplay.js"; +import { SystemJavaScriptReplayHost } from "../../../src/replay/SystemJavaScriptReplayHost.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("replay source byte admission", () => { + it.each([0, 16, 65_537])("reads exactly %i admitted bytes", async (limit) => { + const root = await createTestTempDirectory("rea-replay-source-"); + const path = join(root, "module.mjs"); + const bytes = Buffer.alloc(limit, 0x61); + await writeFile(path, bytes); + expect( + await new SystemJavaScriptReplayHost().readSource(path, limit), + ).toEqual({ + canonicalPath: path, + bytes, + }); + }); + + it("rejects an oversized source and a directory", async () => { + const root = await createTestTempDirectory("rea-replay-source-"); + const path = join(root, "module.mjs"); + await writeFile(path, "oversized"); + const host = new SystemJavaScriptReplayHost(); + await expect(host.readSource(path, 1)).rejects.toThrow("declared limit"); + await expect(host.readSource(root, 1)).rejects.toThrow(); + }); +}); + +it("rejects a host result larger than the remaining module budget", async () => { + const path = process.execPath; + const identity = { path, version: "fixture", sha256: "1".repeat(64) }; + const input = controlledReplayInputSchema.parse({ + mode: "plan", + left: { + modules: [ + { + alias: "entry", + path, + format: "esm", + role: "module", + dependencies: {}, + }, + ], + entry_alias: "entry", + entry_export: "default", + }, + cases: [{ case_id: "one", arguments: [] }], + limits: { module_bytes: 16 }, + }); + await expect( + prepareReplayPlan( + input, + { + status: "enabled", + roots: [path], + nodePath: path, + bubblewrapPath: path, + systemdRunPath: path, + systemctlPath: path, + shellPath: path, + }, + { + readSource: async (canonicalPath, maximumBytes) => ({ + canonicalPath, + bytes: Buffer.alloc(maximumBytes + 1), + }), + identifyExecutable: async () => identity, + identifyWorker: async () => identity, + identifyRuntimeClosure: async () => [], + seccompDigest: () => "2".repeat(64), + probe: async () => undefined, + }, + ), + ).rejects.toThrow("Replay module bytes exceed the aggregate limit"); +}); diff --git a/tests/boundary/filesystem/safeOutputTree.test.ts b/tests/boundary/filesystem/safeOutputTree.test.ts index 91f04ae562..f0302cd5f3 100644 --- a/tests/boundary/filesystem/safeOutputTree.test.ts +++ b/tests/boundary/filesystem/safeOutputTree.test.ts @@ -1,5 +1,5 @@ import { createHash } from "node:crypto"; -import { access, readFile, readdir } from "node:fs/promises"; +import { access, readFile, readdir, readlink, rm } from "node:fs/promises"; import { join } from "node:path"; import { Readable } from "node:stream"; @@ -19,6 +19,26 @@ const LIMITS = { } as const; describe("safe artifact output tree", () => { + it.skipIf(process.platform !== "linux")( + "closes the parent descriptor when the output disappears before commit", + async () => { + const parent = await createTestTempDirectory("rea-safe-output-"); + const output = join(parent, "published"); + const tree = await SafeOutputTree.create(output, LIMITS); + await rm(output, { recursive: true }); + await expect(tree.commit()).rejects.toThrow(); + const targets = await Promise.all( + (await readdir("/proc/self/fd")).map((fd) => + readlink(`/proc/self/fd/${fd}`).catch(() => undefined), + ), + ); + expect(targets.filter((target) => target === parent)).toEqual([]); + expect(await tree.rollback()).toEqual({ + status: "complete", + residualPaths: [], + }); + }, + ); it("removes only its owned tree after digest failure and proves absence", async () => { const parent = await createTestTempDirectory("rea-safe-output-"); const output = join(parent, "published"); diff --git a/tests/boundary/filesystem/setupConfig.test.ts b/tests/boundary/filesystem/setupConfig.test.ts index 4be3313800..3c3467c411 100644 --- a/tests/boundary/filesystem/setupConfig.test.ts +++ b/tests/boundary/filesystem/setupConfig.test.ts @@ -174,7 +174,9 @@ describe("JSON client configuration migration and provider paths", () => { const client = { name: "cursor", configPath }; const original = "{}\n"; await writeFile(configPath, original); - expect(await configureJsonClient(client, hopperPath)).toMatchObject({ + expect( + await configureJsonClient(client, { HOPPER_LAUNCHER_PATH: hopperPath }), + ).toMatchObject({ status: "configured", }); expect(JSON.parse(await readFile(configPath, "utf8"))).toMatchObject({ @@ -186,11 +188,15 @@ describe("JSON client configuration migration and provider paths", () => { }, }, }); - expect(await configureJsonClient(client, hopperPath)).toEqual({ + expect( + await configureJsonClient(client, { HOPPER_LAUNCHER_PATH: hopperPath }), + ).toEqual({ status: "unchanged", }); expect( - await configureJsonClient(client, "/opt/hopper/bin/Hopper"), + await configureJsonClient(client, { + HOPPER_LAUNCHER_PATH: "/opt/hopper/bin/Hopper", + }), ).toMatchObject({ status: "configured" }); expect(await readFile(`${configPath}.rea.backup`, "utf8")).toBe(original); }); diff --git a/tests/boundary/filesystem/storeFileLock.test.ts b/tests/boundary/filesystem/storeFileLock.test.ts new file mode 100644 index 0000000000..e68f414dce --- /dev/null +++ b/tests/boundary/filesystem/storeFileLock.test.ts @@ -0,0 +1,81 @@ +import { execFile } from "node:child_process"; +import { promisify } from "node:util"; +import { lstat, readdir, rm } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { + createStoreFileLock, + removeStaleStoreFileLock, +} from "../../../src/application/StoreFileLock.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("store lock cleanup ownership", () => { + it.each(["released", "replaced"] as const)( + "preserves a successor lock when an old %s owner cleans up", + async (state) => { + const root = await createTestTempDirectory("rea-store-lock-owner-"); + const path = join(root, "transaction.lock"); + const previous = await createStoreFileLock(path); + if (state === "released") await previous.release(); + else await rm(path, { recursive: true }); + const successor = await createStoreFileLock(path); + try { + await previous.release(); + await expect(lstat(path)).resolves.toBeDefined(); + await expect(createStoreFileLock(path)).rejects.toMatchObject({ + code: "EEXIST", + }); + } finally { + await successor.release(); + } + }, + ); +}); + +describe("store lock acquisition and recovery", () => { + it("admits one concurrent owner and removes all preparation directories", async () => { + const root = await createTestTempDirectory("rea-store-lock-contenders-"); + const path = join(root, "transaction.lock"); + const results = await Promise.allSettled( + Array.from({ length: 8 }, () => createStoreFileLock(path)), + ); + try { + expect( + results.filter((result) => result.status === "fulfilled"), + ).toHaveLength(1); + for (const result of results) + if (result.status === "rejected") + expect(result.reason).toMatchObject({ code: "EEXIST" }); + expect(await readdir(root)).toEqual(["transaction.lock"]); + expect(await removeStaleStoreFileLock(path)).toBe(false); + } finally { + await Promise.all( + results.map((result) => + result.status === "fulfilled" ? result.value.release() : undefined, + ), + ); + } + expect(await readdir(root)).toEqual([]); + }); + + it("recovers a directory lock abandoned by an exited process", async () => { + const root = await createTestTempDirectory("rea-store-lock-exited-"); + const path = join(root, "transaction.lock"); + await promisify(execFile)( + process.execPath, + ["tests/fixtures/abandonStoreFileLock.mjs", path], + { timeout: 5_000 }, + ); + expect((await lstat(path)).isDirectory()).toBe(true); + expect(await removeStaleStoreFileLock(path)).toBe(true); + const successor = await createStoreFileLock(path); + try { + expect(await removeStaleStoreFileLock(path)).toBe(false); + } finally { + await successor.release(); + } + expect(await readdir(root)).toEqual([]); + }); +}); diff --git a/tests/boundary/filesystem/zipDetection.test.ts b/tests/boundary/filesystem/zipDetection.test.ts new file mode 100644 index 0000000000..236589f143 --- /dev/null +++ b/tests/boundary/filesystem/zipDetection.test.ts @@ -0,0 +1,49 @@ +import { writeFile } from "node:fs/promises"; +import { join } from "node:path"; + +import { describe, expect, it } from "vitest"; + +import { classifyRoot } from "../../../src/application/ArtifactInventory/classify.js"; +import { parseBinaryTarget } from "../../../src/application/BinaryTargetResolver.js"; +import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js"; + +describe("ZIP signature detection", () => { + it.each([ + [0x03, 0x04, true], + [0x05, 0x06, true], + [0x07, 0x08, true], + [0x03, 0x06, false], + [0x03, 0x08, false], + [0x05, 0x04, false], + [0x05, 0x08, false], + [0x07, 0x04, false], + [0x07, 0x06, false], + ] as const)( + "classifies PK %i %i with archive signature %s", + async (third, fourth, archive) => { + const root = await createTestTempDirectory("rea-zip-signature-"); + const path = join(root, "input"); + await writeFile(path, Buffer.from([0x50, 0x4b, third, fourth])); + expect(await classifyRoot(path, false)).toBe(archive ? "zip" : "file"); + const target = await parseBinaryTarget(path); + if (archive) + expect(target).toMatchObject({ ok: true, value: { format: "zip" } }); + else + expect(target).toMatchObject({ + ok: false, + error: { _tag: "BinaryTargetError" }, + }); + }, + ); + + it.each([[], [0x50], [0x50, 0x4b], [0x50, 0x4b, 0x03]])( + "rejects an incomplete signature %j", + async (...bytes) => { + const root = await createTestTempDirectory("rea-zip-short-"); + const path = join(root, "input"); + await writeFile(path, Buffer.from(bytes)); + expect(await classifyRoot(path, false)).toBe("file"); + expect((await parseBinaryTarget(path)).ok).toBe(false); + }, + ); +}); diff --git a/tests/boundary/providers/managed/managedStaticProvider.test.ts b/tests/boundary/providers/managed/managedStaticProvider.test.ts index 9c03f43d09..03766aceb6 100644 --- a/tests/boundary/providers/managed/managedStaticProvider.test.ts +++ b/tests/boundary/providers/managed/managedStaticProvider.test.ts @@ -6,7 +6,7 @@ import { describe, expect, it } from "vitest"; import { createTestTempDirectory } from "../../../fixtures/temporaryDirectory.js"; import type { AnalysisExecution } from "../../../../src/application/AnalysisProvider.js"; -import { parseBinaryTarget } from "../../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../../src/application/BinaryTargetResolver.js"; import { managedArtifactInspectionSchema, managedMemberInspectionSchema, diff --git a/tests/boundary/providers/native/artifactProvider.archiveInventory.test.ts b/tests/boundary/providers/native/artifactProvider.archiveInventory.test.ts index e329799eff..e3f1897fbf 100644 --- a/tests/boundary/providers/native/artifactProvider.archiveInventory.test.ts +++ b/tests/boundary/providers/native/artifactProvider.archiveInventory.test.ts @@ -16,7 +16,7 @@ import { import { artifactInventoryResultSchema } from "../../../../src/domain/artifactGraph.js"; import { artifactInspectionResultSchema } from "../../../../src/domain/artifactInspection.js"; import type { BinaryTarget } from "../../../../src/domain/binaryTarget.js"; -import { parseBinaryTarget } from "../../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../../src/application/BinaryTargetResolver.js"; import { parseEvidence } from "../../../../src/domain/evidence.js"; describe("artifact archive inventory", () => { diff --git a/tests/boundary/providers/native/artifactProvider.archiveSafety.test.ts b/tests/boundary/providers/native/artifactProvider.archiveSafety.test.ts index 4f94264890..92e971375f 100644 --- a/tests/boundary/providers/native/artifactProvider.archiveSafety.test.ts +++ b/tests/boundary/providers/native/artifactProvider.archiveSafety.test.ts @@ -18,7 +18,7 @@ import { } from "../../../../src/contracts/artifactToolContracts.js"; import { artifactInventoryResultSchema } from "../../../../src/domain/artifactGraph.js"; import type { BinaryTarget } from "../../../../src/domain/binaryTarget.js"; -import { parseBinaryTarget } from "../../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../../src/application/BinaryTargetResolver.js"; import { parseEvidence } from "../../../../src/domain/evidence.js"; describe("artifact archive safety", () => { diff --git a/tests/composition/analysis-sessions/binarySession.08-cancels-legacy-profile-resolution-even.test.ts b/tests/composition/analysis-sessions/binarySession.08-cancels-legacy-profile-resolution-even.test.ts index df9131a35d..4a7182e4b7 100644 --- a/tests/composition/analysis-sessions/binarySession.08-cancels-legacy-profile-resolution-even.test.ts +++ b/tests/composition/analysis-sessions/binarySession.08-cancels-legacy-profile-resolution-even.test.ts @@ -12,6 +12,30 @@ import { err } from "../../../src/domain/result.js"; import { observed as ok } from "../../fixtures/analysisExecution.js"; describe("binary session", () => { + it("owns provider rejection when profile resolution synchronously cancels opening", async () => { + const [first] = await createBinarySessionTargets(); + const provider = createCacheProvider([]); + const controller = new AbortController(); + provider.resolveAnalysisProfile = () => { + controller.abort(); + return Promise.reject(new Error("Profile resolution cancelled")); + }; + const session = createTestBinarySession(provider); + try { + await expect( + session.open(first, { signal: controller.signal }), + ).resolves.toMatchObject({ + ok: false, + error: { _tag: "AnalysisCancelledError", operation: "open_binary" }, + }); + // Allow Node to report any rejection abandoned by the cancellation path. + await new Promise((resolve) => setImmediate(resolve)); + expect(session.activeTarget()).toBeUndefined(); + } finally { + await session.close(); + } + }); + it("cancels legacy profile resolution even when the provider ignores its signal", async () => { const [first] = await createBinarySessionTargets(); const provider = createCacheProvider([]); diff --git a/tests/composition/runtime-observation/javascriptRuntimeReconciliation.test.ts b/tests/composition/runtime-observation/javascriptRuntimeReconciliation.test.ts index 11d1bf11d5..412018e2e2 100644 --- a/tests/composition/runtime-observation/javascriptRuntimeReconciliation.test.ts +++ b/tests/composition/runtime-observation/javascriptRuntimeReconciliation.test.ts @@ -18,6 +18,32 @@ import { createElectronActiveObservationFixtureResult } from "../../../src/domai const SOURCE = `const worker = new Worker("./worker.js");\nexport const observed = worker;\n`; +it("reconciles runtime scripts inside dot-prefixed child directories", async () => { + const root = await applicationFixture(); + await mkdir(join(root, "..cache")); + await writeFile(join(root, "..cache", "app.js"), SOURCE); + const result = reconcileJavaScriptRuntime({ + static_layers: [ + { role: "application", analysis: await analyzeFixture(root) }, + ], + runtime_observations: [ + electronRuntimeEvidence(root, SOURCE, { + scriptFile: "..cache/app.js", + includeWorker: false, + }), + ], + }); + expect(result.reconciliations).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + entity_kind: "script", + status: "matched", + basis: "content-and-location", + }), + ]), + ); +}); + it("matches renderer, frame, script bytes, and worker without claiming execution", async () => { const fixture = await applicationFixture(); const staticEvidence = await analyzeFixture(fixture); diff --git a/tests/conformance/providers/managed/managedConformanceFixture.test.ts b/tests/conformance/providers/managed/managedConformanceFixture.test.ts index 059f3d49d8..33d5bd2fd5 100644 --- a/tests/conformance/providers/managed/managedConformanceFixture.test.ts +++ b/tests/conformance/providers/managed/managedConformanceFixture.test.ts @@ -6,7 +6,7 @@ import { afterEach, describe, expect, it } from "vitest"; import { createTestTempDirectory } from "../../../fixtures/temporaryDirectory.js"; import { buildManagedPeFixture } from "../../../../scripts/lib/managed-pe-fixture.mjs"; -import { parseBinaryTarget } from "../../../../src/domain/binaryTarget.js"; +import { parseBinaryTarget } from "../../../../src/application/BinaryTargetResolver.js"; const workspaces: string[] = []; diff --git a/tests/fixtures/abandonStoreFileLock.mjs b/tests/fixtures/abandonStoreFileLock.mjs new file mode 100644 index 0000000000..1022261f13 --- /dev/null +++ b/tests/fixtures/abandonStoreFileLock.mjs @@ -0,0 +1,6 @@ +import { createStoreFileLock } from "../../dist/application/StoreFileLock.js"; + +const path = process.argv[2]; +if (path === undefined) throw new Error("A lock path is required"); +await createStoreFileLock(path); +// Exit without invoking release so the parent can exercise dead-owner recovery.